41 { orientedOption::UNKNOWN,
"unknown" },
42 { orientedOption::ORIENTED,
"oriented" },
43 { orientedOption::UNORIENTED,
"unoriented" },
51 const orientedType& a,
58 || (a.
oriented() == orientedOption::UNKNOWN)
59 || (
b.oriented() == orientedOption::UNKNOWN)
80 || (a.
oriented() == orientedType::orientedOption::UNKNOWN)
81 || (
b.oriented() == orientedType::orientedOption::UNKNOWN)
87 << what <<
" : undefined for " 103 oriented_(orientedOptionNames.
read(is))
117 orientedOption::UNKNOWN,
125 const bool output = (oriented_ == ORIENTED);
129 os.
writeEntry(
"oriented", orientedOptionNames[oriented_]);
141 if (oriented_ == UNKNOWN)
153 if (oriented_ == orientedOption::UNKNOWN)
155 oriented_ = ot.oriented();
213 const orientedType& ot1,
214 const orientedType& ot2
223 const orientedType& ot1,
369 const orientedType& ot1,
370 const orientedType& ot2
381 const orientedType& ot1,
382 const orientedType& ot2
385 (void)
checkTypes(
"Function hypot", ot1, ot2);
423 const orientedType& ot1,
424 const orientedType& ot2
429 return orientedType(ot1.is_oriented() || ot2.is_oriented());
441 const orientedType& ot1,
442 const orientedType& ot2
447 return orientedType(ot1.is_oriented() || ot2.is_oriented());
465 const orientedType& ot1,
466 const orientedType& ot2
475 const orientedType& ot1,
476 const orientedType& ot2
485 const orientedType& ot1,
486 const orientedType& ot2
489 return orientedType(ot1.is_oriented() != ot2.is_oriented());
495 const orientedType& ot1,
496 const orientedType& ot2
505 const orientedType& ot1,
506 const orientedType& ot2
509 return orientedType(
false);
constexpr orientedType() noexcept
Default construct as UNKNOWN.
dimensionedScalar sign(const dimensionedScalar &ds)
EnumType read(Istream &is) const
Read a word from Istream and return the corresponding enumeration.
tmp< DimensionedField< typename DimensionedField< Type, GeoMesh >::cmptType, GeoMesh >> cmptAv(const DimensionedField< Type, GeoMesh > &f1)
dimensioned< typename typeOfMag< Type >::type > mag(const dimensioned< Type > &dt)
orientedOption
Enumeration defining oriented flags.
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
A list of keyword definitions, which are a keyword followed by a number of values (eg...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
virtual bool check(const char *operation) const
Check IOstream status for given operation.
label max(const labelHashSet &set, label maxValue=labelMin)
Find the max value in labelHashSet, optionally limited by second argument.
dimensionedSymmTensor sqr(const dimensionedVector &dv)
dimensionedSphericalTensor inv(const dimensionedSphericalTensor &dt)
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
dimensionedScalar sqrt(const dimensionedScalar &ds)
dimensionedScalar pow025(const dimensionedScalar &ds)
dimensionedScalar operator/(const scalar s1, const dimensionedScalar &ds2)
static const Enum< orientedOption > orientedOptionNames
Named enumerations for oriented flags.
Ostream & writeEntry(const keyType &key, const T &value)
Write a keyword/value entry.
Class to determine the 'oriented' status of surface fields.
bool writeEntry(Ostream &os) const
Write the "oriented" flag entry (if ORIENTED)
dimensionedScalar posPart(const dimensionedScalar &ds)
dimensionedScalar neg(const dimensionedScalar &ds)
dimensionedScalar pow5(const dimensionedScalar &ds)
EnumType getOrDefault(const word &key, const dictionary &dict, const EnumType deflt, const bool warnOnly=false) const
Find the key in the dictionary and return the corresponding enumeration element based on its name...
dimensioned< Type > cmptDivide(const dimensioned< Type > &, const dimensioned< Type > &)
bool is_oriented() const noexcept
True if ORIENTED.
dimensionedScalar pos(const dimensionedScalar &ds)
void operator+=(const orientedType &ot)
tmp< faMatrix< Type > > operator*(const areaScalarField::Internal &, const faMatrix< Type > &)
const dimensionedScalar b
Wien displacement law constant: default SI units: [m.K].
Istream & operator>>(Istream &, directionInfo &)
dimensionedScalar cbrt(const dimensionedScalar &ds)
dimensionedScalar neg0(const dimensionedScalar &ds)
static bool checkTypes(const char *what, const orientedType &a, const orientedType &b)
static bool checkType(const orientedType &a, const orientedType &b) noexcept
True if can operate on this combination of oriented types.
label min(const labelHashSet &set, label minValue=labelMax)
Find the min value in labelHashSet, optionally limited by second argument.
dimensionSet pow2(const dimensionSet &ds)
errorManip< error > abort(error &err)
tmp< faMatrix< Type > > operator-(const faMatrix< Type > &)
Unary negation.
dimensioned< Type > cmptMultiply(const dimensioned< Type > &, const dimensioned< Type > &)
An Ostream is an abstract base class for all output systems (streams, files, token lists...
dimensionedScalar pos0(const dimensionedScalar &ds)
dimensionedScalar atan2(const dimensionedScalar &x, const dimensionedScalar &y)
orientedOption oriented() const noexcept
Return the oriented flag.
OBJstream os(runTime.globalPath()/outputName)
dimensioned< Type > lerp(const dimensioned< Type > &a, const dimensioned< Type > &b, const scalar t)
dimensionSet trans(const dimensionSet &ds)
Check the argument is dimensionless (for transcendental functions)
dimensionedScalar pow(const dimensionedScalar &ds, const dimensionedScalar &expt)
Ostream & operator<<(Ostream &, const boundaryPatch &p)
Write boundaryPatch as dictionary entries (without surrounding braces)
void read(const dictionary &dict)
Read the "oriented" state from dictionary.
dimensionedScalar pow3(const dimensionedScalar &ds)
Enum is a wrapper around a list of names/values that represent particular enumeration (or int) values...
dimensionedScalar pow4(const dimensionedScalar &ds)
dimensionedScalar pow6(const dimensionedScalar &ds)
static Ostream & output(Ostream &os, const IntRange< T > &range)
void operator/=(const orientedType &ot)
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))
dimensionSet transform(const dimensionSet &ds)
Return the argument; transformations do not change the dimensions.
dimensionedScalar hypot(const dimensionedScalar &x, const dimensionedScalar &y)
void operator*=(const orientedType &ot)
void operator-=(const orientedType &ot)
dimensioned< typename typeOfMag< Type >::type > magSqr(const dimensioned< Type > &dt)
dimensionedScalar negPart(const dimensionedScalar &ds)