OPAL (Object Oriented Parallel Accelerator Library) 2022.1
OPAL
Classes | Public Types | Public Member Functions | Private Attributes | List of all members
Tenzor< T, D > Class Template Reference

#include <Tenzor.h>

Classes

class  DontInitialize
 

Public Types

enum  { ElemDim = 2 }
 
enum  { Size = D*D }
 
typedef T Element_t
 

Public Member Functions

 Tenzor ()
 
 Tenzor (DontInitialize)
 
 Tenzor (const Tenzor< T, D > &rhs)
 
 Tenzor (const T &x00)
 
 Tenzor (const T &x00, const T &x10, const T &x01, const T &x11)
 
 Tenzor (const T &x00, const T &x10, const T &x20, const T &x01, const T &x11, const T &x21, const T &x02, const T &x12, const T &x22)
 
 Tenzor (const SymTenzor< T, D > &)
 
 Tenzor (const AntiSymTenzor< T, D > &)
 
 ~Tenzor ()
 
const Tenzor< T, D > & operator= (const Tenzor< T, D > &rhs)
 
template<class T1 >
const Tenzor< T, D > & operator= (const Tenzor< T1, D > &rhs)
 
const Tenzor< T, D > & operator= (const T &rhs)
 
template<class T1 >
Tenzor< T, D > & operator+= (const Tenzor< T1, D > &rhs)
 
Tenzor< T, D > & operator+= (const T &rhs)
 
template<class T1 >
Tenzor< T, D > & operator-= (const Tenzor< T1, D > &rhs)
 
Tenzor< T, D > & operator-= (const T &rhs)
 
template<class T1 >
Tenzor< T, D > & operator*= (const Tenzor< T1, D > &rhs)
 
Tenzor< T, D > & operator*= (const T &rhs)
 
template<class T1 >
Tenzor< T, D > & operator/= (const Tenzor< T1, D > &rhs)
 
Tenzor< T, D > & operator/= (const T &rhs)
 
void diagonal (const T &rhs)
 
int len (void) const
 
int size (void) const
 
Element_toperator[] (unsigned int i)
 
Element_t operator[] (unsigned int i) const
 
Element_toperator() (unsigned int i)
 
Element_t operator() (unsigned int i) const
 
Element_t operator() (unsigned int i, unsigned int j) const
 
Element_toperator() (unsigned int i, unsigned int j)
 
Element_t operator() (const std::pair< int, int > i) const
 
Element_toperator() (const std::pair< int, int > i)
 
bool operator== (const Tenzor< T, D > &that) const
 
bool operator!= (const Tenzor< T, D > &that) const
 
MessageputMessage (Message &m) const
 
MessagegetMessage (Message &m)
 

Private Attributes

X [Size]
 

Detailed Description

template<class T, unsigned D>
class Tenzor< T, D >

Definition at line 34 of file Tenzor.h.

Member Typedef Documentation

◆ Element_t

template<class T , unsigned D>
typedef T Tenzor< T, D >::Element_t

Definition at line 38 of file Tenzor.h.

Member Enumeration Documentation

◆ anonymous enum

template<class T , unsigned D>
anonymous enum
Enumerator
ElemDim 

Definition at line 39 of file Tenzor.h.

◆ anonymous enum

template<class T , unsigned D>
anonymous enum
Enumerator
Size 

Definition at line 40 of file Tenzor.h.

Constructor & Destructor Documentation

◆ Tenzor() [1/8]

template<class T , unsigned D>
Tenzor< T, D >::Tenzor ( )
inline

Definition at line 43 of file Tenzor.h.

References Attrib::Legacy::Distribution::T.

◆ Tenzor() [2/8]

template<class T , unsigned D>
Tenzor< T, D >::Tenzor ( DontInitialize  )
inline

Definition at line 49 of file Tenzor.h.

◆ Tenzor() [3/8]

template<class T , unsigned D>
Tenzor< T, D >::Tenzor ( const Tenzor< T, D > &  rhs)
inline

Definition at line 52 of file Tenzor.h.

◆ Tenzor() [4/8]

template<class T , unsigned D>
Tenzor< T, D >::Tenzor ( const T &  x00)
inline

