ID Resolution Guidelines

The following guidelines can be used to implement proper ID resolution in a model containing multiple parts and instances.
  1. Each part can be included only once within a specific set of BEGIN and END Bulk Data Entries. Inclusion of multiple copies of a single part is known as instancing (refer to Instances).
  2. All references to properties and materials are resolved in a standard way. These entities are global and should be defined only once anywhere in the model.
  3. Subcase information and I/O Options Entries are also handled similarly. These entries refer only to numeric ID of entries in the global part (for example, SPC=5 will expect SPCADD, 5 or SPC, 5 within the global part). SPC's, MPC's, SPCADD and MPCADD are local entries and they allow fully-qualified referencing of local entries anywhere in the model. SPCADD and MPCADD entries in parts are allowed but will not be used in the solution as they cannot be activated by subcase selectors.
  4. Fully-qualified references are allowed in some data entries (refer to the latest OptiStruct Reference Guide to check if a data entry accepts fully-qualified references). Not all entries and not all fields within these entries allow fully-qualified references.
  5. This generalized syntax is allowed in all four bulk formats - fixed small field, fixed large field, free and free large field. As fully-qualified references are usually longer than 8 characters, free formats are more useful for this purpose.
  6. As a general practice, all data entries using fully-qualified references are placed inside the global part. This is not mandatory.
  7. The own ID of each data entry (usually the second field after the card name) cannot be a fully-qualified reference.
  8. As explained previously, for local entries, their own IDs within a particular part cannot be equal. Whereas, similar data entries can be the same own ID if they are defined in different parts. In such cases they are completely independent entities and their ID's are resolved by using fully-qualified references. The same rules apply to set ID's, for example, in SPC's or MPC's - the same SID in different parts represent completely independent entities.
  9. Any reference to a global entry must be a numeric reference regardless of whether it is being referred to from a global or a local part.
  10. A fully-qualified reference (if allowed) is resolved to a specific instance defined by part name and ID within that part.
  11. If a local entry contains a numeric reference (instead of a fully-qualified reference), OptiStruct resolves the reference to a local entry within the same part. If the part does not contain an entry (of the required type) with the ID equal to the numeric reference, OptiStruct looks in the global part for a possible match. If the entry is not available in the global part also, then the program errors out, regardless of whether the required entry (with same ID) is available locally in a different part. For example:
    This entry is located in local part "grip":
    RBE2, 15, 5, 123, 7, 8
    Grid points 1,3,5 are included in part “grip”
    Grid points 1,3,5,7,8 are included in local part “frame”
    Grid points 3,5,7 are included in global part “racquet”

    In the above example, on the RBE2 element, grid point 5 refers to grid grip.5, grid point 7 refers to racquet.8 and grid point results in an error.

  12. OptiStruct allows repetition of some global data entries, even if only unique ID's are allowed, only if the content of such cards is identical (for example, material and property entries).

Logical Sets

The SET Bulk Data Entry can be used in the global part to reference SET's defined within different parts. These SET entries in the global part can contain fully-qualified references to part-specific SET data only if logical operators (OPERATOR field on the SET entry) are used.

The following SET entry exists in part "A":
BEGIN, FEMODEL, A
SET, 29, ELEM, LIST
     15 through 30
…
END, FEMODEL, A
Referencing SET, 29 in the global part "G":
BEGIN, FEMODEL, G
SET, 78, ELEM, OR
     A.29
…
END, FEMODEL, G

This process can be used to reference local sets in the global part on entries which do not support fully-qualified referencing of local sets (like, output entries).

The following SET entry exists in part "A":
BEGIN, FEMODEL, A
SET, 3, GRID, LIST
     15 through 30
…
END, FEMODEL, A
In the global part "G":
Incorrect
BEGIN, FEMODEL, G
DISPLACEMENT(H3D)=part.3
or
DISPLACEMENT(H3D)=3 
…
END, FEMODEL, G  
Correct
BEGIN, FEMODEL, G
DISPLACEMENT(H3D)=3 
SET, 3, GRID, OR
     A.3
…
END, FEMODEL, G