OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
TransportMap< T, N > Class Template Reference

Transport map with values of type [b]T[/b] in [b]N[/b] variables. More...

#include <TransportMap.h>

Collaboration diagram for TransportMap< T, N >:

Public Member Functions

 TransportMap ()
 Default constructor.
 TransportMap (const FVps< T, N > &rhs)
 Convert.
 TransportMap (const FMatrix< T, N, N > &M)
 Convert from matrix.
 TransportMap (const FVector< T, N > &V)
 Convert from vector.
const TransportFun< T, N > & getComponent (int n) const
 Get component.
void setComponent (int, const TransportFun< T, N > &)
 Set component.
TransportFun< T, N > & operator[] (int)
 Get component.
const TransportFun< T, N > & operator[] (int) const
 Get Component.
TransportMap operator+ () const
 Unary plus.
TransportMap operator- () const
 Unary minus.
TransportMapoperator*= (const TransportFun< T, N > &rhs)
 Multiply and assign.
TransportMapoperator/= (const TransportFun< T, N > &rhs)
 Divide and assign.
TransportMapoperator*= (const T &rhs)
 Multiply and assign.
TransportMapoperator/= (const T &rhs)
 Divide and assign.
TransportMapoperator+= (const TransportMap &rhs)
 Add.
TransportMapoperator-= (const TransportMap &rhs)
 Subtract.
TransportMapoperator+= (const FVector< T, N > &)
 Add and assign.
TransportMapoperator-= (const FVector< T, N > &)
 Subtract and assign.
TransportMap inverse () const
 Inverse.
void identity ()
 Set to identity.
FVector< T, N > constantTerm (const FVector< T, N > &P) const
 Evaluate map at point [b]P[/b].
FVector< T, N > constantTerm () const
FMatrix< T, N, N > linearTerms () const
 Extract Transport terms at origin.
TransportMap substitute (const FMatrix< T, N, N > &rhs) const
 Substitute matrix into map.
TransportMap substitute (const TransportMap &rhs) const
 Substitute map into map.
TransportMap substituteInto (const FMatrix< T, N, N > &lhs) const
 Substitute map into matrix.

Protected Attributes

TransportFun< T, N > data [N]

Static Protected Attributes

static const int SIZE = (N + 1) *(N + 2) / 2
 Size of a component.

Detailed Description

template<class T, int N>
class TransportMap< T, N >

Transport map with values of type [b]T[/b] in [b]N[/b] variables.

Definition at line 39 of file TransportMap.h.

Constructor & Destructor Documentation

◆ TransportMap() [1/4]

template<class T, int N>
TransportMap< T, N >::TransportMap ( )

◆ TransportMap() [2/4]

template<class T, int N>
TransportMap< T, N >::TransportMap ( const FVps< T, N > & rhs)
explicit

Convert.

Definition at line 48 of file TransportMap.hpp.

References data, and SIZE.

◆ TransportMap() [3/4]

template<class T, int N>
TransportMap< T, N >::TransportMap ( const FMatrix< T, N, N > & M)
explicit

Convert from matrix.

Definition at line 57 of file TransportMap.hpp.

References data.

◆ TransportMap() [4/4]

template<class T, int N>
TransportMap< T, N >::TransportMap ( const FVector< T, N > & V)
explicit

Convert from vector.

Definition at line 65 of file TransportMap.hpp.

References data.

Member Function Documentation

◆ constantTerm() [1/2]

template<class T, int N>
FVector< T, N > TransportMap< T, N >::constantTerm ( ) const

Evaluate map at origin. This is equivalent to extracting constant part.

Definition at line 227 of file TransportMap.hpp.

References data.

◆ constantTerm() [2/2]

template<class T, int N>
FVector< T, N > TransportMap< T, N >::constantTerm ( const FVector< T, N > & P) const

Evaluate map at point [b]P[/b].

Definition at line 215 of file TransportMap.hpp.

References data.

◆ getComponent()

template<class T, int N>
const TransportFun< T, N > & TransportMap< T, N >::getComponent ( int n) const

Get component.

Definition at line 71 of file TransportMap.hpp.

References data.

◆ identity()

template<class T, int N>
void TransportMap< T, N >::identity ( )

Set to identity.

Definition at line 209 of file TransportMap.hpp.

◆ inverse()

template<class T, int N>
TransportMap< T, N > TransportMap< T, N >::inverse ( ) const

Inverse.

Definition at line 173 of file TransportMap.hpp.

References data, FLUMatrix< T, N >::inverse(), SIZE, substitute(), and TransportMap().

Here is the call graph for this function:

◆ linearTerms()

template<class T, int N>
FMatrix< T, N, N > TransportMap< T, N >::linearTerms ( ) const

Extract Transport terms at origin.

Definition at line 239 of file TransportMap.hpp.

References data.

