External Strain
The External Strain subnode allows you to provide inelastic strain contributions to the material models Linear Elastic Material, Nonlinear Elastic Material, and Hyperelastic Material on a variety of formats, including using external coded functions.
The External Strain subnode is only available with some COMSOL products (see https://www.comsol.com/products/specifications/).
Shell Properties

This section is only present when External Strain is used in the Layered Shell interface. See the documentation for the External Strain node in the Layered Shell chapter.
Coordinate System Selection
Select a Coordinate system. All inputs that you give below are interpreted in the given coordinate system. This also implies that external code should assume that strains are passed with its local orientations. Deformation gradients are rotated by the local system in both indices.
External Strain
Select the type of Strain inputExternal material, Strain tensor, Deformation gradient, Deformation gradient, inverse, or Stretches.
The option Strain tensor is not available for a Hyperelastic Material.
The option External material is not available in the Layered Shell interface.
External Material
For External material, the computation of an additional inelastic strain contribution is delegated to external code which has been compiled into a shared library. External libraries must first be imported into an External Material node under Global Definitions>Materials.
Select an External material from the list of compatible external materials added under Global Definitions>Materials.
For a material to be compatible with this External Strain subnode, its Interface type must be set to a type whose required input quantities are all defined in this node. Allowed required inputs include Green–Lagrange strains, the deformation gradient, second Piola–Kirchhoff stress as well as all standard model inputs. Select Inelastic residual quantityStrain or Deformation gradient to define the type of quantity by which you want communicate with the external code.
If the Interface type in the External material node is Inelastic residual strain, then select Strain.
If the Interface type in the External material node is Inelastic residual deformation, then select Deformation gradient. This is the only option for a hyperelastic material.
Strain Tensor
For Strain tensor, enter an inelastic strain contribution εext. From the Strain tensor list, you can choose User defined, or any strain tensor which is announced by another physics interface. If you select User defined, enter values or expressions for the upper diagonal part of the symmetric strain tensor.
Deformation Gradient
For Deformation gradient, enter an inelastic deformation gradient contribution Fext. From the External deformation gradient list, you can choose User defined, or any deformation gradient tensor which is announced by another physics interface. If you select User defined, enter values or expressions for the components of the deformation gradient tensor.
Deformation Gradient, Inverse
For Deformation gradient, inverse, enter an inelastic inverse deformation gradient contribution . From the External deformation gradient inverse list, you can choose User defined, or any inverse deformation gradient tensor which is announced by another physics interface. If you select User defined, enter values or expressions for the components of the inverse deformation gradient tensor.
Stretches
For Stretches, enter values or expressions for the three principal stretches. Entering data on this form is convenient for some simple geometries and strain states, but in general it is difficult to provide suitable a coordinate system for the principal orientations.
The External Strain node is only available with some COMSOL products (see https://www.comsol.com/products/specifications/).
Selecting a tensor announced by the same physics interface as where the External Strain node is added, may result in an error (‘Circular variable dependency detected’). This operation is usually meaningless.
You can use a tensor from the same physics interface, but from a previous solution step. Select the User defined input type and enter expressions where the withsol operator is used to point to the intended solution.
If you select Deformation gradient form the Strain input list, and the Additive strain decomposition check-box is selected in the parent material node during a geometrically nonlinear study step, the Green–Lagrange strain tensor is computed from
If you select Deformation gradient form the Strain input list when engineering strains are expected, the engineering strain tensor is computed from
This is the case if the study step is geometrically linear, or when the Geometrically linear formulation check box is selected in the parent material node.
If you select Strain tensor from the Strain input list, and the parent material node operates with multiplicative strain decomposition, the external strain is converted into a deformation gradient using the infinitesimal strain assumption
External Material and Working with External Materials in the COMSOL Multiphysics Reference Manual.
Location in User Interface
Context Menus
Ribbon
Physics tab with Linear Elastic Material, Nonlinear Elastic Material, Hyperelastic Material, or Shape Memory Alloy node selected in the model builder tree: