100 return st.
ii()*st.
ii();
106 inline SphericalTensor2D<Cmpt>
inv(
const SphericalTensor2D<Cmpt>& st)
109 if (
mag(st.ii()) < VSMALL)
112 <<
"SphericalTensor2D not invertible, determinant:" 113 <<
det(st) <<
" tensor:" << st <<
nl 126 inline SphericalTensor2D<Cmpt>
127 operator/(
const Cmpt
s,
const SphericalTensor2D<Cmpt>& st)
130 if (
mag(st.ii()) < VSMALL)
134 <<
" is not divisible due to a zero element in SphericalTensor2D:" 135 <<
"SphericalTensor2D = " << st
140 return SphericalTensor2D<Cmpt>(
s/st.ii());
146 inline SphericalTensor2D<Cmpt>
147 operator/(
const SphericalTensor2D<Cmpt>& st,
const Cmpt
s)
153 <<
"SphericalTensor2D = " << st
154 <<
" is not divisible due to a zero value in Cmpt:" 160 return SphericalTensor2D<Cmpt>(st.ii()/
s);
166 inline SphericalTensor2D<Cmpt>
169 const SphericalTensor2D<Cmpt>& st1,
170 const SphericalTensor2D<Cmpt>& st2
173 return SphericalTensor2D<Cmpt>(st1.ii()*st2.ii());
214 class outerProduct<Cmpt, SphericalTensor2D<Cmpt>>
SphericalTensor2D()=default
Default construct.
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
const Cmpt & y() const noexcept
Access to the vector y component.
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
const Cmpt & ii() const noexcept
dimensionedSphericalTensor inv(const dimensionedSphericalTensor &dt)
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
constexpr char nl
The newline '\n' character (0x0a)
dimensionedScalar operator/(const scalar s1, const dimensionedScalar &ds2)
typeOfRank< typename pTraits< arg1 >::cmptType, direction(pTraits< arg1 >::rank)+direction(pTraits< arg2 >::rank) >::type type
dimensionedScalar det(const dimensionedSphericalTensor &dt)
SphericalTensor< Cmpt > sph(const DiagTensor< Cmpt > &dt)
Return the spherical part of a DiagTensor as a SphericalTensor.
scalar diagSqr() const
The L2-norm squared of the diagonal.
dimensionedScalar tr(const dimensionedSphericalTensor &dt)
errorManip< error > abort(error &err)
const Cmpt & x() const noexcept
Access to the vector x component.
A templated (2 x 2) diagonal tensor of objects of <T>, effectively containing 1 element, derived from VectorSpace.
tmp< GeometricField< Type, faPatchField, areaMesh > > operator &(const faMatrix< Type > &, const DimensionedField< Type, areaMesh > &)
A class representing the concept of 0 (zero) that can be used to avoid manipulating objects known to ...
gmvFile<< "tracers "<< particles.size()<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().x()<< " ";}gmvFile<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().y()<< " ";}gmvFile<< nl;for(const passiveParticle &p :particles){ gmvFile<< p.position().z()<< " ";}gmvFile<< nl;forAll(lagrangianScalarNames, i){ word name=lagrangianScalarNames[i];IOField< scalar > s(IOobject(name, runTime.timeName(), cloud::prefix, mesh, IOobject::MUST_READ, IOobject::NO_WRITE))
Templated 2D Vector derived from VectorSpace adding construction from 2 components, element access using x() and y() member functions and the inner-product (dot-product).
typeOfRank< typename pTraits< arg1 >::cmptType, direction(pTraits< arg1 >::rank)+direction(pTraits< arg2 >::rank) - 2 >::type type
dimensioned< typename typeOfMag< Type >::type > magSqr(const dimensioned< Type > &dt)
static constexpr const zero Zero
Global zero (0)