Average Rotation
Add an Average Rotation node to compute the average rotation and displacement for a set of points. The points are assumed to move together as a rigid body in a least-squares sense. Vectors for average rotation and displacement, as well as their velocities and accelerations, are created as result variables. Add one Average Rotation node for each set of points that you want to evaluate.
The point selection requires at least two points in 2D and three points in 3D.
Center of Rotation
Select a method for determining the Center of RotationAutomatic, Centroid of selected entities, or User defined.
If Automatic is selected, the center of rotation is determined as the average position of the selected points.
For Centroid of selected entities, select an Entity levelDomain, Boundary, Edge, or Point. The available choices depend on physics interface and geometrical dimension. The center of rotation is located at the centroid of the selected entities, which do not need to be related to the points used for computing the average rotation. As a special case, you can select a single point, and thus use that point as center of rotation.
When User defined is selected, enter the location of the center of rotation manually.
Rotation Model
Select a Rotation ModelSmall rotations or Finite rotations. With Small rotations, the computation of displacements caused by rotations is linearized using a cross product. If large rotations are expected, the Finite rotation formulation is more accurate. In this case, the rotation is described by a nonlinear rotation matrix.
Formulation
Select a FormulationSymmetric segregated or Unsymmetric coupled. This affects how the least-squares equations for computing the average rotations are formulated. Using an appropriate setting here, and a corresponding setup of the solver strategy can strongly affect the computational cost. The cost of solving for the average rotation variables as such is very small, but it can affect the structure of the system of equations.
With the Unsymmetric coupled option, you do not have to care about solver setup. However, the majority of structural mechanics problems produce a symmetric stiffness matrix, and that symmetry is now broken by adding the equations for average rotation. This will lead to a significant (about a factor 2) penalty on solution time and memory usage.
If the variables created by this feature are used in other equations, you should also typically use the Unsymmetric coupled option.
In most cases, the average rotations and displacements are however used only during result presentation. This means that the most efficient solution procedure is to first compute the structural mechanics displacements, and subsequently solve the least squares problem for the average rotations. If this is the case, using the Symmetric segregated approach is usually the best choice. You must, however, set up the solver sequence in a way such that you can benefit from this property. There are several possible strategies, for example:
Use two different study steps. In the first step, do not solve for the average rotation and displacement variables. This can be done by disabling the Average Rotation node in the study settings. In the second study step, solve only for those variables by disabling the other dependent variables under the Dependent Variables node.
Use a segregated solver. In this case, solve for the average rotation and displacement variables only in the last segregated step. Note that in the default case, always at least two iterations will be performed in a segregated solver. This is typically not what you want. Set Termination technique to Iterations in the Segregated node, and terminate after one iteration. Then, if required, set up the Segregated Step in which the structural mechanics problem is solved so that proper nonlinear iterations are performed until convergence.
See also Average Rotation in the Structural Mechanics Theory Chapter.
Location in User Interface
Context Menus
Ribbon
Physics tab with an applicable physics interface selected in the Model Builder tree: