34 lines
938 B
C
34 lines
938 B
C
|
//----------------------------------------------------//
|
||
|
//- sigma explicit large strain explicit terms
|
||
|
//----------------------------------------------------//
|
||
|
if(divDSigmaLargeStrainExpMethod == "standard")
|
||
|
{
|
||
|
divDSigmaLargeStrainExp =
|
||
|
fvc::div
|
||
|
(
|
||
|
mu*(gradDU & gradDU.T())
|
||
|
+ 0.5*lambda*(gradDU && gradDU)*I //- equivalent to 0.5*lambda*(I*tr(gradDU & gradDU.T()))
|
||
|
+ ((sigma + DSigma) & gradDU),
|
||
|
"div(sigma)"
|
||
|
);
|
||
|
}
|
||
|
else if(divDSigmaLargeStrainExpMethod == "surface")
|
||
|
{
|
||
|
divDSigmaLargeStrainExp =
|
||
|
fvc::div
|
||
|
(
|
||
|
muf * (mesh.Sf() & fvc::interpolate(gradDU & gradDU.T()))
|
||
|
+ 0.5*lambdaf * (mesh.Sf() & (fvc::interpolate(gradDU && gradDU)*I))
|
||
|
+ (mesh.Sf() & fvc::interpolate( (sigma + DSigma) & gradDU ))
|
||
|
);
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
FatalError
|
||
|
<< "divDSigmaLargeStrainMethod not found!"
|
||
|
<< exit(FatalError);
|
||
|
}
|
||
|
|
||
|
//- relax
|
||
|
divDSigmaLargeStrainExp.relax();
|