10.1.2 Defining substructures

Product: ABAQUS/Standard  



This section describes how individual substructures are defined. See Using substructures, Section 10.1.1, for information regarding how they are used in a model.

Substructures are defined using the substructure generation procedure. The substructure creation and usage cannot be included in the same analysis. Multiple substructures can be generated in an analysis. Any substructure can consist of one or more other substructures; if this is the case, the nested-level substructures must be defined first. To define a typical substructure generation step, do the following:

  • Invoke the substructure generation procedure.

  • Define the nodes and degrees of freedom that are to be retained as external degrees of freedom when the substructure is used.

  • Optionally, retain extra restrained modes to improve the dynamic behavior of the substructure during usage.

  • Optionally, specify substructure load cases.

  • Optionally, write the recovery matrix, substructure's stiffness matrix, mass matrix, and/or load case vectors to a file.

Generating a substructure

When you generate a substructure, you specify an identifier that will be assigned to this substructure in a substructure library. The identifier must begin with the letter Z followed by a number that cannot exceed 9999.

Substructure identifiers must be unique within a library. If a substructure with this same identifier already exists in the library, the analysis will terminate with an error message unless you have specified that the existing substructure should be overwritten, as described below.

Input File Usage:           

Writing the substructure data to a library

By default, substructure data will be written to a substructure library named jobname. You can choose to write the data to a user-specified substructure library. See Input syntax rules, Section 1.2.1, for the syntax of such file names.

Input File Usage:           

Overwriting the substructure data in a library

If a substructure generation analysis is rerun using the same jobname without deleting the substructure library and one substructure or more will be regenerated, you must specify that the existing substructures can be overwritten. This requirement also holds true if the jobname is different for the second analysis but the same library_name is specified.

Input File Usage:           

Recovery within a substructure

By default, the solution in the substructure can be recovered. To recover the solution, the .prt, .mdl, and .stt files from the substructure generation are required, in addition to the .sup file. By default, these additional files will be named jobname_Zn.prt, jobname_Zn.mdl, and jobname_Zn.stt. If you specify the substructure library name, the files will be named library_name_Zn.prt, library_name_Zn.mdl, and library_name_Zn.stt.

You can specify that a recovery of element or nodal information will not be required within this substructure. This reduces the size of the substructure library significantly for a large substructure because the information that is needed to recover internal variables is not stored. This information cannot be recreated at a later time except by regenerating the entire substructure with recovery enabled.

Input File Usage:           Use the following option to enable recovery for a substructure:

Use the following option to disable recovery for a substructure:


Evaluating frequency-dependent material properties

When frequency-dependent material properties are specified, ABAQUS/Standard offers the option of choosing the frequency at which these properties are evaluated for use in substructure generation. If you do not choose the frequency, ABAQUS/Standard evaluates the stiffness at zero frequency and does not consider the stiffness contributions from frequency-domain viscoelasticity. If you do specify a frequency, only the real part of the stiffness contributions from frequency-domain viscoelasticity is considered.

Input File Usage:           

Defining material definitions and kinematic constraints that make up the substructure

Most model definition options applicable to stress analysis in ABAQUS/Standard are available for substructure generation.

Associating material definitions with the elements

Materials are defined as described in Part V, Materials.”

It is sometimes desirable to associate some damping with substructures. Damping for direct-integration dynamic analysis can be defined within the substructure definition as described below or on the usage level as described in Using substructures, Section 10.1.1. Damping for modal dynamic analysis must be defined in each of the relevant step (history) definitions. Composite modal damping cannot be used with substructures. See Material damping, Section 20.1.1, for more information about the damping models.

Defining Rayleigh damping for direct-integration dynamic analysis

You can introduce Rayleigh damping (mass and stiffness proportional damping) for direct-integration dynamic analysis within the substructure definition (see Material damping, Section 20.1.1, for details).

When damping is specified within the substructure definition, ABAQUS/Standard will compute weighted average Rayleigh damping factors for the substructure (the weighting factors are the mass for the mass damping factor and the volume for the stiffness damping factor). The damping matrix for the substructure is

