Applying the SPC's to the expanded structure

Here too, the problem is that the SPC's are applied by the user to the nodes belonging the the original 1D and 2D elements. The expanded nodes, however, have different numbers and a link must be established with the original nodes. This is again performed by multiple point constraints. They are generated in subroutine “gen3dboun.f”.

For knots the translational node of the rigid body formulation is the original node number. Consequently, translational SPC's are automatically taken into account. If a rotational SPC is applied, it must be transferred to the rotational node of the knot, e.g. degree of freedom 4 of the original node (rotation about the x-axis) is transformed into degree of freedom 1 of the rotational node.

If no knot is generated in the node to which a translational SPC is applied, the way this node is connected to the newly generated nodes in the expanded elements depends on the type of element. For 1D elements MPC's are generated according to Equation [*] and Figure [*]. For 2D shell elements the MPC's correspond to Equation [*] and Figure [*]. Finally, for 2D plane and axisymmetric elements the MPC's correspond to Equation [*] and Figure [*].

The application of a rotational SPC to a node in which no knot is defined is performed by generating a mean rotation MPC (cf. Section [*]) about the rotation axis. The rotation axis can be along a global coordinate direction or along a local one. Contrary to translational SPC's, rotational SPC's in a local coordinate system are not converted into MPC's. Rather, the local rotation axis is taken right away as the axis of the mean rotation.

For the temperature degrees of freedom in heat transfer calculations the MPC's generated in beam and shell nodes in which no knot is defined are not sufficient. Indeed, the MPC only specifies the mean of corner nodes (for beams) or the mean of the upper and lower node (for shells). In practice, this corresponds to any bilinear (for beams) or linear (for shells) function across the cross section. In CalculiX, it is not possible to specify this gradient, so a constant function is defined. This is done by assigning the temperature SPC to nodes 2, 3 and 4 (for beams, Equation [*]) and to node 2 (for shells, Equation [*]).