25 #ifndef GRINS_STRESS_STRAIN_LAW_H 
   26 #define GRINS_STRESS_STRAIN_LAW_H 
   29 #include "libmesh/libmesh_common.h" 
   40   class ElasticityTensor;
 
   42   template <
typename Law>
 
   72   template <
typename Law>
 
   81     static_cast<Law*
>(
this)->compute_stress_imp(dim,g_contra,g_cov,G_contra,G_cov,stress);
 
   85   template <
typename Law>
 
   95     static_cast<Law*
>(
this)->compute_stress_and_elasticity_imp(dim,g_contra,g_cov,G_contra,G_cov,stress,C);
 
   99   template <
typename Law>
 
  106     return static_cast<Law*
>(
this)->compute_33_stress_imp( g_contra, g_cov, G_contra, G_cov );
 
  111 #endif //GRINS_STRESS_STRAIN_LAW_H 
void compute_stress(unsigned int dim, const libMesh::TensorValue< libMesh::Real > &g_contra, const libMesh::TensorValue< libMesh::Real > &g_cov, const libMesh::TensorValue< libMesh::Real > &G_contra, const libMesh::TensorValue< libMesh::Real > &G_cov, libMesh::TensorValue< libMesh::Real > &stress)
 
void compute_stress_and_elasticity(unsigned int dim, const libMesh::TensorValue< libMesh::Real > &g_contra, const libMesh::TensorValue< libMesh::Real > &g_cov, const libMesh::TensorValue< libMesh::Real > &G_contra, const libMesh::TensorValue< libMesh::Real > &G_cov, libMesh::TensorValue< libMesh::Real > &stress, ElasticityTensor &C)
 
libMesh::Real compute_33_stress(const libMesh::TensorValue< libMesh::Real > &g_contra, const libMesh::TensorValue< libMesh::Real > &g_cov, const libMesh::TensorValue< libMesh::Real > &G_contra, const libMesh::TensorValue< libMesh::Real > &G_cov)
This is primarily a helper function for the plane stress cases. 
 
virtual ~StressStrainLaw()