Visualization of Tensor Components
To visualize stresses, strains, and elasticity tensor components, the material objects must be outputted to auxiliary variables using auxiliary kernels available. RankTwoAux is used to output a RankTwoTensor component, and RankFourAux is used to output a RankFourTensor component.
AuxVariable Creation
As an example, , and can be visualized by first declaring auxiliary variables for them in the input file.
Stress component:
[./s11_aux]
  order = CONSTANT
  family = MONOMIAL
[../]
Strain component:
[./e22_aux]
  order = CONSTANT
  family = MONOMIAL
[../]
Elasticity Tensor component:
[./C1133_aux]
  order = CONSTANT
  family = MONOMIAL
[../]
AuxKernel Creation
Next, the appropriate auxiliary kernels are used. These elements require the name of the material property of which you wish to see the field value and the indices of the tensor value (either 0, 1, or 2) in addition to the name of the output AuxVariable. The corresponding AuxKernels blocks for each of the AuxVariables are given below.
Stress component:
[./matl_s11]
  type = RankTwoAux
  rank_two_tensor = stress
  index_i = 0
  index_j = 0
  variable = s11_aux
[../]
Strain component:
[./matl_e22]
  type = RankTwoAux
  rank_two_tensor = stress
  index_i = 1
  index_j = 1
  variable = e22_aux
[../]
Elasticity Tensor component:
[./matl_C1133]
  type = RankFourAux
  rank_four_tensor = elasticity_tensor
  index_i = 0
  index_j = 0
  index_k = 2
  index_l = 2
  variable = C1133_aux
  execute_on = initial
[../]
See the documentation for RankTwoAux and RankFourAux for more details about the available options for saving quantities from these tensor types.
Postprocessor Usage
To save these values to a CSV file or to the console for further data analysis, the auxiliary variables can be output as postprocessors. A complete list of the Postprocessor System is available in the MOOSE documentation, but the most commonly used option is ElementAverageValue.
(moose/modules/combined/test/tests/eigenstrain/inclusion.i)
# This test allows comparison of simulation and analytical solution for a misfitting precipitate
# using ComputeVariableEigenstrain for the simulation and the InclusionProperties material
# for the analytical solution. Increasing mesh resolution will improve agreement.
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 40
  ny = 40
  xmax = 1.5
  ymax = 1.5
  elem_type = QUAD4
[]
[GlobalParams]
  displacements = 'disp_x disp_y'
[]
[Variables]
  [./disp_x]
    order = FIRST
    family = LAGRANGE
  [../]
  [./disp_y]
    order = FIRST
    family = LAGRANGE
  [../]
[]
[Kernels]
  [./TensorMechanics]
  [../]
[]
[AuxVariables]
  [./s11_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./s12_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./s22_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./s11_an]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./s12_an]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./s22_an]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./e11_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./e12_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./e22_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./e11_an]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./e12_an]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./e22_an]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./fel_an]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./c]
  [../]
[]
[AuxKernels]
  [./matl_s11]
    type = RankTwoAux
    rank_two_tensor = stress
    index_i = 0
    index_j = 0
    variable = s11_aux
  [../]
  [./matl_s12]
    type = RankTwoAux
    rank_two_tensor = stress
    index_i = 0
    index_j = 1
    variable = s12_aux
  [../]
  [./matl_s22]
    type = RankTwoAux
    rank_two_tensor = stress
    index_i = 1
    index_j = 1
    variable = s22_aux
  [../]
  [./matl_s11_an]
    type = RankTwoAux
    rank_two_tensor = stress_an
    index_i = 0
    index_j = 0
    variable = s11_an
  [../]
  [./matl_s12_an]
    type = RankTwoAux
    rank_two_tensor = stress_an
    index_i = 0
    index_j = 1
    variable = s12_an
  [../]
  [./matl_s22_an]
    type = RankTwoAux
    rank_two_tensor = stress_an
    index_i = 1
    index_j = 1
    variable = s22_an
  [../]
  [./matl_e11]
    type = RankTwoAux
    rank_two_tensor = total_strain
    index_i = 0
    index_j = 0
    variable = e11_aux
  [../]
  [./matl_e12]
    type = RankTwoAux
    rank_two_tensor = total_strain
    index_i = 0
    index_j = 1
    variable = e12_aux
  [../]
  [./matl_e22]
    type = RankTwoAux
    rank_two_tensor = total_strain
    index_i = 1
    index_j = 1
    variable = e22_aux
  [../]
  [./matl_e11_an]
    type = RankTwoAux
    rank_two_tensor = strain_an
    index_i = 0
    index_j = 0
    variable = e11_an
  [../]
  [./matl_e12_an]
    type = RankTwoAux
    rank_two_tensor = strain_an
    index_i = 0
    index_j = 1
    variable = e12_an
  [../]
  [./matl_e22_an]
    type = RankTwoAux
    rank_two_tensor = strain_an
    index_i = 1
    index_j = 1
    variable = e22_an
  [../]
  [./matl_fel_an]
    type = MaterialRealAux
    variable = fel_an
    property = fel_an_mat
  [../]
