Public Member Functions | List of all members
CompactSpatialTensorT< Cmpt > Class Template Reference

Templated 3D transposed compact spatial tensor derived from MatrixSpace used to represent transformations of spatial vectors of rigid bodies. More...

Inheritance diagram for CompactSpatialTensorT< Cmpt >:
Inheritance graph
[legend]
Collaboration diagram for CompactSpatialTensorT< Cmpt >:
Collaboration graph
[legend]

Public Member Functions

 CompactSpatialTensorT ()
 
 CompactSpatialTensorT (const Foam::zero)
 
 CompactSpatialTensorT (const typename CompactSpatialTensorT::msType &)
 
 CompactSpatialTensorT (const Cmpt &t00, const Cmpt &t01, const Cmpt &t02, const Cmpt &t10, const Cmpt &t11, const Cmpt &t12, const Cmpt &t20, const Cmpt &t21, const Cmpt &t22, const Cmpt &t30, const Cmpt &t31, const Cmpt &t32, const Cmpt &t40, const Cmpt &t41, const Cmpt &t42, const Cmpt &t50, const Cmpt &t51, const Cmpt &t52)
 
 CompactSpatialTensorT (Istream &)
 
- Public Member Functions inherited from MatrixSpace< CompactSpatialTensorT< Cmpt >, Cmpt, 3, 6 >
 MatrixSpace ()=default
 
 MatrixSpace (const Foam::zero)
 
 MatrixSpace (const VectorSpace< Form2, Cmpt2, Mrows *Ncols > &)
 
 MatrixSpace (const Block2< CompactSpatialTensorT< Cmpt >, BRowStart, BColStart > &block)
 
 MatrixSpace (Istream &is)
 
const Cmpt & elmt () const
 
Cmpt & elmt ()
 
const Cmpt & xx () const
 
Cmpt & xx ()
 
const Cmpt & xy () const
 
Cmpt & xy ()
 
const Cmpt & xz () const
 
Cmpt & xz ()
 
const Cmpt & yx () const
 
Cmpt & yx ()
 
const Cmpt & yy () const
 
Cmpt & yy ()
 
const Cmpt & yz () const
 
Cmpt & yz ()
 
const Cmpt & zx () const
 
Cmpt & zx ()
 
const Cmpt & zy () const
 
Cmpt & zy ()
 
const Cmpt & zz () const
 
Cmpt & zz ()
 
typeOfTranspose< Cmpt, CompactSpatialTensorT< Cmpt > >::type T () const
 
ConstBlock< SubTensor, BRowStart, BColStart > block () const
 
Block< SubTensor, BRowStart, BColStart > block ()
 
Foam::MatrixSpace< CompactSpatialTensorT< Cmpt >, Cmpt, Mrows, Ncols >::template ConstBlock< SubTensor, BRowStart, BColStart > block () const
 
Foam::MatrixSpace< CompactSpatialTensorT< Cmpt >, Cmpt, Mrows, Ncols >::template Block< SubTensor, BRowStart, BColStart > block ()
 
const Cmpt & operator() (const direction &i, const direction &j) const
 
Cmpt & operator() (const direction &i, const direction &j)
 
void operator= (const Foam::zero)
 
void operator= (const Block2< CompactSpatialTensorT< Cmpt >, BRowStart, BColStart > &block)
 
void operator&= (const MatrixSpace< CompactSpatialTensorT< Cmpt >, Cmpt, Ncols, Ncols > &matrix)
 
- Public Member Functions inherited from VectorSpace< CompactSpatialTensorT< Cmpt >, Cmpt, Mrows *Ncols >
 VectorSpace ()=default
 
 VectorSpace (const Foam::zero)
 
 VectorSpace (const VectorSpace< Form, Cmpt, Ncmpts > &vs)
 
 VectorSpace (const VectorSpace< Form2, Cmpt2, Ncmpts > &)
 
 VectorSpace (Istream &is)
 
const Cmpt & component (const direction) const
 
Cmpt & component (const direction)
 
void component (Cmpt &, const direction) const
 
void replace (const direction, const Cmpt &)
 
const Cmpt * cdata () const noexcept
 
Cmpt * data () noexcept
 
const ConstBlock< SubVector, BStart > block () const
 
const Foam::VectorSpace< Form, Cmpt, Ncmpts >::template ConstBlock< SubVector, BStart > block () const
 
const Cmpt & operator[] (const direction) const
 
Cmpt & operator[] (const direction)
 
