www.mooseframework.org
ComputeElasticityTensorBase.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
13 #include "Material.h"
14 #include "RankFourTensor.h"
16 #include "GuaranteeProvider.h"
17 
21 template <bool is_ad, typename T = RankFourTensor>
23  public GuaranteeProvider
24 {
25 public:
27 
29 
30 protected:
31  virtual void computeQpProperties();
32  virtual void computeQpElasticityTensor() = 0;
33 
35  const std::string _base_name;
36 
38 
41 
44 };
45 
ComputeElasticityTensorBase the base class for computing elasticity tensors.
Add-on class that provides the functionality to issue guarantees for declared material properties...
GenericMaterialProperty< T, is_ad > & _elasticity_tensor
GenericMaterialProperty< Real, is_ad > & _effective_stiffness
ComputeElasticityTensorBaseTempl< true > ADComputeElasticityTensorBase
virtual void computeQpElasticityTensor()=0
const Function *const _prefactor_function
prefactor function to multiply the elasticity tensor with
ComputeElasticityTensorBaseTempl(const InputParameters &parameters)
typename GenericMaterialPropertyStruct< T, is_ad >::type GenericMaterialProperty
const InputParameters & parameters() const
ComputeElasticityTensorBaseTempl< false > ComputeElasticityTensorBase
const std::string _base_name
Base name of the material system.