[]
[Materials]
  [./elasticity_tensor]
    type = ComputeElasticityTensor
    block = 0
    C_ijkl = '1 1'
    fill_method = symmetric_isotropic
  [../]
  [./stress]
    type = ComputeLinearElasticStress
    block = 0
  [../]
  [./var_dependence]
    type = DerivativeParsedMaterial
    block = 0
    function = 0.005*c^2
    args = c
    outputs = exodus
    output_properties = 'var_dep'
    f_name = var_dep
    enable_jit = true
    derivative_order = 2
  [../]
  [./eigenstrain]
    type = ComputeVariableEigenstrain
    block = 0
    eigen_base = '1 1 0 0 0 0'
    prefactor = var_dep
    args = c
    eigenstrain_name = eigenstrain
  [../]
  [./strain]
    type = ComputeSmallStrain
    block = 0
    displacements = 'disp_x disp_y'
    eigenstrain_names = eigenstrain
  [../]
  [./analytical]
    type = InclusionProperties
    a = 0.1
    b = 0.1
    lambda = 1
    mu = 1
    misfit_strains = '0.005 0.005'
    strain_name = strain_an
    stress_name = stress_an
    energy_name = fel_an_mat
  [../]
[]
[BCs]
  active = 'left_x bottom_y'
  [./bottom_y]
    type = DirichletBC
    variable = disp_y
    boundary = bottom
    value = 0
  [../]
  [./left_x]
    type = DirichletBC
    variable = disp_x
    boundary = left
    value = 0
  [../]
[]
[Preconditioning]
  [./SMP]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  type = Steady
  solve_type = NEWTON
  petsc_options_iname = '-pc_type -pc_hypre_type -ksp_gmres_restart'
  petsc_options_value = 'hypre boomeramg 31'
  l_max_its = 30
  nl_max_its = 10
  nl_rel_tol = 1.0e-10
[]
[Outputs]
  exodus = true
[]
[ICs]
  [./c_IC]
    int_width = 0.075
    x1 = 0
    y1 = 0
    radius = 0.1
    outvalue = 0
    variable = c
    invalue = 1
    type = SmoothCircleIC
  [../]
