MFEMLinearElasticityKernel

Overview

Adds the domain integrator for integrating the bilinear form

where , and is the stress tensor of a material with an isotropic stress/strain relation, with components given by

and

noting that the Einstein summation convention has been used throughout.

The two material-dependent Lamé parameters and can be expressed in terms of the material Young's modulus and the Poisson ratio using

Example Input File Syntax

[Kernels<<<{"href": "../../../syntax/Kernels/index.html"}>>>]
  [diff]
    type = MFEMLinearElasticityKernel<<<{"description": "The isotropic linear elasticity operator with weak form $(c_{ikjl} \\nabla u_j, \\nabla v_i)$, to be added to an MFEM problem, where $c_{ikjl}$ is the isotropic elasticity tensor, $c_{ikjl} = \\lambda \\delta_{ik} \\delta_{jl} + \\mu \\left( \\delta_{ij} \\delta_{kl} + \\delta_{il} \\delta_{jk} \\right)$, $\\lambda$ is the first Lame parameter, $\\lambda = \\frac{E\\nu}{(1-2\\nu)(1+\\nu)}$, $\\mu$ is the second Lame parameter, $\\mu = \\frac{E}{2(1+\\nu)}$, where $E$ is Young's modulus and $\\nu$ is Poisson's ratio.", "href": "MFEMLinearElasticityKernel.html"}>>>
    variable<<<{"description": "Variable labelling the weak form this kernel is added to"}>>> = displacement
    lambda<<<{"description": "Name of MFEM Lame constant lambda to multiply the div(u)*I term by. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a number."}>>> = lambda
    mu<<<{"description": "Name of MFEM Lame constant mu to multiply the gradients term by. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a number."}>>> = mu
  []
[]
(test/tests/mfem/kernels/linearelasticity.i)

Input Parameters

  • blockThe list of subdomains (names or ids) that this object will be restricted to. Leave empty to apply to all subdomains.

    C++ Type:std::vector<SubdomainName>

    Controllable:No

    Description:The list of subdomains (names or ids) that this object will be restricted to. Leave empty to apply to all subdomains.

  • lambda1.Name of MFEM Lame constant lambda to multiply the div(u)*I term by. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a number.

    Default:1.

    C++ Type:MFEMScalarCoefficientName

    Controllable:No

    Description:Name of MFEM Lame constant lambda to multiply the div(u)*I term by. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a number.

  • mu1.Name of MFEM Lame constant mu to multiply the gradients term by. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a number.

    Default:1.

    C++ Type:MFEMScalarCoefficientName

    Controllable:No

    Description:Name of MFEM Lame constant mu to multiply the gradients term by. A functor is any of the following: a variable, an MFEM material property, a function, a postprocessor or a number.

  • variableVariable labelling the weak form this kernel is added to

    C++ Type:VariableName

    Unit:(no unit assumed)

    Controllable:No

    Description:Variable labelling the weak form this kernel is added to

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector<std::string>

    Controllable:No

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Controllable:No

    Description:Set the enabled status of the MooseObject.

Advanced Parameters

Input Files