Definition at line 57 of file Tenzor.h.

References Attrib::Legacy::Distribution::T.

◆ Tenzor() [5/8]

template<class T , unsigned D>
Tenzor< T, D >::Tenzor ( const T &  x00,
const T &  x10,
const T &  x01,
const T &  x11 
)
inline

Definition at line 62 of file Tenzor.h.

References PInsist, and Tenzor< T, D >::X.

◆ Tenzor() [6/8]

template<class T , unsigned D>
Tenzor< T, D >::Tenzor ( const T &  x00,
const T &  x10,
const T &  x20,
const T &  x01,
const T &  x11,
const T &  x21,
const T &  x02,
const T &  x12,
const T &  x22 
)
inline

Definition at line 69 of file Tenzor.h.

References PInsist, and Tenzor< T, D >::X.

◆ Tenzor() [7/8]

template<class T , unsigned D>
Tenzor< T, D >::Tenzor ( const SymTenzor< T, D > &  rhs)

Definition at line 479 of file Tenzor.h.

◆ Tenzor() [8/8]

template<class T , unsigned D>
Tenzor< T, D >::Tenzor ( const AntiSymTenzor< T, D > &  rhs)

Definition at line 486 of file Tenzor.h.

◆ ~Tenzor()

template<class T , unsigned D>
Tenzor< T, D >::~Tenzor ( )
inline

Definition at line 90 of file Tenzor.h.

Member Function Documentation

◆ diagonal()

template<class T , unsigned D>
void Tenzor< T, D >::diagonal ( const T &  rhs)
inline

Definition at line 166 of file Tenzor.h.

◆ getMessage()

template<class T , unsigned D>
Message & Tenzor< T, D >::getMessage ( Message m)
inline

Definition at line 241 of file Tenzor.h.

References Tenzor< T, D >::getMessage(), Attrib::Legacy::Distribution::T, and Tenzor< T, D >::X.

Referenced by Tenzor< T, D >::getMessage().

Here is the call graph for this function:

◆ len()

template<class T , unsigned D>
int Tenzor< T, D >::len ( void  ) const
inline

Definition at line 171 of file Tenzor.h.

References Tenzor< T, D >::Size.

◆ operator!=()

template<class T , unsigned D>
bool Tenzor< T, D >::operator!= ( const Tenzor< T, D > &  that) const
inline

Definition at line 228 of file Tenzor.h.

◆ operator()() [1/6]

template<class T , unsigned D>
Element_t & Tenzor< T, D >::operator() ( const std::pair< int, int >  i)
inline

Definition at line 217 of file Tenzor.h.

References PAssert.

◆ operator()() [2/6]

template<class T , unsigned D>
Element_t Tenzor< T, D >::operator() ( const std::pair< int, int >  i) const
inline

Definition at line 212 of file Tenzor.h.

References PAssert.

◆ operator()() [3/6]

template<class T , unsigned D>
Element_t & Tenzor< T, D >::operator() ( unsigned int  i)
inline

Definition at line 191 of file Tenzor.h.

References PAssert, Tenzor< T, D >::Size, and Tenzor< T, D >::X.

◆ operator()() [4/6]

template<class T , unsigned D>
Element_t Tenzor< T, D >::operator() ( unsigned int  i) const
inline

Definition at line 196 of file Tenzor.h.

References PAssert, Tenzor< T, D >::Size, and Tenzor< T, D >::X.

◆ operator()() [5/6]

template<class T , unsigned D>
Element_t & Tenzor< T, D >::operator() ( unsigned int  i,
unsigned int  j 
)
inline

Definition at line 207 of file Tenzor.h.

References PAssert, and Tenzor< T, D >::X.

◆ operator()() [6/6]

template<class T , unsigned D>
Element_t Tenzor< T, D >::operator() ( unsigned int  i,
unsigned int  j 
) const
inline

Definition at line 202 of file Tenzor.h.

References PAssert, and Tenzor< T, D >::X.

◆ operator*=() [1/2]

template<class T , unsigned D>
Tenzor< T, D > & Tenzor< T, D >::operator*= ( const T &  rhs)
inline

Definition at line 143 of file Tenzor.h.

References Attrib::Legacy::Distribution::T.

