Node-based submodeling
Node-based submodeling is the most commonly used technique. With this technique global model responses are used to prescribe boundary conditions at the driven nodes in the submodel.
Interpolation procedure and tolerance checking
In the solid-to-solid case the positions of the submodel boundary nodes (the driven nodes) are determined with respect to the global model, and the appropriate element interpolation functions are used to obtain the values of the degrees of freedom at the driven nodes. An “exterior tolerance,” which the user can specify, is used to check whether it is valid to extrapolate values from the global model. In cases where the submodel boundary nodes fall outside the global model, the extrapolation is valid if the distance between the driven nodes and the free surface of the global model falls within the specified tolerance.
A similar check is done along the global model boundaries for the shell-to-shell submodeling case. We also check whether the driven nodes of the submodel lie sufficiently close to the midsurface of the shell elements in the global model. To simplify the calculations, the closest point in the global model is approximated by measuring the distance in the direction normal to a flat approximation to each shell element in the global model, as shown in Figure 1.
For the shell-to-solid case Abaqus uses two kinds of tolerances to determine the relation between the submodel and the global model. First, the closest point on the shell midsurface of the global model is determined. This point will subsequently be referred to as the “image node” of the driven node. The exterior tolerance parameter is used to check if the image node lies within the domain of the global model. Then the distance between the driven node and its image is checked against half of the maximum shell thickness specified by the user (see Figure 2).
If the node is within the half thickness plus the exterior tolerance, it is accepted. This check is only approximate if the global model has varying shell thickness, and in that case it will not protect the user in parts of the global model that have a small thickness compared to the maximum thickness specified by the user.
After the locations of the driven nodes (or image nodes for the shell-to-solid case) are determined, the prescribed values of the driven variables are interpolated from the values written to the file output for the global model. These must have been written with a sufficiently high frequency to obtain accurate values at the driven nodes. All components of displacements, temperatures, charges, and—for complex steady-state dynamic analysis—the phase angles as well as the amplitudes have to be written for the global model nodes from which the values for the driven nodes will be interpolated. For small global models responses will typically be written for all nodes. For large global models node sets can be created that contain the nodes in the regions around the submodel boundary.
For solid-to-solid and shell-to-shell submodeling, the interpolated values of displacements, rotations, temperatures, etc. are applied directly to the driven nodes. For these nodes the user can specify the individual degrees of freedom that are driven.
Driven variables for shell-to-solid submodeling
In the shell-to-solid case the driven degrees of freedom are chosen automatically, depending on the distance between the driven node and the midsurface of the shell. If the node lies within the center zone (specified by the user; see Figure 2), all displacement components are driven. If the node lies outside the center zone, only the displacement components parallel to the shell midsurface are driven. By default, the size of the center zone is taken as 10% of the maximum shell thickness. The procedure is described in detail below. The center zone should be large enough so that it contains at least one layer of nodes. If the transverse shear stresses at the submodel boundary are high and the submodel is highly refined in the thickness direction, this can result in high local stresses, since the shear force at the submodel boundary is only transferred at the driven nodes within the center zone. High transverse shear stresses occur only in regions where bending moments vary rapidly, and it is better not to locate the submodel boundary in such regions. It is best to locate the submodel boundary in areas of low transverse shear stress in the global model.
All displacement degrees of freedom are driven when the driven node lies within the center zone. For geometrically linear analysis these prescribed displacements are obtained from the displacements and rotations of the image node as
where is the prescribed displacement of driven node A, and are the interpolated displacement and rotation of the image node, and is the vector connecting the image node to the driven node:
For large-displacement analysis finite rotations must be taken into account. The finite rotation equivalent of Equation 1 is
where is the rotation matrix as defined in Rotation variables, is the identity tensor, and is the rotated vector connecting the image node to the driven node in the current configuration:
For driven nodes outside the center zone only the displacement components parallel to the shell midsurface are driven. For the geometrically linear case this leads to the constraints
where and are two (unit) vectors orthogonal to . The equivalent expressions for the geometrically nonlinear case are
where and are two (unit) vectors orthogonal to .
Since the submodeling capability in Abaqus is quite general and allows the use of different procedure types in both analyses, there are several possibilities for the evaluation of the values at driven nodes as follows. In all cases Abaqus assumes that the global model and the submodel both use small- or large-displacement theory.
In the schemes listed below the first procedure type applies to the global analysis and the second to the submodel analysis.
General procedure to general procedure for small-displacement theory: Equation 1 is used inside the center zone, and Equation 3 is used outside the center zone.
General procedure to general procedure for large-displacement theory: Equation 2 is used inside the center zone, and Equation 4 outside the center zone.
General procedure to linear perturbation procedure for small-displacement theory:
inside the center zone, and
outside the center zone; denotes the base state in the submodel.
General procedure to linear perturbation procedure for large-displacement theory:
inside the center zone, and
outside the center zone, where denotes the tangent vector. The exact formulation would require the use of the base state normal vector and the base state tangent vector . Since they are not available, Abaqus approximates them with the current normal vector d and current tangent vector .
Linear perturbation procedure to general procedure for small-displacement theory:
inside the center zone, and
outside the center zone; denotes the base state in the submodel.
Linear perturbation procedure to general procedure for large-displacement theory:
inside the center zone, and
outside the center zone. Since the base state is not available, an approximate form is used, where is used in place of and is used for . With the above assumptions cases 5 and 6 are governed by the same equations. The approximation will give good results for cases with a small base state rotation field in the global analysis.
Linear perturbation procedure to linear perturbation procedure for small-displacement theory:
inside the center zone, and
outside the center zone.
Linear perturbation procedure to linear perturbation procedure for large-displacement theory:
inside the center zone, and
outside the center zone. Since the base state is not available, D is used in place of and in place of . With the above assumptions cases 7 and 8 are governed by the same equations. The approximation will give good results for cases with a small base state rotation field in the global analysis.