where and are the mass and stiffness matrices of the substructure and and are the weighted average Rayleigh damping factors.

Input File Usage:           

Defining kinematic constraints

Kinematic constraints are defined as described in Kinematic constraints: overview, Section 28.1.1. The following rules apply:

  • All kinematic boundary conditions associated with degrees of freedom that are not retained must be specified when the substructure is generated. The conditions are built into the substructure and remain imposed any time that it is used. Once the substructure is generated, kinematic constraints on internal variables cannot be respecified; they can be modified or removed only by erasing and recreating the substructure in the library. The magnitude of a prescribed boundary condition applied to an internal degree of freedom can be associated with a substructure load case and can be changed at the usage level. The restraint itself is built into the substructure and cannot be removed by omitting a reference to the load case.

  • During substructure generation, multi-point constraints in which some of the substructure's retained degrees of freedom are eliminated in favor of internal degrees of freedom must be avoided. If it is desirable to retain certain degrees of freedom that are eliminated by the multi-point constraints, you must reassign all of the variables appearing in the multi-point constraints as retained degrees of freedom and impose the constraints at the usage level.

Defining the retained degrees of freedom

The degrees of freedom at a node can be divided into retained degrees of freedom (for use at the usage level of the substructure) and eliminated degrees of freedom (internal to the substructure). ABAQUS/Standard allows any of the degrees of freedom at any of the nodes of a substructure to be retained with one exception: if a coupled acoustic-structural substructure is generated, only structural degrees of freedom can be retained. You must make sure that the choice of retained degrees of freedom is reasonable so that the substructure can be connected correctly to the rest of the model.

Any degrees of freedom where kinematic constraints may have to be respecified during usage of the substructure should be kept as retained degrees of freedom.

If any degrees of freedom of nodes used to define distributing coupling elements are retained, the degrees of freedom of an internal node associated with the Lagrange multipliers are added automatically to the list of the retained degrees of freedom of the substructure.

To define the retained degrees of freedom, specify the node number or node set label and, optionally, the first and the last degree of freedom to be retained.

By default, the nodes associated with the retained degrees of freedom will be sorted into ascending numerical order.

Input File Usage:           

Preventing the degrees of freedom from being sorted

You can prevent the degrees of freedom from being sorted. The ordering of the nodes when using a substructure is then the same as the ordering used when specifying the retained nodes.

Input File Usage:           

Retaining degrees of freedom when the substructure is intended for geometrically nonlinear analysis at the usage level

When the substructure is intended for use in geometrically nonlinear analyses, it is recommended to retain all translational and/or all rotational degrees of freedom from a particular node. Even in the case when only a single translational/rotational degree of freedom of a particular node is deemed as needed at the usage level, you should retain all translational/rotational degrees of freedom associated with that node. Otherwise, as the substructure rotates during a geometrically nonlinear analysis, local numerical instabilities (negative eigenvalues) may occur since the rotated substructure may have no stiffness in particular degrees of freedom.

You must choose an appropriate number of nodes that will allow for the computation of an equivalent rigid body motion of the substructure. In two-dimensional or axisymmetric analyses, retaining two nodes with all translational degrees of freedom or one node with all translational and rotational degrees of freedom is sufficient to compute an equivalent rigid body motion of the substructure at the usage level. In three-dimensional analysis, three non-colinear nodes with all translational degrees of freedom retained or one node with all translations and rotations are needed. If the retained nodes are colinear or fewer than three nodes are retained, you must retain at least one node with all rotational degrees of freedom. When ABAQUS/Standard cannot compute an equivalent rigid body motion for the substructure during the analysis at the usage level because the number of retained degrees of freedom is not appropriate, a warning message is issued and any geometrically nonlinear effects associated with the substructure are ignored.

Preloading a substructure

