21 #ifndef RFFGEN_EXAMPLES_SKIN_HENDRIKS_HH
22 #define RFFGEN_EXAMPLES_SKIN_HENDRIKS_HH
24 #include "../../LinearAlgebra/strainTensor.hh"
25 #include "../../LinearAlgebra/unitMatrix.hh"
26 #include "../../LinearAlgebra/principalInvariants.hh"
27 #include "../../generate.hh"
48 template <
class Matrix ,
int offset = LinearAlgebra::dimension<Matrix>()>
51 using namespace LinearAlgebra;
52 auto i1 = ShiftedFirstPrincipalInvariant<Matrix,offset>();
53 auto i2 = ShiftedSecondPrincipalInvariant<Matrix,offset>();
55 auto S = LeftCauchyGreenStrainTensor<Matrix>(F);
56 return ( c0*i1 + c1*i1*i2 ) << S;
72 template <
class Matrix ,
int offset = LinearAlgebra::dimension<Matrix>()>
75 return incompressibleSkin_Hendriks<Matrix,offset>(9.4,82.,F);
92 template <
class InflationPenalty,
class CompressionPenalty,
class Matrix,
int offset = LinearAlgebra::dimension<Matrix>()>
95 return incompressibleSkin_Hendriks<Matrix,offset>(c0,c1,F) + volumetricPenalty<InflationPenalty,CompressionPenalty>(d0,d1,F);
112 template <
class InflationPenalty ,
class CompressionPenalty ,
class Matrix ,
int offset = LinearAlgebra::dimension<Matrix>() >
115 return compressibleSkin_Hendriks<InflationPenalty,CompressionPenalty,Matrix,offset>(9.4,82.,d0,d1,F);
119 #endif // RFFGEN_EXAMPLES_SKIN_HENDRIKS_HH
auto compressibleSkin_Hendriks(double c0, double c1, double d0, double d1, const Matrix &F)
Compressible version of the model for skin tissue of Hendriks: Mechanical behavior of human epidermal...
Definition: skinTissue_Hendriks.hh:93
auto incompressibleSkin_Hendriks(double c0, double c1, const Matrix &F)
Model for skin tissue of Hendriks: Mechanical behavior of human epidermal and dermal layers in vivo...
Definition: skinTissue_Hendriks.hh:49