Skip to content

smallStrain

Description

This class solves for total displacement D in a total Lagrangian configuration (i.e. the mesh is NOT updated), and employs the small-strain approximation.

This means that the strain tensor is linear, i.e.:

\[ \begin{aligned} \epsilon = \frac{1}{2} (\nabla D + \nabla^T D) \end{aligned} \]

and that the geometric non-linearity is neglected, i.e. the reference and updated configurations are considered to be the same.


Options

As a mechanicsSubSolver class, smallStrain allows the user to specify a few additional parameters in the mechanicsOptions sub-dictionary located within the solverDict.

Parameters in mechanicsOptions:

forceSummary It prints a summary of boundary-forces at each iteration. It is set to false by default.
cylindricalStress Creates cylindrical stress, strain and displacement field. It is useful for visualization and data-analysis purposes. It is set to false by default.
sphericalStress Creates spherical stress, strain and displacement field. It is useful for visualization and data-analysis purposes. It is set to false by default.
RhieChowCorrection Apply a correction to the explicit component of the divergence of the stress, similar to a Rhie & Chow correction, to stabilize the momentum equation. It is set to true by default unless the multiMaterialCorrection is activated. It is strongly suggested to use a RhieChowCorrection unless the multiMaterialCorrection itself is activated.
RhieChowScaleFactor Scaling factor for the RhieChowCorrection. A value of 1 is used by default and corresponds to applying the full correction. A value of 0 applies no correction at all.
multiMaterialCorrection Additional subdictionary that applies a custom discretization scheme for both the implicit and explicit components of the stress divergence. This means that the gradient scheme for the stress and the laplacian scheme for the displacement fields are neglected. The correction is not activated by default.


Usage

Here is a code snippet of the solverDict to be used for activating the smallStrainIncrementalUpdated mechanics solver class:

mechanicsSolver smallStrain;

mechanicsOptions
{
    // Print summary of boundary-forces at each iteration
    forceSummary false;

    // Creates cylindrical stress and displacement field
    cylindricalStress false;

    // Creates spherical stress and displacement field
    sphericalStress false;

    // Apply RhieChowCorrection to stabilize momentum equation (it should
    // be activated in most situations)
    RhieChowCorrection true;

    // Optional subDict for multi-material cases (it has priority over
    // RhieChowCorrection when activated)
    multiMaterialCorrection
    {
        // other correction types are possible
        type none;
    }
}