◆ operator*=() [1/2]

template<class T, int N>
TransportMap< T, N > & TransportMap< T, N >::operator*= ( const T & rhs)

Multiply and assign.

Definition at line 131 of file TransportMap.hpp.

References data, and TransportMap().

Here is the call graph for this function:

◆ operator*=() [2/2]

template<class T, int N>
TransportMap< T, N > & TransportMap< T, N >::operator*= ( const TransportFun< T, N > & rhs)

Multiply and assign.

Definition at line 116 of file TransportMap.hpp.

References data, and TransportMap().

Here is the call graph for this function:

◆ operator+()

template<class T, int N>
TransportMap< T, N > TransportMap< T, N >::operator+ ( ) const

Unary plus.

Definition at line 102 of file TransportMap.hpp.

References TransportMap().

Here is the call graph for this function:

◆ operator+=() [1/2]

template<class T, int N>
TransportMap< T, N > & TransportMap< T, N >::operator+= ( const FVector< T, N > & rhs)

Add and assign.

Definition at line 159 of file TransportMap.hpp.

References data, and TransportMap().

Here is the call graph for this function:

◆ operator+=() [2/2]

template<class T, int N>
TransportMap< T, N > & TransportMap< T, N >::operator+= ( const TransportMap< T, N > & rhs)

Add.

Definition at line 145 of file TransportMap.hpp.

References data, and TransportMap().

Here is the call graph for this function:

◆ operator-()

template<class T, int N>
TransportMap< T, N > TransportMap< T, N >::operator- ( ) const

Unary minus.

Definition at line 108 of file TransportMap.hpp.

References data, and TransportMap().

Here is the call graph for this function:

◆ operator-=() [1/2]

template<class T, int N>
TransportMap< T, N > & TransportMap< T, N >::operator-= ( const FVector< T, N > & rhs)

Subtract and assign.

Definition at line 166 of file TransportMap.hpp.

References data, and TransportMap().

Here is the call graph for this function:

◆ operator-=() [2/2]

template<class T, int N>
TransportMap< T, N > & TransportMap< T, N >::operator-= ( const TransportMap< T, N > & rhs)

Subtract.

Definition at line 152 of file TransportMap.hpp.

References data, and TransportMap().

Here is the call graph for this function:

◆ operator/=() [1/2]

template<class T, int N>
TransportMap< T, N > & TransportMap< T, N >::operator/= ( const T & rhs)

Divide and assign.

Definition at line 138 of file TransportMap.hpp.

References data, and TransportMap().

Here is the call graph for this function:

◆ operator/=() [2/2]

template<class T, int N>
TransportMap< T, N > & TransportMap< T, N >::operator/= ( const TransportFun< T, N > & rhs)

Divide and assign.

Definition at line 123 of file TransportMap.hpp.

References data, TransportFun< T, N >::inverse(), and TransportMap().

Here is the call graph for this function:

◆ operator[]() [1/2]

template<class T, int N>
TransportFun< T, N > & TransportMap< T, N >::operator[] ( int index)
inline

Get component.

Definition at line 91 of file TransportMap.hpp.

References data.

◆ operator[]() [2/2]

template<class T, int N>
const TransportFun< T, N > & TransportMap< T, N >::operator[] ( int index) const
inline

Get Component.

Definition at line 96 of file TransportMap.hpp.

References data.

◆ setComponent()

template<class T, int N>
void TransportMap< T, N >::setComponent ( int index,
const TransportFun< T, N > & value )

Set component.

Definition at line 81 of file TransportMap.hpp.

References data.

◆ substitute() [1/2]

template<class T, int N>
TransportMap< T, N > TransportMap< T, N >::substitute ( const FMatrix< T, N, N > & rhs) const

Substitute matrix into map.

Definition at line 287 of file TransportMap.hpp.

References substitute(), and TransportMap().

Referenced by inverse(), and substitute().

Here is the call graph for this function:

◆ substitute() [2/2]

template<class T, int N>
TransportMap< T, N > TransportMap< T, N >::substitute ( const TransportMap< T, N > & rhs) const

Substitute map into map.

Definition at line 253 of file TransportMap.hpp.

References data, and TransportMap().

Here is the call graph for this function:

◆ substituteInto()

template<class T, int N>
TransportMap< T, N > TransportMap< T, N >::substituteInto ( const FMatrix< T, N, N > & lhs) const

Substitute map into matrix.

Definition at line 294 of file TransportMap.hpp.

References data, and TransportMap().

Referenced by operator*().

Here is the call graph for this function:

Member Data Documentation

◆ data

◆ SIZE

template<class T, int N>
const int TransportMap< T, N >::SIZE = (N + 1) *(N + 2) / 2
staticprotected

Size of a component.

Definition at line 141 of file TransportMap.h.

Referenced by inverse(), and TransportMap().


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