Solid mechanics
This page derives the weak formulation for solid mechanics and describes the available loads, constraints, and couplings in Allsolve.
Strong formulation
Section titled “Strong formulation”The strong form of deformable solids is given by the Cauchy momentum equation
where
- is the stress tensor
- is the volumetric body force vector
- is the mass density
- is the displacement field vector
- is the acceleration vector
Constitutive equation
Section titled “Constitutive equation”Generalized Hooke’s law defines the relation between the stress and strain components
where is a fourth-order elasticity tensor and is the strain tensor.
Strain tensor
Section titled “Strain tensor”- Small displacement theory:
- Large displacement theory:
Voigt notation
Section titled “Voigt notation”In Voigt notation, the stress and strain tensors are represented as vectors. Consequently, the constitutive relation takes the form
where is the elasticity matrix which is a symmetric matrix.
Weak formulation
Section titled “Weak formulation”To obtain the weak form, multiply by the test function and integrate over the domain :
Applying Leibniz rule on the divergence term, we get
Applying Divergence theorem on the divergence term, we get
Since the stress tensor is symmetric, the following relation holds.
Substituting in the above relation and following the definition of traction vector , we get the final form of our weak formulation,
Interactions
Section titled “Interactions”Applies an external mechanical load to a selected region by prescribing a force vector , resulting in deformation and stress.
Constraint
Section titled “Constraint”Fixes all components of the displacement field . Use this interaction to fix displacements at a node, boundary, or within a region of the solid. Use Clamp interaction to fix displacement values to zero.
| How to use | You can use either the matrix editor or the expression editor. Matrix editor is the default, just enable a dimension/dimensions to constrain and enter the displacement value. With the expression editor, provide a 3×2 matrix with the first column containing 1 or 0 (whether a constraint is applied in that dimension or not), and the second column containing the displacement values. |
| Example | expression editor: [0, 0; 1, 42; 0, 0] applies a 3D displacement constraint of in the y-direction, while the other dimensions remain unconstrained. |
| Unit | Displacement values in meters (m) |
Clamp is a special case of a Constraint where the displacement is fixed to zero. This boundary condition will constrain all components of the displacement vector in the targeted region to zero displacement:
Lump U/F
Section titled “Lump U/F”Applies a lumped displacement or force through a boundary of some surface, replacing detailed field distribution with an equivalent lumped value.
| How to use | Specify the target curve (must be a connected loop). From Actuation mode, select either displacement, force or circuit coupling. Use the matrix editor or the expression editor to define values: provide a 3×2 matrix for a 3D problem (2×2 for 2D, etc.), where the first column contains 1 or 0 (whether a constraint is applied or not) and the second column contains the values. |
| Example | [0, 0; 1, 0.01; 0, 0] applies a 3D lumped displacement constraint of in the y-direction, while the other dimensions remain unconstrained. |
| Unit | Displacement values in meters (m) or force in Newtons (N) |
Pressure
Section titled “Pressure”Applies a scalar pressure load normal to a boundary surface. Positive pressure acts inward (compression), negative pressure acts outward (tension). Unlike a general Load which requires specifying a force vector, Pressure only needs a scalar value — the direction is determined automatically from the surface normal.
| How to use | Select the target boundary (surface for 3D, curve for 2D). Provide a scalar pressure value. Positive values push into the solid, negative values pull outward. |
| Example | 1e6 applies 1 MPa of compressive pressure to the selected surface. |
| Unit | Pressure in Pascals (Pa) |
Prestress
Section titled “Prestress”Applies an initial stress state to a region before the primary analysis begins. Use this to model residual stresses from manufacturing, thermal history, or prior loading stages. Prestress modifies structural stiffness — tensile prestress increases stiffness while compressive prestress reduces it, affecting eigenfrequencies and buckling behavior.
| How to use | Provide the initial stress tensor components using the matrix editor or the expression editor. For a 3D problem, specify 6 Voigt components (, , , , , ). |
| Example | [1e6; 0; 0; 0; 0; 0] applies a uniaxial prestress of 1 MPa in the xx-direction to the target region. |
| Unit | Stress in Pascals (Pa) |
Periodicity
Section titled “Periodicity”Imposes periodic boundary conditions for the vector field . Reduces computational domain size for symmetric problems.
| Example | Periodicity follows the same principles, regardless of which physics module it belongs to. See how periodicity is used in magnetism as a reference: Periodicity in electric motors |
Symmetry
Section titled “Symmetry”Imposes a symmetry boundary condition on a plane, constraining the normal displacement component to zero () while leaving tangential displacements free. Use this to model only a fraction of a symmetric structure (where both geometry and loads are symmetric about the cut plane), reducing computational cost.
| How to use | Select the boundary that represents the symmetry plane. |
| Example | Cutting a beam with a centered load along its midplane and applying Symmetry to the cut face halves the number of degrees of freedom while producing the same result as the full model. |
Proportional damping
Section titled “Proportional damping”Applies Rayleigh damping to the structure, where the damping matrix is a linear combination of the mass and stiffness matrices: . The mass-proportional coefficient damps low-frequency modes, while the stiffness-proportional coefficient damps high-frequency modes.
| How to use | Provide the mass damping coefficient and the stiffness damping coefficient . These can be determined from known damping ratios at two reference frequencies. |
| Example | and applies Rayleigh damping tuned to a target damping ratio across the frequency range of interest. |
| Unit | in 1/s, in s |
Geometric nonlinearity
Section titled “Geometric nonlinearity”Enables large-deformation analysis by accounting for changes in geometry during loading. With Geometric nonlinearity applied, the Solid mechanics formulation uses the Green-Lagrange strain tensor instead of the Linear strain tensor.
| How to use | Enable this interaction from the options. Geometric nonlinearity is applied on the same region as Solid Mechanics, so no target region needs to be specified. |
Contact
Section titled “Contact”Defines a contact interaction between two surfaces that may come into contact during deformation. Prevents interpenetration of bodies and computes contact pressures when surfaces touch.
The spacing parameter is your error margin for contact: the surfaces are said to be touching if the gap becomes less than or equal to the spacing parameter.
Stiction (static friction) is the tendency for smooth surfaces to stick together. As surfaces come into contact, a threshold force has to be overcome to break them apart and induce relative motion.
| How to use | Select the two boundary surfaces that may come into contact as Gamma 1/2. Select the volumes with the boundary surfaces as Gamma side 1/2. Set the spacing parameter as your error margin (m) for contact. Set stiction as the threshold force (N) that is needed to break the contacting surfaces apart. |
| Unit | Spacing in meters (m) and Stiction in Newtons (N) |
Couplings to Other Physics
Section titled “Couplings to Other Physics”This formulation supports the following couplings:
- Thermal expansion
- Heat solid
- Heat fluid
- Piezoelectricity
- Electrostatics
- Electric force
- Current flow
- Electromagnetic waves
- Electrostatics
- Magnetism H
- Magnetic force
- Magnetism A
- Magnetism 𝜑
- Magnetism H
- Large displacement
- Mesh deformation