if(divDSigmaExpMethod == "standard")
{
divDSigmaExp = fvc::div
(
(mu*gradDU.T())
+ (lambda*(I*tr(gradDU)))
- ((mu + lambda)*gradDU),
"div(sigma)"
);
}
else if(divDSigmaExpMethod == "surface")
mesh.magSf()*
muf*(n & fvc::interpolate(gradDU.T()))
+ lambdaf*tr(fvc::interpolate(gradDU))*n
- (muf + lambdaf)*(n & fvc::interpolate(gradDU))
)
// divDSigmaExp = fvc::div
// (
// muf*(mesh.Sf() & fvc::interpolate(gradDU.T()))
// + lambdaf*(mesh.Sf() & I*fvc::interpolate(tr(gradDU)))
// - (muf + lambdaf)*(mesh.Sf() & fvc::interpolate(gradDU))
// );
else if(divDSigmaExpMethod == "decompose")
surfaceTensorField shearGradDU((I - n*n) & fvc::interpolate(gradDU));
- (muf + lambdaf)*(fvc::snGrad(DU) & (I - n*n))
+ lambdaf*tr(shearGradDU & (I - n*n))*n
+ muf*(shearGradDU & n)
// mesh.magSf()
// *(
// - (muf + lambdaf)*(fvc::snGrad(DU)&(I - n*n))
// + lambdaf*tr(shearGradDU&(I - n*n))*n
// + muf*(shearGradDU&n)
// )
else if(divDSigmaExpMethod == "laplacian")
divDSigmaExp =
- fvc::laplacian(mu + lambda, DU, "laplacian(DDU,DU)")
+ fvc::div
mu*gradDU.T()
+ lambda*(I*tr(gradDU)),
else
FatalErrorIn(args.executable())
<< "divDSigmaExp method " << divDSigmaExpMethod << " not found!"
<< abort(FatalError);