FreeFOAM The Cross-Platform CFD Toolkit
Hosted by SourceForge:
Get FreeFOAM at SourceForge.net.
            Fast, secure and Free Open Source software downloads

Dimension set for the base types. This type may be used to implement rigorous dimension checking for algebraic manipulation. More...

#include <OpenFOAM/dimensionSet.H>


Detailed Description

Dimension set for the base types. This type may be used to implement rigorous dimension checking for algebraic manipulation.

Source files

Definition at line 109 of file dimensionSet.H.

List of all members.

Public Types

enum  { nDimensions = 7 }
enum  dimensionType {
  MASS, LENGTH, TIME, TEMPERATURE,
  MOLES, CURRENT, LUMINOUS_INTENSITY
}
 

Define an enumeration for the names of the dimension exponents.

More...

Public Member Functions

 ClassName ("dimensionSet")
 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.
 dimensionSet (const scalar mass, const scalar length, const scalar time, const scalar temperature, const scalar moles)
 Construct given individual dimension exponents for first.
 dimensionSet (Istream &)
 Construct from Istream.
bool  dimensionless () const
void  reset (const dimensionSet &)
scalar  operator[] (const dimensionType) const
scalar &  operator[] (const dimensionType)
bool  operator== (const dimensionSet &) const
bool  operator!= (const dimensionSet &) const
bool  operator= (const dimensionSet &) const
bool  operator+= (const dimensionSet &) const
bool  operator-= (const dimensionSet &) const
bool  operator*= (const dimensionSet &)
bool  operator/= (const dimensionSet &)

Static Public Attributes

static const scalar  smallExponent = SMALL

Friends

dimensionSet  max (const dimensionSet &, const dimensionSet &)
dimensionSet  min (const dimensionSet &, const dimensionSet &)
dimensionSet  cmptMultiply (const dimensionSet &, const dimensionSet &)
dimensionSet  cmptDivide (const dimensionSet &, const dimensionSet &)
dimensionSet  pow (const dimensionSet &, const scalar)
dimensionSet  pow (const dimensionSet &, const dimensionedScalar &)
dimensionSet  pow (const dimensionedScalar &, const dimensionSet &)
dimensionSet  sqr (const dimensionSet &)
dimensionSet  pow3 (const dimensionSet &)
dimensionSet  pow4 (const dimensionSet &)
dimensionSet  pow5 (const dimensionSet &)
dimensionSet  pow6 (const dimensionSet &)
dimensionSet  sqrt (const dimensionSet &)
dimensionSet  magSqr (const dimensionSet &)
dimensionSet  mag (const dimensionSet &)
dimensionSet  sign (const dimensionSet &)
dimensionSet  pos (const dimensionSet &)
dimensionSet  neg (const dimensionSet &)
dimensionSet  inv (const dimensionSet &)
dimensionSet  trans (const dimensionSet &)
 Function to check the argument is dimensionless.
dimensionSet  transform (const dimensionSet &)
 Return the argument; transformations do not change the dimensions.
dimensionSet  operator- (const dimensionSet &)
dimensionSet  operator+ (const dimensionSet &, const dimensionSet &)
dimensionSet  operator- (const dimensionSet &, const dimensionSet &)
dimensionSet  operator* (const dimensionSet &, const dimensionSet &)
dimensionSet  operator/ (const dimensionSet &, const dimensionSet &)
dimensionSet  operator& (const dimensionSet &, const dimensionSet &)
dimensionSet  operator^ (const dimensionSet &, const dimensionSet &)
dimensionSet  operator&& (const dimensionSet &, const dimensionSet &)
Istream &  operator>> (Istream &, dimensionSet &)
Ostream &  operator<< (Ostream &, const dimensionSet &)

Member Enumeration Documentation

anonymous enum
Enumerator:
nDimensions 

Definition at line 116 of file dimensionSet.H.

Define an enumeration for the names of the dimension exponents.

Enumerator:
MASS 
LENGTH 
TIME 
TEMPERATURE 
MOLES 
CURRENT 
LUMINOUS_INTENSITY 

Definition at line 122 of file dimensionSet.H.


Constructor & Destructor Documentation

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.

seven dimensions

Definition at line 38 of file dimensionSet.C.

dimensionSet ( const scalar   mass,
const scalar   length,
const scalar   time,
const scalar   temperature,
const scalar   moles  
)

Construct given individual dimension exponents for first.

five dimensions

Definition at line 59 of file dimensionSet.C.

dimensionSet ( Istream &   is  )

Construct from Istream.

Definition at line 31 of file dimensionSetIO.C.


