Numbering Block Survey

Engineering Tools — Numbering Block Survey (00325)

What this tool does

Surveys the active model’s used ID ranges across every common entity class (nodes, elements, properties, materials, coordinate systems, layers, groups, plus optional connectors / sets / geometry) and reports the natural blocks of used IDs, the gaps between them, and a suggested round-aligned start ID for renumbering a sub-model into open space.

The use case

"I picked up a model and now I need to merge a sub-model into it — where can I park the new IDs so nothing collides?"

Typical example: a spacecraft model that already uses node IDs in the 1–500k range, and you’re merging in a deployed solar array sub-model. You want a renumbering target for the sub-model that sits cleanly outside the existing ranges, snapped to a round number so the merged IDs read sensibly later. Numbering Block Survey gives you that target in one click instead of by inspection through the Model Info tree.

How "natural blocks" work

A strict block of used IDs would fragment every time a deleted ID left a gap. Numbering Block Survey absorbs small gaps into the enclosing block so the report stays human-readable. Specifically:

  • Gaps smaller than max_id / 200 (with a floor of 50) are merged into the surrounding block.
  • Anything larger is reported as a free block.
  • Suggested start IDs snap to natural decimal magnitudes (50, 100, 1k, 10k, 100k, 1M, …) so the renumbered sub-model reads cleanly.

How to use it

  1. Open from Custom Tools > Model Audit - Query > Numbering Block Survey.
  2. On the dialog, pick which entity classes to survey. Nodes, elements, properties, materials, coordinate systems, layers, and groups are always included; connectors / sets / geometry are opt-in.
  3. Choose Excel output on / off. Off prints the survey to the FEMAP message window; on adds a four-sheet workbook for offline review.
  4. Click OK. The tool walks each entity class, builds the natural blocks, computes free blocks, and renders both an ASCII bar chart (message window) and the Excel workbook (if enabled).

Outputs

Message window: ASCII bar chart, one row per surveyed entity class. Each row shows the used-vs-free distribution across the model’s ID horizon, with the suggested round-aligned start ID for a hypothetical sub-model merge printed at the end of the row.

Excel workbook (optional, four sheets):

  • Summary — one row per entity class with count, min ID, max ID, used-block count, and suggested start ID.
  • Used Blocks — one row per natural block with the block’s entity class, start ID, end ID, and width.
  • Free Blocks — one row per gap between natural blocks, with the same columns — this is the candidate parking space for the sub-model.
  • Block Heat Map — 218-row visual layout of used vs free blocks across all surveyed entity classes, with the widest block in each class flagged in a separate column. Useful for eyeballing where the model is dense vs sparse.
  • README — the natural-block / gap-merging / round-ID logic restated so anyone reading the output later knows what they’re looking at.

Tips for the renumbering step itself

Once you have the suggested start ID, use FEMAP’s native Modify > Renumber to apply it to the sub-model. Heads-up: feRenumber is very slow on nodes and elements when output sets are attached — FEMAP remaps every result reference. If you can detach results before renumbering and re-attach after, the run goes orders of magnitude faster. Curves / points / properties are unaffected by this performance gotcha.

Related tools

  • Inspect Model Complexity Data — complementary view: counts and basic stats per entity class, but doesn’t map out the actual ID block structure. Use that for "how big is this model"; use this tool for "where do I park the merge."
  • Import Export Groups and Layers — once you’ve renumbered the sub-model into the parked block, this tool helps round-trip the group / layer structure through the merge.