Substructures can be used in models that exhibit nonlinear response (associated with standard ABAQUS elements or with contact definitions), but the response within a substructure assumes linear small deformations. However, a substructure's response may be a linear perturbation about a predeformed (possibly rotating and translating) base state, defined on the basis of nonlinear response within the substructure during its preload history.

When the substructure is intended for use in geometrically nonlinear analyses, the substructure preloading should be limited to loads that generate self-equilibrating stresses only (such as thermal stresses or interference fits). In most cases, preload stresses are not self-equilibrating (such as stresses from specified boundary conditions or applied loads). If non-self-equilibrating prestress exists and the substructure undergoes a rigid body motion at the usage level, additional stress is generated in the substructure. Such usage level stresses are non-physical and will lead to convergence problems and results that are difficult to interpret. Therefore, you should use extreme care when preloading a substructure intended for use in geometrically nonlinear analyses.

This preloading concept allows such effects as stress stiffening to be included in a substructure. Preloading is a part of the state of the substructure: the preload is self-equilibrating and so does not generate a load vector when the substructure is used. Any loading of the substructure during its use in a model is in addition to the preload.

It is important to distinguish the difference between a preload and a load case. Both are allowed during a substructure generation analysis, but only the preloads are actually applied to the substructure during generation. Load cases, defined during substructure generation, can only be applied at the usage level (see Applying loads to a substructure” in “Using substructures, Section 10.1.1). Load cases are discussed in more detail later.

Computation of the total response of a variable

Any recovered response variable within a substructure (such as stress or displacement) is defined to be a perturbation (with some exceptions for geometrically nonlinear analyses) from the preloaded base state. For geometrically nonlinear analyses, the displacement output includes both the equivalent rigid body rotation and translation associated with the substructure and the strain-inducing small-displacement perturbation. If the total response of a variable is desired, it can be computed by adding the perturbation result to the final result computed during the substructure preload.

Computation of the tangent stiffness of a preloaded substructure

The rules for calculating the stiffness matrix of a preloaded substructure are the same as those for a static linear perturbation step. See General and linear perturbation procedures, Section 6.1.2, for a detailed description of the rules.

Defining a preloading history

Specify the loading history that defines the preload state for a substructure.

Input File Usage:           Use the following options:
Options to define the preloading history.
Any number of steps can be defined.
Options to define the substructure.

Prescribing boundary conditions at retained degrees of freedom during preloading steps

During substructure preloading, boundary conditions can be prescribed at retained degrees of freedom. When the preloaded substructure is subsequently created in a substructure generation step, you must release all the retained degrees of freedom (see Removing boundary conditions” in “Boundary conditions, Section 27.3.1). An error message will be issued if some of the retained degrees of freedom are not released. The reaction forces at the released degrees of freedom become concentrated loads that are in equilibrium with the stresses within the substructure. These concentrated loads cannot be removed without changing the preload.

The preloaded substructure is, thus, in equilibrium. If the preload in a substructure must effectively apply loading to other parts of the structure, a substructure load case corresponding to the loads applied in the preload history must be created.

The technique is demonstrated in Analysis of a rotating fan using substructures and cyclic symmetry, Section 2.2.1 of the ABAQUS Example Problems Manual.

Generating a reduced mass matrix for a substructure

You can generate a reduced mass matrix for the retained degrees of freedom of a substructure in a dynamic analysis.

A reduced mass matrix is calculated using static condensation in the same manner that the reduced stiffness matrix is obtained (see Substructuring and substructure analysis, Section 2.14.1 of the ABAQUS Theory Manual). This technique is known as “Guyan reduction.” If the retained degrees of freedom are only those required to connect the substructure to the rest of the structure, the inertial response might be poorly modeled: the “static” modes may not be sufficient to define the dynamic response of the substructure accurately. Additional degrees of freedom must be retained inside the substructure to improve the response. Enough degrees of freedom must be retained so that all of the natural vibration modes of importance are modeled adequately.

Input File Usage:           

Generating a mass matrix with generalized degrees of freedom