[]
(moose/modules/combined/test/tests/eigenstrain/variable.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 20
  ny = 20
  xmax = 0.5
  ymax = 0.5
  elem_type = QUAD4
[]
[GlobalParams]
  displacements = 'disp_x disp_y'
[]
[Variables]
  [./disp_x]
    order = FIRST
    family = LAGRANGE
  [../]
  [./disp_y]
    order = FIRST
    family = LAGRANGE
  [../]
[]
[Kernels]
  [./TensorMechanics]
  [../]
[]
[AuxVariables]
  [./e11_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./e22_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./c]
  [../]
  [./eigen_strain00]
    order = CONSTANT
    family = MONOMIAL
  [../]
[]
[AuxKernels]
  [./matl_e11]
    type = RankTwoAux
    rank_two_tensor = stress
    index_i = 0
    index_j = 0
    variable = e11_aux
  [../]
  [./matl_e22]
    type = RankTwoAux
    rank_two_tensor = stress
    index_i = 1
    index_j = 1
    variable = e22_aux
  [../]
  [./eigen_strain00]
    type = RankTwoAux
    variable = eigen_strain00
    rank_two_tensor = eigenstrain
    index_j = 0
    index_i = 0
  [../]
[]
[Materials]
  [./elasticity_tensor]
    type = ComputeElasticityTensor
    block = 0
    C_ijkl = '1 1'
    fill_method = symmetric_isotropic
  [../]
  [./stress]
    type = ComputeLinearElasticStress
    block = 0
  [../]
  [./var_dependence]
    type = DerivativeParsedMaterial
    block = 0
    function = 0.5*c^2
    args = c
    outputs = exodus
    output_properties = 'var_dep'
    f_name = var_dep
    enable_jit = true
    derivative_order = 2
  [../]
  [./eigenstrain]
    type = ComputeVariableEigenstrain
    block = 0
    eigen_base = '1 1 1 0 0 0'
    prefactor = var_dep
    args = c
    eigenstrain_name = eigenstrain
  [../]
  [./strain]
    type = ComputeSmallStrain
    block = 0
    displacements = 'disp_x disp_y'
    eigenstrain_names = eigenstrain
  [../]
[]
[BCs]
  active = 'left_x bottom_y'
  [./bottom_y]
    type = DirichletBC
    variable = disp_y
    boundary = bottom
    value = 0
  [../]
  [./left_x]
    type = DirichletBC
    variable = disp_x
    boundary = left
    value = 0
  [../]
  [./right_x]
    type = DirichletBC
    variable = disp_x
    boundary = right
    value = 0
  [../]
  [./top_y]
    type = DirichletBC
    variable = disp_y
    boundary = top
    value = 0.01
  [../]
[]
[Preconditioning]
  [./SMP]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  type = Steady
  solve_type = NEWTON
  petsc_options_iname = '-pc_type -pc_hypre_type -ksp_gmres_restart'
  petsc_options_value = 'hypre boomeramg 31'
  l_max_its = 20
  nl_max_its = 10
  l_tol = 1.0e-4
  nl_rel_tol = 1.0e-10
  nl_abs_tol = 1.0e-50
[]
[Outputs]
  exodus = true
[]
[ICs]
  [./c_IC]
    int_width = 0.075
    x1 = 0
    y1 = 0
    radius = 0.25
    outvalue = 0
    variable = c
    invalue = 1
    type = SmoothCircleIC
  [../]
[]
(moose/modules/tensor_mechanics/test/tests/elasticitytensor/composite.i)
# This input file is designed to test the RankTwoAux and RankFourAux
# auxkernels, which report values out of the Tensors used in materials
# properties.
[Mesh]
  type = GeneratedMesh
  dim = 1
  nx = 20
  xmax = 1
[]
[AuxVariables]
  [./c]
    order = FIRST
    family = LAGRANGE
    [./InitialCondition]
      type = FunctionIC
      function = x
    [../]
  [../]
  [./C1111_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./C1122_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./C1133_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./C3313_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./dC1111_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./dC1122_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./dC1133_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./dC3313_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./d2C1111_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./d2C1122_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./d2C1133_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./d2C3313_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
[]
#[Kernels]
#  [./diff]
#    type = Diffusion
#    variable = diffused
#  [../]
#[]
[AuxKernels]
  [./matl_C1111]
    type = RankFourAux
    rank_four_tensor = elasticity_tensor
    index_i = 0
    index_j = 0
    index_k = 0
    index_l = 0
    variable = C1111_aux
    execute_on = initial
  [../]
   [./matl_C1122]
    type = RankFourAux
    rank_four_tensor = elasticity_tensor
    index_i = 0
    index_j = 0
    index_k = 1
    index_l = 1
    variable = C1122_aux
    execute_on = initial
  [../]
  [./matl_C1133]
    type = RankFourAux
    rank_four_tensor = elasticity_tensor
    index_i = 0
    index_j = 0
    index_k = 2
    index_l = 2
    variable = C1133_aux
    execute_on = initial
  [../]
  [./matl_C3313]
    type = RankFourAux
    rank_four_tensor = elasticity_tensor
    index_i = 2
    index_j = 2
    index_k = 0
    index_l = 2
    variable = C3313_aux
    execute_on = initial
  [../]
  [./matl_dC1111]
    type = RankFourAux
    rank_four_tensor = delasticity_tensor/dc
    index_i = 0
    index_j = 0
    index_k = 0
    index_l = 0
    variable = dC1111_aux
    execute_on = initial
  [../]
   [./matl_dC1122]
    type = RankFourAux
    rank_four_tensor = delasticity_tensor/dc
    index_i = 0
    index_j = 0
    index_k = 1
    index_l = 1
    variable = dC1122_aux
    execute_on = initial
  [../]
  [./matl_dC1133]
    type = RankFourAux
    rank_four_tensor = delasticity_tensor/dc
    index_i = 0
    index_j = 0
    index_k = 2
    index_l = 2
    variable = dC1133_aux
    execute_on = initial
  [../]
  [./matl_dC3313]
    type = RankFourAux
    rank_four_tensor = delasticity_tensor/dc
    index_i = 2
    index_j = 2
    index_k = 0
    index_l = 2
    variable = dC3313_aux
    execute_on = initial
  [../]
  [./matl_d2C1111]
    type = RankFourAux
    rank_four_tensor = d^2elasticity_tensor/dc^2
    index_i = 0
    index_j = 0
    index_k = 0
    index_l = 0
    variable = d2C1111_aux
    execute_on = initial
  [../]
   [./matl_d2C1122]
    type = RankFourAux
    rank_four_tensor = d^2elasticity_tensor/dc^2
    index_i = 0
    index_j = 0
    index_k = 1
    index_l = 1
    variable = d2C1122_aux
    execute_on = initial
  [../]
  [./matl_d2C1133]
    type = RankFourAux
    rank_four_tensor = d^2elasticity_tensor/dc^2
    index_i = 0
    index_j = 0
    index_k = 2
    index_l = 2
    variable = d2C1133_aux
    execute_on = initial
  [../]
  [./matl_d2C3313]
    type = RankFourAux
    rank_four_tensor = d^2elasticity_tensor/dc^2
    index_i = 2
    index_j = 2
    index_k = 0
    index_l = 2
    variable = d2C3313_aux
    execute_on = initial
  [../]
[]
[Materials]
  [./Ca]
    type = ComputeElasticityTensor
    base_name = Ca
    block = 0
    fill_method = symmetric21
    C_ijkl ='1111 .1122 1133 1123 1113 1112 2222 2233 2223 2213 2212 3333 3323 3313 3312 2323 2313 2312 1313 1312 1212'
  [../]
  [./Cb]
    type = ComputeElasticityTensor
    base_name = Cb
    block = 0
    fill_method = symmetric21
    C_ijkl ='.1111 1122 .1133 .1123 .1113 .1112 .2222 .2233 .2223 .2213 .2212 .3333 .3323 .3313 .3312 .2323 .2313 .2312 .1313 .1312 .1212'
  [../]
  [./Fa]
    type = DerivativeParsedMaterial
    block = 0
    f_name = Fa
    function = c^2
    args = c
  [../]
  [./Fb]
    type = DerivativeParsedMaterial
    block = 0
    f_name = Fb
    function = (1-c)^3
    args = c
  [../]
  [./C]
    type = CompositeElasticityTensor
    block = 0
    args = c
    tensors = 'Ca Cb'
    weights = 'Fa Fb'
  [../]
[]
[Problem]
  kernel_coverage_check = false
  solve = false
[]
[Executioner]
  type = Steady
[]
[Outputs]
  exodus = true
[]
(moose/modules/combined/test/tests/eigenstrain/inclusion.i)
# This test allows comparison of simulation and analytical solution for a misfitting precipitate
# using ComputeVariableEigenstrain for the simulation and the InclusionProperties material
# for the analytical solution. Increasing mesh resolution will improve agreement.
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 40
  ny = 40
  xmax = 1.5
  ymax = 1.5
  elem_type = QUAD4
[]
[GlobalParams]
  displacements = 'disp_x disp_y'
[]
[Variables]
  [./disp_x]
    order = FIRST
    family = LAGRANGE
  [../]
  [./disp_y]
    order = FIRST
    family = LAGRANGE
  [../]
[]
[Kernels]
  [./TensorMechanics]
  [../]
[]
[AuxVariables]
  [./s11_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./s12_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./s22_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./s11_an]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./s12_an]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./s22_an]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./e11_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./e12_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./e22_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./e11_an]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./e12_an]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./e22_an]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./fel_an]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./c]
  [../]
