|
Engineering Tools — Group DMIG Nodes (00327)
What this tool does
Creates a FEMAP group containing every grid referenced by any
Direct Matrix Input (DMIG) entity in the active model. One pass,
all DMIGs, one group.
The use case
You’ve imported a Nastran deck that reduces a subsystem to a
DMIG matrix — typical for spacecraft work, where solar arrays,
dish antennas, and instrument decks routinely arrive as reduced
stiffness / mass matrices. The interface grids that connect the
reduced substructure to the rest of the model are scattered through
the DMIG cards. You want them in a group so you can:
- Visualize the interface in the FEMAP graphics window.
- Check that the right RBEs / MPCs land on the right interface
grids.
- Inspect load paths into the reduced substructure.
- Feed the interface grids into downstream tools (group-aware
post-processing, mass-compute on the surrounding structure, …).
Why this exists
No FEMAP native command does this. The manual workflow is to open
each DMIG entity in the Model Info tree, scrape out the grid IDs,
and add them to a group by hand — tedious for any non-trivial
substructure. Group DMIG Nodes sweeps every DMIG in the model in one
click.
How it works under the hood
Walks the FT_MATRIX_INPUT entity set
(femap.feMatrixInput) and calls
GetMatrixList on each entry. The method returns parallel
arrays of column / row grid IDs and DOF components for every entry
in the matrix; the tool unions the unique grid IDs across all
matrices into a single set and adds that set to the new group.
DataSource gotcha (for anyone reading the source):
the FEMAP API exposes a DataSource property on each
matrix with values MAT_INT (created in FEMAP),
MAT_EXT (imported from an external .op2 / .pch), and
MAT_COMB (combination wrapper referencing other
matrices). It’s tempting to read MAT_EXT as
"entries live outside FEMAP and can’t be queried" —
that’s wrong. MAT_EXT only describes where the
data came from; once imported, the entries are in the FEMAP
database and GetMatrixList reads them out exactly the
same as MAT_INT. The tool processes both types and
skips only MAT_COMB wrappers (whose constituents are
already independently in the matrix set).
How to use it
- Open from Custom Tools > Model Organization >
Group DMIG Nodes.
- Click OK on the explanatory dialog. There’s nothing to pick
— the tool processes all DMIGs in the model.
- The tool prints a one-line summary per matrix to the message
window (matrix name, DataSource type, entry count) and a final
count of unique grids collected, then creates the group.
Output
One group titled DMIG Nodes containing every
unique grid ID referenced by any non-combination DMIG in the model.
The message window summary shows the per-matrix counts so you can
sanity-check coverage.
SPOINTs vs interface grids
DMIG matrices often reference a mix of real grid nodes (the
physical interface DOFs) and scalar points (SPOINTs — internal
generalized DOFs introduced by the reduction process). Both end up
in the resulting "node" group, since FEMAP treats them in the same
entity space. If you only want the physical interface grids, you
can post-filter the resulting group by node type in FEMAP, or wait
for a future rev of this tool that splits the output into separate
groups for grids vs SPOINTs.
Related tools
- Regions to Groups —
same idea for connection regions: bulk-convert a model-wide entity
class into a corresponding set of groups.
- Cbush Forces to Excel
— if you’re inspecting the load path into a reduced
substructure, this tool catalogues the connector forces feeding
those interface grids.
|