void operator= (const VectorSpace< Form, Cmpt, Ncmpts > &)
 
void operator= (const Foam::zero)
 
void operator+= (const VectorSpace< Form, Cmpt, Ncmpts > &)
 
void operator-= (const VectorSpace< Form, Cmpt, Ncmpts > &)
 
void operator*= (const scalar)
 
void operator/= (const scalar)
 
iterator begin () noexcept
 
const_iterator begin () const noexcept
 
iterator end () noexcept
 
const_iterator end () const noexcept
 
const_iterator cbegin () const noexcept
 
const_iterator cend () const noexcept
 

Additional Inherited Members

- Public Types inherited from MatrixSpace< CompactSpatialTensorT< Cmpt >, Cmpt, 3, 6 >
typedef MatrixSpace< CompactSpatialTensorT< Cmpt >, Cmpt, Mrows, Ncols > msType
 
- Public Types inherited from VectorSpace< CompactSpatialTensorT< Cmpt >, Cmpt, Mrows *Ncols >
typedef VectorSpace< Form, Cmpt, Ncmpts > vsType
 
typedef Cmpt cmptType
 
typedef Cmpt magType
 
typedef Cmpt * iterator
 
- Static Public Member Functions inherited from MatrixSpace< CompactSpatialTensorT< Cmpt >, Cmpt, 3, 6 >
static direction m () noexcept
 
static direction n () noexcept
 
static msType identity ()
 
- Static Public Member Functions inherited from VectorSpace< CompactSpatialTensorT< Cmpt >, Cmpt, Mrows *Ncols >
static constexpr direction size () noexcept
 
static Form uniform (const Cmpt &s)
 
- Public Attributes inherited from VectorSpace< CompactSpatialTensorT< Cmpt >, Cmpt, Mrows *Ncols >
const typedef Cmpt * const_iterator
 
Cmpt v_ [Ncmpts]
 
- Static Public Attributes inherited from MatrixSpace< CompactSpatialTensorT< Cmpt >, Cmpt, 3, 6 >
static constexpr direction mRows
 
static constexpr direction nCols
 
- Static Public Attributes inherited from VectorSpace< CompactSpatialTensorT< Cmpt >, Cmpt, Mrows *Ncols >
static constexpr direction dim
 
static constexpr direction nComponents
 
static constexpr direction mRows
 
static constexpr direction nCols
 
static const char *const typeName
 
static const char *const componentNames []
 
static const Form zero
 
static const Form one
 
static const Form max
 
static const Form min
 
static const Form rootMax
 
static const Form rootMin
 

Detailed Description

template<class Cmpt>
class Foam::CompactSpatialTensorT< Cmpt >

Templated 3D transposed compact spatial tensor derived from MatrixSpace used to represent transformations of spatial vectors of rigid bodies.

Reference:

    Featherstone, R. (2008).
    Rigid body dynamics algorithms.
    Springer.
Source files
See also
Foam::MatrixSpace Foam::CompactSpatialTensor

Definition at line 60 of file CompactSpatialTensorT.H.

Constructor & Destructor Documentation

◆ CompactSpatialTensorT() [1/5]

Definition at line 24 of file CompactSpatialTensorTI.H.

◆ CompactSpatialTensorT() [2/5]

CompactSpatialTensorT ( const Foam::zero  )
inline

Definition at line 30 of file CompactSpatialTensorTI.H.

◆ CompactSpatialTensorT() [3/5]

CompactSpatialTensorT ( const typename CompactSpatialTensorT< Cmpt >::msType ms)
inline

Definition at line 40 of file CompactSpatialTensorTI.H.

◆ CompactSpatialTensorT() [4/5]

CompactSpatialTensorT ( const Cmpt &  t00,
const Cmpt &  t01,
const Cmpt &  t02,
const Cmpt &  t10,
const Cmpt &  t11,
const Cmpt &  t12,
const Cmpt &  t20,
const Cmpt &  t21,
const Cmpt &  t22,
const Cmpt &  t30,
const Cmpt &  t31,
const Cmpt &  t32,
const Cmpt &  t40,
const Cmpt &  t41,
const Cmpt &  t42,
const Cmpt &  t50,
const Cmpt &  t51,
const Cmpt &  t52 
)
inline

Definition at line 50 of file CompactSpatialTensorTI.H.

◆ CompactSpatialTensorT() [5/5]

CompactSpatialTensorT ( Istream is)
inline

Definition at line 86 of file CompactSpatialTensorTI.H.


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