◆ operator*=() [2/2]

template<class T , unsigned D>
template<class T1 >
Tenzor< T, D > & Tenzor< T, D >::operator*= ( const Tenzor< T1, D > &  rhs)
inline

Definition at line 137 of file Tenzor.h.

◆ operator+=() [1/2]

template<class T , unsigned D>
Tenzor< T, D > & Tenzor< T, D >::operator+= ( const T &  rhs)
inline

Definition at line 115 of file Tenzor.h.

References Attrib::Legacy::Distribution::T.

◆ operator+=() [2/2]

template<class T , unsigned D>
template<class T1 >
Tenzor< T, D > & Tenzor< T, D >::operator+= ( const Tenzor< T1, D > &  rhs)
inline

Definition at line 109 of file Tenzor.h.

◆ operator-=() [1/2]

template<class T , unsigned D>
Tenzor< T, D > & Tenzor< T, D >::operator-= ( const T &  rhs)
inline

Definition at line 129 of file Tenzor.h.

References Attrib::Legacy::Distribution::T.

◆ operator-=() [2/2]

template<class T , unsigned D>
template<class T1 >
Tenzor< T, D > & Tenzor< T, D >::operator-= ( const Tenzor< T1, D > &  rhs)
inline

Definition at line 123 of file Tenzor.h.

◆ operator/=() [1/2]

template<class T , unsigned D>
Tenzor< T, D > & Tenzor< T, D >::operator/= ( const T &  rhs)
inline

Definition at line 157 of file Tenzor.h.

References Attrib::Legacy::Distribution::T.

◆ operator/=() [2/2]

template<class T , unsigned D>
template<class T1 >
Tenzor< T, D > & Tenzor< T, D >::operator/= ( const Tenzor< T1, D > &  rhs)
inline

Definition at line 151 of file Tenzor.h.

◆ operator=() [1/3]

template<class T , unsigned D>
const Tenzor< T, D > & Tenzor< T, D >::operator= ( const T &  rhs)
inline

Definition at line 102 of file Tenzor.h.

References Attrib::Legacy::Distribution::T.

◆ operator=() [2/3]

template<class T , unsigned D>
const Tenzor< T, D > & Tenzor< T, D >::operator= ( const Tenzor< T, D > &  rhs)
inline

Definition at line 93 of file Tenzor.h.

◆ operator=() [3/3]

template<class T , unsigned D>
template<class T1 >
const Tenzor< T, D > & Tenzor< T, D >::operator= ( const Tenzor< T1, D > &  rhs)
inline

Definition at line 98 of file Tenzor.h.

◆ operator==()

template<class T , unsigned D>
bool Tenzor< T, D >::operator== ( const Tenzor< T, D > &  that) const
inline

Definition at line 225 of file Tenzor.h.

References TSV_MetaCompareArrays< T1, T2, D >::apply(), and Tenzor< T, D >::X.

Here is the call graph for this function:

◆ operator[]() [1/2]

template<class T , unsigned D>
Element_t & Tenzor< T, D >::operator[] ( unsigned int  i)
inline

Definition at line 176 of file Tenzor.h.

References PAssert_LT, Tenzor< T, D >::Size, and Tenzor< T, D >::X.

◆ operator[]() [2/2]

template<class T , unsigned D>
Element_t Tenzor< T, D >::operator[] ( unsigned int  i) const
inline

Definition at line 182 of file Tenzor.h.

References PAssert_LT, Tenzor< T, D >::Size, and Tenzor< T, D >::X.

◆ putMessage()

template<class T , unsigned D>
Message & Tenzor< T, D >::putMessage ( Message m) const
inline

Definition at line 234 of file Tenzor.h.

References Tenzor< T, D >::putMessage(), Message::setCopy(), Attrib::Legacy::Distribution::T, and Tenzor< T, D >::X.

Referenced by Tenzor< T, D >::putMessage().

Here is the call graph for this function:

◆ size()

template<class T , unsigned D>
int Tenzor< T, D >::size ( void  ) const
inline

Definition at line 172 of file Tenzor.h.

Member Data Documentation

◆ X

template<class T , unsigned D>
T Tenzor< T, D >::X[Size]
private

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