Member Function Documentation

ClassName ( "dimensionSet"    )
bool dimensionless (  ) const

Definition at line 79 of file dimensionSet.C.

References dimensionSet::nDimensions, and dimensionSet::smallExponent.

Referenced by Foam::pow(), and Foam::trans().

Foam::scalar operator[] ( const dimensionType   type  ) const

Definition at line 107 of file dimensionSet.C.

References Foam::type().

Foam::scalar & operator[] ( const dimensionType   type  )

Definition at line 112 of file dimensionSet.C.

References Foam::type().

bool operator== ( const dimensionSet &   ds  ) const

Definition at line 118 of file dimensionSet.C.

References Foam::mag().

bool operator!= ( const dimensionSet &   ds  ) const

Definition at line 132 of file dimensionSet.C.

References Foam::operator==().

bool operator= ( const dimensionSet &   ds  ) const

Definition at line 138 of file dimensionSet.C.

References Foam::abort(), Foam::endl(), Foam::FatalError, and FatalErrorIn.

bool operator+= ( const dimensionSet &   ds  ) const

Definition at line 152 of file dimensionSet.C.

References Foam::abort(), Foam::endl(), Foam::FatalError, and FatalErrorIn.

bool operator-= ( const dimensionSet &   ds  ) const

Definition at line 165 of file dimensionSet.C.

References Foam::abort(), Foam::endl(), Foam::FatalError, and FatalErrorIn.

bool operator*= ( const dimensionSet &   ds  )

Definition at line 178 of file dimensionSet.C.

bool operator/= ( const dimensionSet &   ds  )

Definition at line 185 of file dimensionSet.C.


Friends And Related Function Documentation

dimensionSet max ( const dimensionSet &   ,
const dimensionSet &    
) [friend]
dimensionSet min ( const dimensionSet &   ,
const dimensionSet &    
) [friend]
dimensionSet cmptMultiply ( const dimensionSet &   ,
const dimensionSet &    
) [friend]
dimensionSet cmptDivide ( const dimensionSet &   ,
const dimensionSet &    
) [friend]
dimensionSet pow ( const dimensionSet &   ,
const   scalar  
) [friend]
dimensionSet pow ( const dimensionSet &   ,
const dimensionedScalar &    
) [friend]
dimensionSet pow ( const dimensionedScalar &   ,
const dimensionSet &    
) [friend]
dimensionSet sqr ( const dimensionSet &    ) [friend]
dimensionSet pow3 ( const dimensionSet &    ) [friend]
dimensionSet pow4 ( const dimensionSet &    ) [friend]
dimensionSet pow5 ( const dimensionSet &    ) [friend]
dimensionSet pow6 ( const dimensionSet &    ) [friend]
dimensionSet sqrt ( const dimensionSet &    ) [friend]
dimensionSet magSqr ( const dimensionSet &    ) [friend]
dimensionSet mag ( const dimensionSet &    ) [friend]
dimensionSet sign ( const dimensionSet &    ) [friend]
dimensionSet pos ( const dimensionSet &    ) [friend]
dimensionSet neg ( const dimensionSet &    ) [friend]
dimensionSet inv ( const dimensionSet &    ) [friend]
dimensionSet trans ( const dimensionSet &    ) [friend]

Function to check the argument is dimensionless.

for transcendental functions

dimensionSet transform ( const dimensionSet &    ) [friend]

Return the argument; transformations do not change the dimensions.

Referenced by septernion::transform().

dimensionSet operator- ( const dimensionSet &    ) [friend]
dimensionSet operator+ ( const dimensionSet &   ,
const dimensionSet &    
) [friend]
dimensionSet operator- ( const dimensionSet &   ,
const dimensionSet &    
) [friend]
dimensionSet operator* ( const dimensionSet &   ,
const dimensionSet &    
) [friend]
dimensionSet operator/ ( const dimensionSet &   ,
const dimensionSet &    
) [friend]
dimensionSet operator& ( const dimensionSet &   ,
const dimensionSet &    
) [friend]
dimensionSet operator^ ( const dimensionSet &   ,
const dimensionSet &    
) [friend]
dimensionSet operator&& ( const dimensionSet &   ,
const dimensionSet &    
) [friend]
Istream& operator>> ( Istream &   ,
dimensionSet &    
) [friend]
Ostream& operator<< ( Ostream &   ,
const dimensionSet &    
) [friend]

Member Data Documentation

const Foam::scalar smallExponent = SMALL [static]

Definition at line 136 of file dimensionSet.H.

Referenced by dimensionSet::dimensionless().


The documentation for this class was generated from the following files: