21 #ifndef RFFGEN_MOONEY_RIVLIN_HH 
   22 #define RFFGEN_MOONEY_RIVLIN_HH 
   26 #include "../../identity.hh" 
   27 #include "../../LinearAlgebra/strainTensor.hh" 
   28 #include "../../LinearAlgebra/unitMatrix.hh" 
   29 #include "../../LinearAlgebra/principalInvariants.hh" 
   30 #include "../../generate.hh" 
   44   template < 
class Matrix , 
int offset = LinearAlgebra::dimension<Matrix>() >
 
   47     using namespace LinearAlgebra;
 
   48     using I1 = ShiftedFirstPrincipalInvariant<Matrix,offset>;
 
   49     using I2 = ShiftedSecondPrincipalInvariant<Matrix,offset>;
 
   51     return ( c0*I1() + c1*I2() ) << LeftCauchyGreenStrainTensor<Matrix>(F); 
 
   60   template <
class InflationPenalty, 
class CompressionPenalty, 
class Matrix , 
int offset = LinearAlgebra::dimension<Matrix>() >
 
   63     using namespace LinearAlgebra;
 
   64     using I1 = ShiftedFirstPrincipalInvariant<Matrix,offset>;
 
   65     using I2 = ShiftedSecondPrincipalInvariant<Matrix,offset>;
 
   67     return ( ( c0*I1() + c1*I2() ) << LeftCauchyGreenStrainTensor<Matrix>(F) ) + volumetricPenalty<InflationPenalty,CompressionPenalty>(d0,d1,F);                 
 
  131 #endif // RFFGEN_MOONEY_RIVLIN_HH 
auto compressibleMooneyRivlin(double c0, double c1, double d0, double d1, const Matrix &F)
Generate a compressible Mooney-Rivlin material law , where  is the first and  the second principal ma...
Definition: mooneyRivlin.hh:61
auto incompressibleMooneyRivlin(double c0, double c1, const Matrix &F)
Generate an "incompressible" Mooney-Rivlin material law , where  is the first and  the second princip...
Definition: mooneyRivlin.hh:45