A more effective technique for enhancing the dynamic response within a substructure is to augment the response within the substructure by including some generalized degrees of freedom associated with the modes of the substructure. You can select the modes to retain. The modes must be calculated in a previous eigenfrequency extraction step (Natural frequency extraction, Section 6.3.5) with all the retained degrees of freedom of the substructure constrained and all the boundary conditions to be built into the substructure matrices specified. The modes will include eigenmodes and, if activated in the eigenfrequency extraction step, residual modes. An error message will be issued if the retained degrees of freedom are not constrained properly or boundary conditions to be built into the substructure matrices are not specified in their entirety. The specified modes must be a subset of the calculated modes in the previous eigenfrequency extraction step.

A sufficient number of modes should be selected to provide adequate dynamic representation of the substructure. Examine loading frequencies and frequency content of the structure to determine this range. Specify a shift point and/or a cutoff frequency in the eigenfrequency extraction step definition to obtain modes in the desired frequency range only. Inclusion of generalized degrees of freedom adds the cost of the frequency extraction to the substructure generation step but greatly improves the accuracy of the reduced mass matrix. This improved accuracy is useful if the substructure is used in a subsequent dynamic (Implicit dynamic analysis using direct integration, Section 6.3.2), steady-state dynamic, or eigenfrequency extraction analysis. In an eigenfrequency extraction analysis a substructure must have at least one regular degree of freedom active on the usage level; otherwise, the modes cannot be normalized properly. See Substructuring and substructure analysis, Section 2.14.1 of the ABAQUS Theory Manual, for additional details.

Input File Usage:           

Defining substructure load cases for subsequent loading in an analysis

The load cases defined during the generation of a substructure and activated at the usage level are the equivalent of the elemental loading types available for the regular elements in ABAQUS. They can be made up of any combination of loadings (distributed loads, concentrated nodal loads, thermal expansion, and load cases defined for any substructures that may be used as part of the definition of this substructure).

The load cases are needed so that, when the substructure is subsequently used in a model, the consistent loads on the retained degrees of freedom need be scaled only by the appropriate magnitudes of the particular loads applied: it is not necessary to go inside the substructure and repeat the basic element calculations to distribute the loads.

Each such load case can be applied when the substructure is used by associating it with an amplitude/time curve and a magnitude (Amplitude curves, Section 27.1.2). When a substructure is used, the substructure load case loadings that were created when the substructure was generated are the only loads that can be used in that substructure. Except for gravity loading, when using the substructure, you cannot apply distributed loads, temperature loads, etc. to the elements that make up any substructure. These loads must be built into the substructure during its creation.

You can define multiple substructure load cases during the substructure generation to define different loadings for the substructure. Each load case is assigned a name that will be used when the load case is applied on the usage level.

You can use any combination of concentrated load, distributed load, substructure load, temperature field, and boundary condition definitions (Concentrated loads, Section 27.4.2; Distributed loads, Section 27.4.3; and Boundary conditions, Section 27.3.1) to define each load case.

You assign each basic loading a reference magnitude, which will then be scaled by the actual magnitude specified when the substructure load is applied. The reference magnitude assigned to each basic loading must be defined as the change in load or boundary condition from the base state, not the total of the base state plus the perturbation value. Initial conditions applied within the substructure generation are not included as part of a load case definition.

For temperature loads, the load vector for the substructure load case will contain only the contributions due to thermal expansion. If temperature-dependent properties are present, they are evaluated at the temperatures specified in the preloaded state. Consequently, to take into account nonzero initial temperature fields prescribed as initial conditions (Initial conditions, Section 27.2.1), it is necessary to preload the structure before creating the substructure. When using temperature loading in a substructure load case, the data cannot be read from a results file. The temperatures specified must be defined as the change in the temperatures from the base state.

