Replaced by ComputeElasticityTensor, ComputeSmallStrain, and ComputeLinearElasticStress (and possibly ComputeEigenstrain and ComputeThermalExpansionEigenStrain).

The LinearElasticMaterial (Doxygen) is a monolithic material that has been replaced by modular stress, strain, and elasticity tensor materials.

Migration Instructions

To migrate from LinearElasticMaterial...

  1. Add a ComputeElasticityTensor material with the C_ijkl and fill_method copied from the old material
  2. Add a ComputeSmallStrain material
  3. Add a ComputeLinearElasticStress material
  4. Add a ComputeEigenstrain material if applied_strain_vector was specified. Set prefactor = -1 and eigen_base to the value of applied_strain_vector.
  5. Add a ComputeThermalExpansionEigenStrain material if a thermal_expansion_coeff was specified in the old LinearElasticMaterial input file block. Set thermal_expansion_coefficient equal to the value of thermal_expansion_coeff, and set Temperature to the variable given for T in the old LinearElasticMaterial input file. If T0 was specified in the old input file, set stress_free_reference_temperature to the value given for T0; if an value was not specified for T0, set stress_free_reference_temperature to 300 to preserve the old default value from LinearElasticMaterial.


The input files




are an example of a migration to Plug & Play TM. Both input files produce identical outputs.

Old version

    type = LinearElasticMaterial
    disp_y = disp_y
    disp_x = disp_x
    C_ijkl = '1 1'
    elasticity_tensor_prefactor = prefactor
    fill_method = symmetric_isotropic
    applied_strain_vector = '0.1 0.05 0 0 0 0.01'
    thermal_expansion_coeff = 1.0e-5
    T = temp

prefactor is a Function in this example. In the old version every aspect of the mechanics is calculated by a single material.

New version

Compare this to the new version, where stress, strain, and elasticity tensor calculation are modular and can be exchanged for other calculation classes.

    type = ComputeElasticityTensor
    C_ijkl = '1 1'
    fill_method = symmetric_isotropic
    elasticity_tensor_prefactor = prefactor
    type = ComputeSmallStrain
    displacements = 'disp_x disp_y'
    type = ComputeLinearElasticStress
    type = ComputeEigenstrain
    eigen_base = '0.1 0.05 0 0 0 0.01'
    prefactor = -1
    type = ComputeThermalExpansionEigenStrains
    Temperature = temp
    thermal_expansion_coefficient = 1.0e-5
    stress_free_reference_temperature = 300

Refer to the top of this page with specific instructions for migrating an old LinearElasticMaterial input file to the new Plug-and-Play Tensor Mechanics structure.