[]
[AuxKernels]
  [./matl_s11]
    type = RankTwoAux
    rank_two_tensor = stress
    index_i = 0
    index_j = 0
    variable = s11_aux
  [../]
  [./matl_s12]
    type = RankTwoAux
    rank_two_tensor = stress
    index_i = 0
    index_j = 1
    variable = s12_aux
  [../]
  [./matl_s22]
    type = RankTwoAux
    rank_two_tensor = stress
    index_i = 1
    index_j = 1
    variable = s22_aux
  [../]
  [./matl_s11_an]
    type = RankTwoAux
    rank_two_tensor = stress_an
    index_i = 0
    index_j = 0
    variable = s11_an
  [../]
  [./matl_s12_an]
    type = RankTwoAux
    rank_two_tensor = stress_an
    index_i = 0
    index_j = 1
    variable = s12_an
  [../]
  [./matl_s22_an]
    type = RankTwoAux
    rank_two_tensor = stress_an
    index_i = 1
    index_j = 1
    variable = s22_an
  [../]
  [./matl_e11]
    type = RankTwoAux
    rank_two_tensor = total_strain
    index_i = 0
    index_j = 0
    variable = e11_aux
  [../]
  [./matl_e12]
    type = RankTwoAux
    rank_two_tensor = total_strain
    index_i = 0
    index_j = 1
    variable = e12_aux
  [../]
  [./matl_e22]
    type = RankTwoAux
    rank_two_tensor = total_strain
    index_i = 1
    index_j = 1
    variable = e22_aux
  [../]
  [./matl_e11_an]
    type = RankTwoAux
    rank_two_tensor = strain_an
    index_i = 0
    index_j = 0
    variable = e11_an
  [../]
  [./matl_e12_an]
    type = RankTwoAux
    rank_two_tensor = strain_an
    index_i = 0
    index_j = 1
    variable = e12_an
  [../]
  [./matl_e22_an]
    type = RankTwoAux
    rank_two_tensor = strain_an
    index_i = 1
    index_j = 1
    variable = e22_an
  [../]
  [./matl_fel_an]
    type = MaterialRealAux
    variable = fel_an
    property = fel_an_mat
  [../]