ABAQUS/Standard currently has a limitation when a substructure load case definition includes acoustic loading during a substructure generation procedure in which retained modes are specified: the contribution of the singular (constant pressure) acoustic modes (Acoustic, shock, and coupled acoustic-structural analysis, Section 6.9.1) is not taken into account in the generated load case. Since the contribution of this mode is significant for low frequency response, the generated load case will inadequately represent the specified acoustic load in these cases. If there are no singular acoustic regions in the coupled acoustic-structure substructure, the acoustic loads are represented accurately.

It is important to distinguish the difference between a load case and a preload. Both are defined during substructure generation, but only the preloads are actually applied to the substructure on the generation level; load cases, defined on the generation level, can only be applied on the usage level, and they act on a preloaded base state if one has been specified. (Preloads were discussed earlier.)

In general analysis steps and perturbation steps substructure loads are treated in the same way as other loads, such as concentrated loads and distributed loads (Concentrated loads, Section 27.4.2, and Distributed loads, Section 27.4.3). For example, if a general analysis step is followed by another general analysis step, the substructure loads will be retained in the second step with their magnitude equal to that at the end of the previous general analysis step, unless the substructure load is modified or removed. In a linear perturbation step the substructure load represents an incremental load.

If a substructure load is used to apply Coriolis loading in a direct-solution steady-state dynamic analysis, the unsymmetric load stiffness contribution is not taken into account.

Input File Usage:           Use the following options:
*CLOAD and/or
*DLOAD and/or
*DSLOAD and/or

The load case defined via the *SUBSTRUCTURE LOAD CASE option ends when an option other than *CLOAD, *DLOAD, *DSLOAD, *TEMPERATURE, or *BOUNDARY is encountered. The load definitions can be specified in any order.

Defining boundary conditions as part of a unit load case

All boundary conditions to be built into the substructure matrices must be specified using a boundary condition definition; these can also be part of a substructure load case specification. Once a kinematic boundary condition is specified on a particular nodal degree of freedom, it is built into the substructure matrices and cannot be removed (or redefined at the usage level). The boundary conditions specified as part of the preloading history are built into the substructure matrices.

If a degree of freedom has been prescribed using a boundary condition definition within a substructure load case, this restraint will be in effect for all load cases, even if that load case is not used. The only possible variation is the magnitude of the variable, which is defined by the magnitude of the substructure load at the usage level.

If there is any doubt whether a restraint is permanent or not, it is better to make the degree of freedom a retained degree of freedom and not specify any restraint in the substructure definition. The restraint can then be included as needed in each analysis step.

Load cases when the substructure is used in geometrically nonlinear analyses

All loads and boundary conditions included in a substructure load case at the generation level and applied as a substructure load at the usage level are applied in a local system associated with the substructure. Since this system rotates with the substructure when large motions are present, these loads and boundary conditions will rotate as well. As a consequence, you should be careful when using substructure load cases in geometrically nonlinear analyses to ensure that the loading is in the appropriate direction at the usage level. This situation is similar to rotating the substructure using a substructure property definition.

Gravity loading

To apply gravity loading, density must be defined for at least some of the elements included in the substructure. A gravity load can be applied to a substructure in two different ways with two different interpretations. If a distributed load definition is used as a part of a substructure load case during substructure generation (as described in “Defining substructure load cases for subsequent loading in an analysis” above), the gravity loading becomes part of the substructure load case and, hence, rotates to follow the substructure's local system during usage (the local system may rotate by rotating the substructure via a substructure property definition or due to geometrically nonlinear response).

To define gravity loading that acts in a fixed global direction during usage, you can request that the substructure's gravity load vectors be calculated during substructure generation. In this case gravity loading should not be defined as part of a substructure load case. When the gravity load vectors are calculated, ABAQUS/Standard generates a gravity load vector for each global direction (three for three-dimensional analyses and two for two-dimensional/axisymmetric analyses). At the usage level, a distributed load definition can be used (see Gravity loading” in “Using substructures, Section 10.1.1) to specify gravity loading on the substructure that acts in a fixed global direction with the specified magnitude.

Input File Usage:           Use the following option to calculate the substructure's gravity load vectors during substructure generation:

