Loading...
Searching...
No Matches
Identity< Cmpt > Class Template Reference

Templated identity and dual space identity tensors derived from SphericalTensor. More...

#include <Identity.H>

Inheritance diagram for Identity< Cmpt >:
Collaboration diagram for Identity< Cmpt >:

Classes

class  dual
 The identity type in the dual space. More...

Public Member Functions

 Identity ()
 Construct initializing the SphericalTensor to 1.
dual operator* ()
 Return the identity in the dual space.
 operator label () const noexcept
 Return 1 for label.
 operator scalar () const noexcept
 Return 1 for scalar.
Public Member Functions inherited from SphericalTensor< Cmpt >
 SphericalTensor ()=default
 Default construct.
 SphericalTensor (const SphericalTensor &)=default
 Copy construct.
SphericalTensoroperator= (const SphericalTensor &)=default
 Copy assignment.
 SphericalTensor (Foam::zero)
 Construct initialized to zero.
template<class Cmpt2>
 SphericalTensor (const VectorSpace< SphericalTensor< Cmpt2 >, Cmpt2, 1 > &)
 Construct given VectorSpace.
 SphericalTensor (const Cmpt &tii)
 Construct given the component.
 SphericalTensor (Istream &is)
 Construct from Istream.
const Cmpt & ii () const noexcept
Cmpt & ii () noexcept
scalar diagSqr () const
 The L2-norm squared of the diagonal.
const SphericalTensor< Cmpt > & T () const noexcept
 Return non-Hermitian transpose (no-op).
Public Member Functions inherited from VectorSpace< SphericalTensor< Cmpt >, Cmpt, 1 >
const Foam::VectorSpace< SphericalTensor< Cmpt >, Cmpt, Ncmpts >::template ConstBlock< SubVector, BStart > block () const
 VectorSpace ()=default
 Default construct.
const Cmpt & component (const direction) const
void replace (const direction, const Cmpt &)
const Cmpt * cdata () const noexcept
 Return const pointer to the first data element.
Cmpt * data () noexcept
 Return pointer to the first data element.
void fill (const Cmpt &s)
 Assign all components to given value.
const Cmpt & operator[] (const direction) const
void operator= (const VectorSpace< SphericalTensor< Cmpt >, Cmpt, Ncmpts > &)
void operator+= (const VectorSpace< SphericalTensor< Cmpt >, Cmpt, Ncmpts > &)
void operator-= (const VectorSpace< SphericalTensor< Cmpt >, Cmpt, Ncmpts > &)
void operator*= (const scalar)
void operator/= (const scalar)
iterator begin () noexcept
 Return an iterator (pointer) to begin of VectorSpace.
const_iterator cbegin () const noexcept
 Return const_iterator (const pointer) to begin of VectorSpace.
iterator end () noexcept
 Return an iterator (pointer) to end of VectorSpace.
const_iterator cend () const noexcept
 Return const_iterator (const pointer) to end of VectorSpace.

Additional Inherited Members

Public Types inherited from SphericalTensor< Cmpt >
enum  components { II }
 Component labeling enumeration. More...
typedef SphericalTensor< label > labelType
 Equivalent type of labels used for valid component indexing.
Public Types inherited from VectorSpace< SphericalTensor< Cmpt >, Cmpt, 1 >
typedef VectorSpace< SphericalTensor< Cmpt >, Cmpt, Ncmpts > vsType
 VectorSpace type.
typedef Cmpt cmptType
 Component type.
typedef Cmpt magType
 Magnitude type.
typedef direction size_type
 The type to represent the size of a VectorSpace.
typedef Cmpt * iterator
 Random access iterator for traversing VectorSpace.
typedef const Cmpt * const_iterator
 Random access iterator for traversing VectorSpace.
Static Public Member Functions inherited from VectorSpace< SphericalTensor< Cmpt >, Cmpt, 1 >
static constexpr direction size () noexcept
 The number of elements in the VectorSpace = Ncmpts.
static SphericalTensor< Cmpt > uniform (const Cmpt &s)
 Return a VectorSpace with all elements = s.
Public Attributes inherited from VectorSpace< SphericalTensor< Cmpt >, Cmpt, 1 >
Cmpt v_ [Ncmpts]
 The components of this vector space.
Static Public Attributes inherited from SphericalTensor< Cmpt >
static constexpr direction rank = 2
 Rank of SphericalTensor is 2.
static const SphericalTensor I
static const SphericalTensor oneThirdI
static const SphericalTensor twoThirdsI
Static Public Attributes inherited from VectorSpace< SphericalTensor< Cmpt >, Cmpt, 1 >
static constexpr direction dim
 Dimensionality of space.
static constexpr direction nComponents
 Number of components in this vector space.
static constexpr direction mRows
static constexpr direction nCols
static const char *const typeName
static const char *const componentNames []
static const SphericalTensor< Cmpt > zero
static const SphericalTensor< Cmpt > one
static const SphericalTensor< Cmpt > max
static const SphericalTensor< Cmpt > min
static const SphericalTensor< Cmpt > rootMax
static const SphericalTensor< Cmpt > rootMin

Detailed Description

template<class Cmpt>
class Foam::Identity< Cmpt >

Templated identity and dual space identity tensors derived from SphericalTensor.

Definition at line 43 of file Identity.H.

Constructor & Destructor Documentation

◆ Identity()

template<class Cmpt>
Identity ( )
inline

Construct initializing the SphericalTensor to 1.

Definition at line 52 of file Identity.H.

References SphericalTensor< Cmpt >::SphericalTensor().

Here is the call graph for this function:

Member Function Documentation

◆ operator*()

template<class Cmpt>
dual operator* ( )
inline

Return the identity in the dual space.

Definition at line 76 of file Identity.H.

◆ operator label()

template<class Cmpt>
operator label ( ) const
inlineexplicitnoexcept

Return 1 for label.

Definition at line 84 of file Identity.H.

References Foam::noexcept.

◆ operator scalar()

template<class Cmpt>
operator scalar ( ) const
inlineexplicitnoexcept

Return 1 for scalar.

Definition at line 92 of file Identity.H.

References Foam::noexcept.


The documentation for this class was generated from the following file:
  • src/OpenFOAM/primitives/SphericalTensor/Identity.H