[]
[Materials]
  [./elasticity_tensor]
    type = ComputeElasticityTensor
    block = 0
    C_ijkl = '1 1'
    fill_method = symmetric_isotropic
  [../]
  [./stress]
    type = ComputeLinearElasticStress
    block = 0
  [../]
  [./var_dependence]
    type = DerivativeParsedMaterial
    block = 0
    function = 0.005*c^2
    args = c
    outputs = exodus
    output_properties = 'var_dep'
    f_name = var_dep
    enable_jit = true
    derivative_order = 2
  [../]
  [./eigenstrain]
    type = ComputeVariableEigenstrain
    block = 0
    eigen_base = '1 1 0 0 0 0'
    prefactor = var_dep
    args = c
    eigenstrain_name = eigenstrain
  [../]
  [./strain]
    type = ComputeSmallStrain
    block = 0
    displacements = 'disp_x disp_y'
    eigenstrain_names = eigenstrain
  [../]
  [./analytical]
    type = InclusionProperties
    a = 0.1
    b = 0.1
    lambda = 1
    mu = 1
    misfit_strains = '0.005 0.005'
    strain_name = strain_an
    stress_name = stress_an
    energy_name = fel_an_mat
  [../]
[]
[BCs]
  active = 'left_x bottom_y'
  [./bottom_y]
    type = DirichletBC
    variable = disp_y
    boundary = bottom
    value = 0
  [../]
  [./left_x]
    type = DirichletBC
    variable = disp_x
    boundary = left
    value = 0
  [../]
[]
[Preconditioning]
  [./SMP]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  type = Steady
  solve_type = NEWTON
  petsc_options_iname = '-pc_type -pc_hypre_type -ksp_gmres_restart'
  petsc_options_value = 'hypre boomeramg 31'
  l_max_its = 30
  nl_max_its = 10
  nl_rel_tol = 1.0e-10
[]
[Outputs]
  exodus = true
[]
[ICs]
  [./c_IC]
    int_width = 0.075
    x1 = 0
    y1 = 0
    radius = 0.1
    outvalue = 0
    variable = c
    invalue = 1
    type = SmoothCircleIC
  [../]
[]
(moose/modules/combined/test/tests/eigenstrain/variable.i)
[Mesh]
  type = GeneratedMesh
  dim = 2
  nx = 20
  ny = 20
  xmax = 0.5
  ymax = 0.5
  elem_type = QUAD4
[]
[GlobalParams]
  displacements = 'disp_x disp_y'
[]
[Variables]
  [./disp_x]
    order = FIRST
    family = LAGRANGE
  [../]
  [./disp_y]
    order = FIRST
    family = LAGRANGE
  [../]
[]
[Kernels]
  [./TensorMechanics]
  [../]
[]
[AuxVariables]
  [./e11_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./e22_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./c]
  [../]
  [./eigen_strain00]
    order = CONSTANT
    family = MONOMIAL
  [../]
[]
[AuxKernels]
  [./matl_e11]
    type = RankTwoAux
    rank_two_tensor = stress
    index_i = 0
    index_j = 0
    variable = e11_aux
  [../]
  [./matl_e22]
    type = RankTwoAux
    rank_two_tensor = stress
    index_i = 1
    index_j = 1
    variable = e22_aux
  [../]
  [./eigen_strain00]
    type = RankTwoAux
    variable = eigen_strain00
    rank_two_tensor = eigenstrain
    index_j = 0
    index_i = 0
  [../]
[]
[Materials]
  [./elasticity_tensor]
    type = ComputeElasticityTensor
    block = 0
    C_ijkl = '1 1'
    fill_method = symmetric_isotropic
  [../]
  [./stress]
    type = ComputeLinearElasticStress
    block = 0
  [../]
  [./var_dependence]
    type = DerivativeParsedMaterial
    block = 0
    function = 0.5*c^2
    args = c
    outputs = exodus
    output_properties = 'var_dep'
    f_name = var_dep
    enable_jit = true
    derivative_order = 2
  [../]
  [./eigenstrain]
    type = ComputeVariableEigenstrain
    block = 0
    eigen_base = '1 1 1 0 0 0'
    prefactor = var_dep
    args = c
    eigenstrain_name = eigenstrain
  [../]
  [./strain]
    type = ComputeSmallStrain
    block = 0
    displacements = 'disp_x disp_y'
    eigenstrain_names = eigenstrain
  [../]
[]
[BCs]
  active = 'left_x bottom_y'
  [./bottom_y]
    type = DirichletBC
    variable = disp_y
    boundary = bottom
    value = 0
  [../]
  [./left_x]
    type = DirichletBC
    variable = disp_x
    boundary = left
    value = 0
  [../]
  [./right_x]
    type = DirichletBC
    variable = disp_x
    boundary = right
    value = 0
  [../]
  [./top_y]
    type = DirichletBC
    variable = disp_y
    boundary = top
    value = 0.01
  [../]
[]
[Preconditioning]
  [./SMP]
    type = SMP
    full = true
  [../]
[]
[Executioner]
  type = Steady
  solve_type = NEWTON
  petsc_options_iname = '-pc_type -pc_hypre_type -ksp_gmres_restart'
  petsc_options_value = 'hypre boomeramg 31'
  l_max_its = 20
  nl_max_its = 10
  l_tol = 1.0e-4
  nl_rel_tol = 1.0e-10
  nl_abs_tol = 1.0e-50
[]
[Outputs]
  exodus = true
[]
[ICs]
  [./c_IC]
    int_width = 0.075
    x1 = 0
    y1 = 0
    radius = 0.25
    outvalue = 0
    variable = c
    invalue = 1
    type = SmoothCircleIC
  [../]
[]
(moose/modules/tensor_mechanics/test/tests/elasticitytensor/composite.i)
# This input file is designed to test the RankTwoAux and RankFourAux
# auxkernels, which report values out of the Tensors used in materials
# properties.
[Mesh]
  type = GeneratedMesh
  dim = 1
  nx = 20
  xmax = 1
