Templated matrix space. More...
Classes | |
class | Block |
Sub-block type. More... | |
class | ConstBlock |
Const sub-block type. More... | |
Public Types | |
typedef MatrixSpace< Form, Cmpt, Mrows, Ncols > | msType |
MatrixSpace type. More... | |
Public Types inherited from VectorSpace< Form, Cmpt, Mrows *Ncols > | |
typedef VectorSpace< Form, Cmpt, Ncmpts > | vsType |
VectorSpace type. More... | |
typedef Cmpt | cmptType |
Component type. More... | |
Public Member Functions | |
MatrixSpace () | |
Construct null. More... | |
MatrixSpace (const Foam::zero) | |
Construct initialised to zero. More... | |
template<class Form2 , class Cmpt2 > | |
MatrixSpace (const VectorSpace< Form2, Cmpt2, Mrows *Ncols > &) | |
Construct as copy of a VectorSpace with the same size. More... | |
template<template< class, direction, direction > class Block2, direction BRowStart, direction BColStart> | |
MatrixSpace (const Block2< Form, BRowStart, BColStart > &block) | |
Construct from a block of another matrix space. More... | |
MatrixSpace (Istream &) | |
Construct from Istream. More... | |
template<direction Row, direction Col> | |
const Cmpt & | elmt () const |
Fast const element access using compile-time addressing. More... | |
template<direction Row, direction Col> | |
Cmpt & | elmt () |
Fast element access using compile-time addressing. More... | |
const Cmpt & | xx () const |
const Cmpt & | xy () const |
const Cmpt & | xz () const |
const Cmpt & | yx () const |
const Cmpt & | yy () const |
const Cmpt & | yz () const |
const Cmpt & | zx () const |
const Cmpt & | zy () const |
const Cmpt & | zz () const |
Cmpt & | xx () |
Cmpt & | xy () |
Cmpt & | xz () |
Cmpt & | yx () |
Cmpt & | yy () |
Cmpt & | yz () |
Cmpt & | zx () |
Cmpt & | zy () |
Cmpt & | zz () |
typeOfTranspose< Cmpt, Form >::type | T () const |
Return the transpose of the matrix. More... | |
template<class SubTensor , direction BRowStart, direction BColStart> | |
ConstBlock< SubTensor, BRowStart, BColStart > | block () const |
Return a const sub-block corresponding to the specified type. More... | |
template<class SubTensor , direction BRowStart, direction BColStart> | |
Block< SubTensor, BRowStart, BColStart > | block () |
Return a sub-block corresponding to the specified type. More... | |
const Cmpt & | operator() (const direction &i, const direction &j) const |
(i, j) const element access operator More... | |
Cmpt & | operator() (const direction &i, const direction &j) |
(i, j) element access operator More... | |
void | operator= (const Foam::zero) |
Assignment to zero. More... | |
template<template< class, direction, direction > class Block2, direction BRowStart, direction BColStart> | |
void | operator= (const Block2< Form, BRowStart, BColStart > &block) |
Assignment to a block of another matrix space. More... | |
template<class Form2 > | |
void | operator &= (const MatrixSpace< Form, Cmpt, Ncols, Ncols > &matrix) |
Inner product with a compatible square matrix. More... | |
template<class SubTensor , Foam::direction BRowStart, Foam::direction BColStart> | |
Foam::MatrixSpace< Form, Cmpt, Mrows, Ncols >::template ConstBlock< SubTensor, BRowStart, BColStart > | block () const |
template<class SubTensor , Foam::direction BRowStart, Foam::direction BColStart> | |
Foam::MatrixSpace< Form, Cmpt, Mrows, Ncols >::template Block< SubTensor, BRowStart, BColStart > | block () |
Public Member Functions inherited from VectorSpace< Form, Cmpt, Mrows *Ncols > | |
VectorSpace () | |
Construct null. More... | |
VectorSpace (const Foam::zero) | |
Construct initialised to zero. More... | |
VectorSpace (Istream &) | |
Construct from Istream. More... | |
VectorSpace (const VectorSpace< Form2, Cmpt2, Ncmpts > &) | |
Construct as copy of a VectorSpace with the same size. More... | |
const Cmpt & | component (const direction) const |
Cmpt & | component (const direction) |
void | component (Cmpt &, const direction) const |
void | replace (const direction, const Cmpt &) |
const ConstBlock< SubVector, BStart > | block () const |
const 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 VectorSpace< Form, Cmpt, Ncmpts > &) |
void | operator= (const Foam::zero) |
void | operator*= (const scalar) |
void | operator/= (const scalar) |
Static Public Member Functions | |
static direction | m () |
Return the number of rows. More... | |
static direction | n () |
Return the number of columns. More... | |
static msType | identity () |
Return the identity matrix for square matrix spaces. More... | |
Static Public Member Functions inherited from VectorSpace< Form, Cmpt, Mrows *Ncols > | |
static direction | size () |
Return the number of elements in the VectorSpace = Ncmpts. More... | |
static Form | uniform (const Cmpt &s) |
Return a VectorSpace with all elements = s. More... | |
Static Public Attributes | |
static const direction | mRows = Mrows |
static const direction | nCols = Ncols |
Static Public Attributes inherited from VectorSpace< Form, Cmpt, Mrows *Ncols > | |
static const direction | dim |
Dimensionality of space. More... | |
static const direction | nComponents |
Number of components in this vector space. More... | |
static const direction | mRows |
static const 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 |
Additional Inherited Members | |
Public Attributes inherited from VectorSpace< Form, Cmpt, Mrows *Ncols > | |
Cmpt | v_ [Ncmpts] |
The components of this vector space. More... | |
Templated matrix space.
Template arguments are the Form the matrix space will be used to create, the type of the elements and the number of rows and columns of the matrix.
Definition at line 55 of file MatrixSpace.H.
typedef MatrixSpace<Form, Cmpt, Mrows, Ncols> msType |
MatrixSpace type.
Definition at line 63 of file MatrixSpace.H.
|
inline |
Construct null.
Definition at line 31 of file MatrixSpaceI.H.
Referenced by MatrixSpace< Tensor< scalar >, scalar, 3, 3 >::MatrixSpace(), and MatrixSpace< Form, Cmpt, Mrows, Ncols >::Block< SubTensor, BRowStart, BColStart >::n().
|
inline |
Construct initialised to zero.
Definition at line 37 of file MatrixSpaceI.H.
|
inlineexplicit |
Construct as copy of a VectorSpace with the same size.
Definition at line 48 of file MatrixSpaceI.H.
|
inline |
Construct from a block of another matrix space.
Definition at line 64 of file MatrixSpaceI.H.
|
inline |
Construct from Istream.
Definition at line 79 of file MatrixSpaceI.H.
|
inlinestatic |
Return the number of rows.
Definition at line 75 of file MatrixSpace.H.
|
inlinestatic |
Return the number of columns.
Definition at line 81 of file MatrixSpace.H.
|
inlinestatic |
Return the identity matrix for square matrix spaces.
Definition at line 273 of file MatrixSpaceI.H.
Referenced by MatrixSpace< Tensor< scalar >, scalar, 3, 3 >::n().
|
inline |
Fast const element access using compile-time addressing.
Definition at line 131 of file MatrixSpaceI.H.
Referenced by MatrixSpace< Form, Cmpt, Mrows, Ncols >::Block< SubTensor, BRowStart, BColStart >::n().
|
inline |
Fast element access using compile-time addressing.
Definition at line 140 of file MatrixSpaceI.H.
|
inline |
Definition at line 148 of file MatrixSpaceI.H.
Referenced by Rxyz::jcalc(), Rzyx::jcalc(), Ryxz::jcalc(), Rs::jcalc(), and MatrixSpace< Form, Cmpt, Mrows, Ncols >::Block< SubTensor, BRowStart, BColStart >::n().
|
inline |
Definition at line 162 of file MatrixSpaceI.H.
Referenced by Rxyz::jcalc(), Ryxz::jcalc(), and MatrixSpace< Form, Cmpt, Mrows, Ncols >::Block< SubTensor, BRowStart, BColStart >::n().
|
inline |
Definition at line 176 of file MatrixSpaceI.H.
Referenced by Rzyx::jcalc(), and MatrixSpace< Form, Cmpt, Mrows, Ncols >::Block< SubTensor, BRowStart, BColStart >::n().
|
inline |
Definition at line 190 of file MatrixSpaceI.H.
Referenced by Rxyz::jcalc(), Rzyx::jcalc(), Ryxz::jcalc(), and MatrixSpace< Form, Cmpt, Mrows, Ncols >::Block< SubTensor, BRowStart, BColStart >::n().
|
inline |
Definition at line 204 of file MatrixSpaceI.H.
Referenced by Rxyz::jcalc(), Rzyx::jcalc(), Ryxz::jcalc(), Rs::jcalc(), and MatrixSpace< Form, Cmpt, Mrows, Ncols >::Block< SubTensor, BRowStart, BColStart >::n().
|
inline |
Definition at line 218 of file MatrixSpaceI.H.
Referenced by MatrixSpace< Form, Cmpt, Mrows, Ncols >::Block< SubTensor, BRowStart, BColStart >::n().
|
inline |
Definition at line 232 of file MatrixSpaceI.H.
Referenced by Rxyz::jcalc(), Rzyx::jcalc(), Ryxz::jcalc(), and MatrixSpace< Form, Cmpt, Mrows, Ncols >::Block< SubTensor, BRowStart, BColStart >::n().
|
inline |
Definition at line 246 of file MatrixSpaceI.H.
Referenced by Rzyx::jcalc(), and MatrixSpace< Form, Cmpt, Mrows, Ncols >::Block< SubTensor, BRowStart, BColStart >::n().
|
inline |
Definition at line 260 of file MatrixSpaceI.H.
Referenced by Rxyz::jcalc(), Ryxz::jcalc(), Rs::jcalc(), and MatrixSpace< Form, Cmpt, Mrows, Ncols >::Block< SubTensor, BRowStart, BColStart >::n().
|
inline |
Definition at line 155 of file MatrixSpaceI.H.
|
inline |
Definition at line 169 of file MatrixSpaceI.H.
|
inline |
Definition at line 183 of file MatrixSpaceI.H.
|
inline |
Definition at line 197 of file MatrixSpaceI.H.
|
inline |
Definition at line 211 of file MatrixSpaceI.H.
|
inline |
Definition at line 225 of file MatrixSpaceI.H.
|
inline |
Definition at line 239 of file MatrixSpaceI.H.
|
inline |
Definition at line 253 of file MatrixSpaceI.H.
|
inline |
Definition at line 266 of file MatrixSpaceI.H.
|
inline |
Return the transpose of the matrix.
Definition at line 289 of file MatrixSpaceI.H.
Referenced by MatrixSpace< Form, Cmpt, Mrows, Ncols >::Block< SubTensor, BRowStart, BColStart >::n(), MatrixSpace< Form, Cmpt, Mrows, Ncols >::Block< SubTensor, BRowStart, BColStart >::operator=(), and Foam::T().
|
inline |
Return a const sub-block corresponding to the specified type.
starting at the specified row and column
Referenced by MatrixSpace< Form, Cmpt, Mrows, Ncols >::Block< SubTensor, BRowStart, BColStart >::n(), and MatrixSpace< Tensor< scalar >, scalar, 3, 3 >::operator=().
Return a sub-block corresponding to the specified type.
starting at the specified row and column
(i, j) const element access operator
Definition at line 340 of file MatrixSpaceI.H.
Referenced by MatrixSpace< Form, Cmpt, Mrows, Ncols >::ConstBlock< SubTensor, BRowStart, BColStart >::operator()(), MatrixSpace< Form, Cmpt, Mrows, Ncols >::Block< SubTensor, BRowStart, BColStart >::operator()(), and MatrixSpace< Tensor< scalar >, scalar, 3, 3 >::operator()().
(i, j) element access operator
Definition at line 360 of file MatrixSpaceI.H.
|
inline |
Assignment to zero.
Definition at line 445 of file MatrixSpaceI.H.
Referenced by MatrixSpace< Form, Cmpt, Mrows, Ncols >::Block< SubTensor, BRowStart, BColStart >::n().
|
inline |
Assignment to a block of another matrix space.
Definition at line 472 of file MatrixSpaceI.H.
|
inline |
Inner product with a compatible square matrix.
|
inline |
Definition at line 314 of file MatrixSpaceI.H.
|
inline |
Definition at line 330 of file MatrixSpaceI.H.
|
static |
|
static |