Writing the recovery matrix, reduced stiffness matrix, mass matrix, load case vectors, and gravity vectors to a file

You can write a substructure's recovery matrix, reduced stiffness matrix, mass matrix, and load case vectors to a file. This output is useful when the substructure is to be used in another program.

The output records can be written either to the ABAQUS/Standard results file, to a user-defined file, or to the output database file (see below). In each case you must specify which output to write out: the mass matrix, the recovery matrix, the load case vectors, the stiffness matrix, and/or the gravity load vectors. By default, no output will be generated.

Repeat the substructure matrix output request in the substructure generation file of each substructure for which the substructure matrix output is required.

If substructure load case vector output is requested for a preloaded substructure, the output will contain a record with a load case number that is equal to zero. This load vector contains the forces that were necessary to equilibrate any stresses that were generated during the previous steps.

Input File Usage:           

Writing the records to the ABAQUS/Standard results file

By default, the requested matrices are written to the ABAQUS/Standard results file corresponding to the substructure generation input file name. The record formats for the results file are described in Results file output format, Section 5.1.2. The file can be written in either binary or ASCII format (Output, Section 4.1.1).

Input File Usage:           

Writing the records to the output database file

You can specify that the matrices should be written to the output database (.odb) file.

Input File Usage:           

Writing the records to a user-defined file

You can specify the name of the file (without an extension) to which the data will be written. The records are written to be compatible with a linear user-defined element. The record formats are described in User-defined elements, Section 26.15.1. An .mtx extension will be added to the file name specified.

Input File Usage:           

Managing substructures inside libraries

Substructures are stored in a collection of libraries. Housekeeping functions are provided to help maintain extensive libraries; for example, substructures can be deleted from a library or moved to a different library.

Once a substructure library has been generated, the disk files can be made read-only to protect the library from accidental deletion or modification. A substructure library must be write-accessible during a substructure's generation and when substructures are added or deleted from a library using the substructure housekeeping functions.

When multiple analyses are used to generate a substructure library, these analyses must be run one after another; they cannot be run simultaneously. ABAQUS may not be able to provide any indication that the substructure library being written may already be in use by another ABAQUS analysis. If several analyses write to the same library simultaneously, the library may get corrupted. If this occurs and the library is used in a subsequent analysis, the result may be a large preprocessor memory demand.

Input File Usage:           Use any of the following options (described in detail below) to perform housekeeping functions on substructure libraries:

The housekeeping options can appear anywhere within the model portion of the input file (Defining a model in ABAQUS, Section 1.3.1). An input file can consist of merely the *HEADING option and one or more of the housekeeping options. In this case the files and substructures to which the housekeeping options refer must exist at the start of the analysis.

Listing the substructures stored in a substructure library

You can obtain a summary of information about the substructures stored in a substructure library. If necessary, you can identify a nondefault name for the library (the default name is jobname).

Input File Usage:           
*SUBSTRUCTURE DIRECTORY, LIBRARY=substructure_library_name

Removing a substructure from a substructure library

You can remove a specified substructure from a substructure library. If necessary, you can identify the name of the library.

Input File Usage:           
*SUBSTRUCTURE DELETE, TYPE=Zn, LIBRARY=substructure_library_name

Copying or moving a substructure definition

You can copy a substructure definition from one library to another or from one substructure to another within the same library. You must identify the substructure being copied and assign a name to the substructure being created.

When copying substructures from library to library, you can identify the name of the library containing the substructure being copied. Similarly, you can identify the name of the new library to which the substructure will be copied. This new library need not exist prior to the substructure being copied; it will be created in this case.

If the original substructure is to be deleted, you can follow the copy with a delete (see above).

Input File Usage:           
OLD LIBRARY=substructure_library_name, 
NEW LIBRARY=substructure_library_name

Renaming substructure libraries

Once a substructure library has been generated, the disk file should not be renamed manually. To rename a substructure library, copy the existing substructures to a new library. The new library need not exist prior to the first substructure being copied. You can then delete the original disk file manually if you do not need it anymore.