Measuring Rotation Induced by Torque Application in FEniCS

In Abaqus, we can apply torque to a surface of a body by utilizing a rigid body constraint. This involves rigidifying the desired surface and connecting it to a reference point. Subsequently, we can apply torque to this reference point and either read the rotation of this reference point (representing the rigidified surface of the body) or apply rotation and read the reaction torque.

My question is whether a similar process is feasible within FEniCS?

Hi, apply rigid rotation and then read the torque can be easily achieved though Dirichlet boundary conditions with Expressions depending on the spatial coordinate, see for instance Hyperelasticity — Computational Mechanics Numerical Tours with FEniCSx
If the rotation is unknown and you want to apply a torque on a rigid section this is more involved and requires the use of dolfinx_mpc GitHub - jorgensd/dolfinx_mpc: Extension for dolfinx to handle multi-point constraints. to enforce the multi-point constraint as you described

1 Like

Many thanks for your first reference, it helped me implement rigid rotation.

Regarding the measurement of the resulting torque, does FEniCS provide this directly like Abaqus, or do I need to calculate it myself from the resulting stress field?

You need to calculate yourself, either via integrating the stress on the boundary or via applying bcs to the residual as described here: Computing consistent reaction forces — Computational Mechanics Numerical Tours with FEniCSx