39 #ifndef dimensionSet_H
40 #define dimensionSet_H
56 template<
class Type>
class dimensioned;
61 dimensionSet
max(
const dimensionSet&,
const dimensionSet&);
62 dimensionSet
min(
const dimensionSet&,
const dimensionSet&);
63 dimensionSet
cmptMultiply(
const dimensionSet&,
const dimensionSet&);
64 dimensionSet
cmptDivide(
const dimensionSet&,
const dimensionSet&);
65 dimensionSet
cmptMag(
const dimensionSet&);
67 dimensionSet
pow(
const dimensionSet&,
const scalar);
71 dimensionSet
sqr(
const dimensionSet&);
72 dimensionSet
pow3(
const dimensionSet&);
73 dimensionSet
pow4(
const dimensionSet&);
74 dimensionSet
pow5(
const dimensionSet&);
75 dimensionSet
pow6(
const dimensionSet&);
76 dimensionSet
pow025(
const dimensionSet&);
78 dimensionSet
sqrt(
const dimensionSet&);
79 dimensionSet
cbrt(
const dimensionSet&);
80 dimensionSet
magSqr(
const dimensionSet&);
81 dimensionSet
mag(
const dimensionSet&);
82 dimensionSet
sign(
const dimensionSet&);
83 dimensionSet
pos(
const dimensionSet&);
84 dimensionSet
pos0(
const dimensionSet&);
85 dimensionSet
neg(
const dimensionSet&);
86 dimensionSet
neg0(
const dimensionSet&);
87 dimensionSet
posPart(
const dimensionSet&);
88 dimensionSet
negPart(
const dimensionSet&);
89 dimensionSet
inv(
const dimensionSet&);
93 dimensionSet
trans(
const dimensionSet&);
95 dimensionSet
atan2(
const dimensionSet&,
const dimensionSet&);
98 dimensionSet
transform(
const dimensionSet&);
105 dimensionSet
operator-(
const dimensionSet&);
106 dimensionSet
operator+(
const dimensionSet&,
const dimensionSet&);
107 dimensionSet
operator-(
const dimensionSet&,
const dimensionSet&);
108 dimensionSet
operator*(
const dimensionSet&,
const dimensionSet&);
109 dimensionSet
operator/(
const dimensionSet&,
const dimensionSet&);
110 dimensionSet
operator&(
const dimensionSet&,
const dimensionSet&);
111 dimensionSet
operator^(
const dimensionSet&,
const dimensionSet&);
112 dimensionSet
operator&&(
const dimensionSet&,
const dimensionSet&);
117 Ostream&
operator<<(Ostream&,
const dimensionSet&);
118 Ostream&
operator<<(Ostream&,
const InfoProxy<dimensionSet>&);
172 void round(
const scalar tol);
270 template<
class ... Args>
275 template<
class ... Args>
290 template<
class ... Args>
A helper class for outputting values to Ostream.
An Istream is an abstract base class for all input systems (streams, files, token lists etc)....
An Ostream is an abstract base class for all output systems (streams, files, token lists,...
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
Dimension set for the base types.
friend dimensionSet pow5(const dimensionSet &)
friend dimensionSet operator-(const dimensionSet &)
bool operator+=(const dimensionSet &) const
friend dimensionSet pow(const dimensionSet &, const dimensionedScalar &)
InfoProxy< dimensionSet > info() const
Return info proxy.
bool operator==(const dimensionSet &) const
Ostream & writeInfoNoBeginOrEnd(Ostream &os) const
Write info without the square brackets.
friend dimensionSet transform(const dimensionSet &)
friend dimensionSet min(const dimensionSet &, const dimensionSet &)
bool operator!=(const dimensionSet &) const
dimensionSet(const scalar mass, const scalar length, const scalar time, const scalar temperature, const scalar moles, const scalar current, const scalar luminousIntensity)
Construct given individual dimension exponents for all.
friend dimensionSet magSqr(const dimensionSet &)
friend dimensionSet pos0(const dimensionSet &)
friend dimensionSet neg(const dimensionSet &)
friend dimensionSet sqr(const dimensionSet &)
friend dimensionSet pow025(const dimensionSet &)
friend dimensionSet atan2(const dimensionSet &, const dimensionSet &)
friend dimensionSet sqrt(const dimensionSet &)
Ostream & writeNoBeginOrEnd(Ostream &os) const
Write without the square brackets.
ClassName("dimensionSet")
bool operator/=(const dimensionSet &)
friend dimensionSet cmptMag(const dimensionSet &)
Ostream & write(Ostream &os) const
Write.
friend Istream & operator>>(Istream &, dimensionSet &)
friend Ostream & operator<<(Ostream &, const dimensionSet &)
friend Ostream & operator<<(Ostream &, const InfoProxy< dimensionSet > &)
friend dimensionSet cmptMultiply(const dimensionSet &, const dimensionSet &)
bool operator-=(const dimensionSet &) const
friend dimensionSet pow4(const dimensionSet &)
scalar operator[](const dimensionType) const
friend dimensionSet mag(const dimensionSet &)
void reset(const dimensionSet &)
static const scalar smallExponent
A small exponent with which to perform inexact comparisons.
friend dimensionSet pow3(const dimensionSet &)
friend dimensionSet sign(const dimensionSet &)
friend dimensionSet pow6(const dimensionSet &)
Istream & readNoBeginOrEnd(Istream &is)
Read without the square brackets.
bool dimensionless() const
Return true if it is dimensionless.
friend dimensionSet normalised(const dimensionSet &)
autoPtr< dimensionSet > clone() const
Construct and return a clone.
typename typeOfNcmpts< sizeof ...(Args)>::type typeForArgs
friend dimensionSet pow(const dimensionSet &, const scalar)
dimensionType
Define an enumeration for the names of the dimension exponents.
bool operator*=(const dimensionSet &)
friend dimensionSet trans(const dimensionSet &)
Function to check the argument is dimensionless.
friend dimensionSet cmptDivide(const dimensionSet &, const dimensionSet &)
friend dimensionSet inv(const dimensionSet &)
friend dimensionSet perpendicular(const dimensionSet &)
friend dimensionSet pow(const dimensionedScalar &, const dimensionSet &)
friend dimensionSet max(const dimensionSet &, const dimensionSet &)
bool operator=(const dimensionSet &) const
Istream & read(Istream &is)
Read.
static const NamedEnum< dimensionType, 7 > & dimensionTypeNames_
Names of the dimensions.
Generic dimensioned Type class.
A class for handling words, derived from string.
Macro definitions for declaring ClassName(), NamespaceName(), etc.
Include the header files for all the primitive types that Fields are instantiated for.
const dimensionSet current
const dimensionSet temperature
const dimensionSet luminousIntensity
const dimensionSet length
dimensionedScalar pos(const dimensionedScalar &ds)
Istream & operator>>(Istream &, pointEdgeDist &)
dimensionedScalar pos0(const dimensionedScalar &ds)
dimensionedScalar sign(const dimensionedScalar &ds)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
void transform(GeometricField< Type, GeoMesh > &rtf, const GeometricField< tensor, GeoMesh > &trf, const GeometricField< Type, GeoMesh > &tf)
tmp< DimensionedField< Type, GeoMesh, Field > > cmptMultiply(const DimensionedField< Type, GeoMesh, PrimitiveField1 > &df1, const DimensionedField< Type, GeoMesh, PrimitiveField2 > &df2)
void pow025(LagrangianPatchField< scalar > &f, const LagrangianPatchField< scalar > &f1)
tmp< DimensionedField< Type, GeoMesh, Field > > operator/(const DimensionedField< Type, GeoMesh, PrimitiveField1 > &df1, const DimensionedField< scalar, GeoMesh, PrimitiveField2 > &df2)
tmp< DimensionedField< typename typeOfSum< Type1, Type2 >::type, GeoMesh, Field > > operator+(const DimensionedField< Type1, GeoMesh, PrimitiveField1 > &df1, const DimensionedField< Type2, GeoMesh, PrimitiveField2 > &df2)
tmp< DimensionedField< Type, GeoMesh, Field > > operator*(const DimensionedField< Type, GeoMesh, PrimitiveField1 > &df1, const DimensionedField< scalar, GeoMesh, PrimitiveField2 > &df2)
void pow4(LagrangianPatchField< scalar > &f, const LagrangianPatchField< scalar > &f1)
void pow6(LagrangianPatchField< scalar > &f, const LagrangianPatchField< scalar > &f1)
tmp< DimensionedField< typename outerProduct< Type, Type >::type, GeoMesh, Field >> sqr(const DimensionedField< Type, GeoMesh, PrimitiveField > &df)
dimensionedScalar negPart(const dimensionedScalar &ds)
tmp< DimensionedField< Type, GeoMesh, Field > > cmptDivide(const DimensionedField< Type, GeoMesh, PrimitiveField1 > &df1, const DimensionedField< Type, GeoMesh, PrimitiveField2 > &df2)
tmp< DimensionedField< Type, GeoMesh, Field > > operator-(const DimensionedField< Type, GeoMesh, PrimitiveField > &df1)
void inv(pointPatchField< tensor > &, const pointPatchField< tensor > &)
void pow5(LagrangianPatchField< scalar > &f, const LagrangianPatchField< scalar > &f1)
dimensionSet normalised(const dimensionSet &)
tmp< DimensionedField< typename scalarProduct< Type1, Type2 >::type, GeoMesh, Field > > operator&&(const DimensionedField< Type1, GeoMesh, PrimitiveField1 > &df1, const DimensionedField< Type2, GeoMesh, PrimitiveField2 > &df2)
dimensioned< Type > min(const DimensionedField< Type, GeoMesh, PrimitiveField > &df)
void pow3(LagrangianPatchField< scalar > &f, const LagrangianPatchField< scalar > &f1)
dimensionedScalar neg(const dimensionedScalar &ds)
void cbrt(LagrangianPatchField< scalar > &f, const LagrangianPatchField< scalar > &f1)
word name(const LagrangianState state)
Return a string representation of a Lagrangian state enumeration.
tmp< DimensionedField< typename crossProduct< Type1, Type2 >::type, GeoMesh, Field > > operator^(const DimensionedField< Type1, GeoMesh, PrimitiveField1 > &df1, const DimensionedField< Type2, GeoMesh, PrimitiveField2 > &df2)
tmp< DimensionedField< typename powProduct< Type, r >::type, GeoMesh, Field > > pow(const DimensionedField< Type, GeoMesh, PrimitiveField > &df, typename powProduct< Type, r >::type)
tmp< DimensionedField< scalar, GeoMesh, Field > > mag(const DimensionedField< Type, GeoMesh, PrimitiveField > &df)
tmp< DimensionedField< scalar, GeoMesh, Field > > atan2(const DimensionedField< scalar, GeoMesh, PrimitiveField1 > &dsf1, const DimensionedField< scalar, GeoMesh, PrimitiveField2 > &dsf2)
Ostream & operator<<(Ostream &os, const fvConstraints &constraints)
dimensionedScalar neg0(const dimensionedScalar &ds)
tmp< DimensionedField< Type, GeoMesh, Field > > cmptMag(const DimensionedField< Type, GeoMesh, PrimitiveField > &df)
dimensionSet perpendicular(const dimensionSet &)
void sqrt(LagrangianPatchField< scalar > &f, const LagrangianPatchField< scalar > &f1)
tmp< DimensionedField< scalar, GeoMesh, Field > > magSqr(const DimensionedField< Type, GeoMesh, PrimitiveField > &df)
dimensionSet trans(const dimensionSet &)
void writeEntry(Ostream &os, const word &key, const DimensionedFieldFunction< DimensionedFieldType > &f)
tmp< DimensionedField< typename innerProduct< Type1, Type2 >::type, GeoMesh, Field > > operator&(const DimensionedField< Type1, GeoMesh, PrimitiveField1 > &df1, const DimensionedField< Type2, GeoMesh, PrimitiveField2 > &df2)
dimensionedScalar posPart(const dimensionedScalar &ds)
dimensioned< Type > max(const DimensionedField< Type, GeoMesh, PrimitiveField > &df)
dimensioned< scalar > dimensionedScalar
Dimensioned scalar obtained from generic dimensioned type.
fileType type(const fileName &, const bool checkVariants=true, const bool followLink=true)
Return the file type: directory or file.
Foam::argList args(argc, argv)