[]
[AuxVariables]
  [./c]
    order = FIRST
    family = LAGRANGE
    [./InitialCondition]
      type = FunctionIC
      function = x
    [../]
  [../]
  [./C1111_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./C1122_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./C1133_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./C3313_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./dC1111_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./dC1122_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./dC1133_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./dC3313_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./d2C1111_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./d2C1122_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./d2C1133_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
  [./d2C3313_aux]
    order = CONSTANT
    family = MONOMIAL
  [../]
[]
#[Kernels]
#  [./diff]
#    type = Diffusion
#    variable = diffused
#  [../]
#[]
[AuxKernels]
  [./matl_C1111]
    type = RankFourAux
    rank_four_tensor = elasticity_tensor
    index_i = 0
    index_j = 0
    index_k = 0
    index_l = 0
    variable = C1111_aux
    execute_on = initial
  [../]
   [./matl_C1122]
    type = RankFourAux
    rank_four_tensor = elasticity_tensor
    index_i = 0
    index_j = 0
    index_k = 1
    index_l = 1
    variable = C1122_aux
    execute_on = initial
  [../]
  [./matl_C1133]
    type = RankFourAux
    rank_four_tensor = elasticity_tensor
    index_i = 0
    index_j = 0
    index_k = 2
    index_l = 2
    variable = C1133_aux
    execute_on = initial
  [../]
  [./matl_C3313]
    type = RankFourAux
    rank_four_tensor = elasticity_tensor
    index_i = 2
    index_j = 2
    index_k = 0
    index_l = 2
    variable = C3313_aux
    execute_on = initial
  [../]
  [./matl_dC1111]
    type = RankFourAux
    rank_four_tensor = delasticity_tensor/dc
    index_i = 0
    index_j = 0
    index_k = 0
    index_l = 0
    variable = dC1111_aux
    execute_on = initial
  [../]
   [./matl_dC1122]
    type = RankFourAux
    rank_four_tensor = delasticity_tensor/dc
    index_i = 0
    index_j = 0
    index_k = 1
    index_l = 1
    variable = dC1122_aux
    execute_on = initial
  [../]
  [./matl_dC1133]
    type = RankFourAux
    rank_four_tensor = delasticity_tensor/dc
    index_i = 0
    index_j = 0
    index_k = 2
    index_l = 2
    variable = dC1133_aux
    execute_on = initial
  [../]
  [./matl_dC3313]
    type = RankFourAux
    rank_four_tensor = delasticity_tensor/dc
    index_i = 2
    index_j = 2
    index_k = 0
    index_l = 2
    variable = dC3313_aux
    execute_on = initial
  [../]
  [./matl_d2C1111]
    type = RankFourAux
    rank_four_tensor = d^2elasticity_tensor/dc^2
    index_i = 0
    index_j = 0
    index_k = 0
    index_l = 0
    variable = d2C1111_aux
    execute_on = initial
  [../]
   [./matl_d2C1122]
    type = RankFourAux
    rank_four_tensor = d^2elasticity_tensor/dc^2
    index_i = 0
    index_j = 0
    index_k = 1
    index_l = 1
    variable = d2C1122_aux
    execute_on = initial
  [../]
  [./matl_d2C1133]
    type = RankFourAux
    rank_four_tensor = d^2elasticity_tensor/dc^2
    index_i = 0
    index_j = 0
    index_k = 2
    index_l = 2
    variable = d2C1133_aux
    execute_on = initial
  [../]
  [./matl_d2C3313]
    type = RankFourAux
    rank_four_tensor = d^2elasticity_tensor/dc^2
    index_i = 2
    index_j = 2
    index_k = 0
    index_l = 2
    variable = d2C3313_aux
    execute_on = initial
  [../]
[]
[Materials]
  [./Ca]
    type = ComputeElasticityTensor
    base_name = Ca
    block = 0
    fill_method = symmetric21
    C_ijkl ='1111 .1122 1133 1123 1113 1112 2222 2233 2223 2213 2212 3333 3323 3313 3312 2323 2313 2312 1313 1312 1212'
  [../]
  [./Cb]
    type = ComputeElasticityTensor
    base_name = Cb
    block = 0
    fill_method = symmetric21
    C_ijkl ='.1111 1122 .1133 .1123 .1113 .1112 .2222 .2233 .2223 .2213 .2212 .3333 .3323 .3313 .3312 .2323 .2313 .2312 .1313 .1312 .1212'
  [../]
  [./Fa]
    type = DerivativeParsedMaterial
    block = 0
    f_name = Fa
    function = c^2
    args = c
  [../]
  [./Fb]
    type = DerivativeParsedMaterial
    block = 0
    f_name = Fb
    function = (1-c)^3
    args = c
  [../]
  [./C]
    type = CompositeElasticityTensor
    block = 0
    args = c
    tensors = 'Ca Cb'
    weights = 'Fa Fb'
  [../]
[]
[Problem]
  kernel_coverage_check = false
  solve = false
[]
[Executioner]
  type = Steady
[]
[Outputs]
  exodus = true
[]