Templated vector space. More...
Classes | |
class | ConstBlock |
Const sub-block type. More... | |
Public Types | |
typedef VectorSpace< Form, Cmpt, Ncmpts > | vsType |
VectorSpace type. More... | |
typedef Cmpt | cmptType |
Component type. More... | |
typedef Cmpt | magType |
Magnitude type. More... | |
typedef Cmpt * | iterator |
Random access iterator for traversing VectorSpace. More... | |
typedef const Cmpt * | const_iterator |
Random access iterator for traversing VectorSpace. More... | |
Public Member Functions | |
VectorSpace ()=default | |
Default construct. More... | |
VectorSpace (const Foam::zero) | |
Construct initialized to zero. More... | |
VectorSpace (const VectorSpace< Form, Cmpt, Ncmpts > &vs) | |
Copy construct. More... | |
template<class Form2 , class Cmpt2 > | |
VectorSpace (const VectorSpace< Form2, Cmpt2, Ncmpts > &) | |
Copy construct of a VectorSpace with the same size. More... | |
VectorSpace (Istream &is) | |
Construct from Istream. More... | |
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 |
Return const pointer to the first data element. More... | |
Cmpt * | data () noexcept |
Return pointer to the first data element. More... | |
template<class SubVector , direction BStart> | |
const 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 VectorSpace< Form, Cmpt, Ncmpts > &) |
void | operator= (const Foam::zero) |
void | operator*= (const scalar) |
void | operator/= (const scalar) |
iterator | begin () noexcept |
Return an iterator to begin of VectorSpace. More... | |
iterator | end () noexcept |
Return an iterator to end of VectorSpace. More... | |
const_iterator | cbegin () const noexcept |
Return const_iterator to begin of VectorSpace. More... | |
const_iterator | cend () const noexcept |
Return const_iterator to end of VectorSpace. More... | |
const_iterator | begin () const noexcept |
Return const_iterator to begin of VectorSpace. More... | |
const_iterator | end () const noexcept |
Return const_iterator to end of VectorSpace. More... | |
template<class SubVector , Foam::direction BStart> | |
const Foam::VectorSpace< Form, Cmpt, Ncmpts >::template ConstBlock< SubVector, BStart > | block () const |
Static Public Member Functions | |
static constexpr direction | size () noexcept |
The number of elements in the VectorSpace = Ncmpts. More... | |
static Form | uniform (const Cmpt &s) |
Return a VectorSpace with all elements = s. More... | |
Public Attributes | |
Cmpt | v_ [Ncmpts] |
The components of this vector space. More... | |
Static Public Attributes | |
static constexpr direction | dim = 3 |
Dimensionality of space. More... | |
static constexpr direction | nComponents = Ncmpts |
Number of components in this vector space. More... | |
static constexpr direction | mRows = Ncmpts |
static constexpr direction | nCols = 1 |
static const char *const | typeName = "symmTensor" |
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 |
Friends | |
Istream & | operator>> (Istream &, VectorSpace< Form, Cmpt, Ncmpts > &) |
Ostream & | operator (Ostream &, const VectorSpace< Form, Cmpt, Ncmpts > &) |
Templated vector space.
Template arguments are the Form the vector space will be used to create, the type of the elements and the number of elements.
Definition at line 52 of file VectorSpace.H.
typedef VectorSpace<Form, Cmpt, Ncmpts> vsType |
VectorSpace type.
Definition at line 86 of file VectorSpace.H.
typedef Cmpt cmptType |
Component type.
Definition at line 91 of file VectorSpace.H.
typedef Cmpt magType |
Magnitude type.
Definition at line 96 of file VectorSpace.H.
typedef Cmpt* iterator |
Random access iterator for traversing VectorSpace.
Definition at line 255 of file VectorSpace.H.
typedef const Cmpt* const_iterator |
Random access iterator for traversing VectorSpace.
Definition at line 260 of file VectorSpace.H.
|
default |
Default construct.
|
inline |
Construct initialized to zero.
Definition at line 31 of file VectorSpaceI.H.
|
inline |
Copy construct.
Definition at line 39 of file VectorSpaceI.H.
|
inlineexplicit |
Copy construct of a VectorSpace with the same size.
Definition at line 50 of file VectorSpaceI.H.
|
explicit |
Construct from Istream.
Definition at line 30 of file VectorSpace.C.
|
inlinestaticnoexcept |
The number of elements in the VectorSpace = Ncmpts.
Definition at line 206 of file VectorSpace.H.
Referenced by Foam::zip().
|
inline |
Definition at line 80 of file VectorSpaceI.H.
Referenced by Foam::component(), and Foam::setComponent().
|
inline |
Definition at line 99 of file VectorSpaceI.H.
|
inline |
Definition at line 118 of file VectorSpaceI.H.
|
inline |
Definition at line 138 of file VectorSpaceI.H.
Referenced by particle< Type >::trackToMovingTri(), and particle< Type >::trackToStationaryTri().
|
inlinenoexcept |
Return const pointer to the first data element.
Definition at line 185 of file VectorSpaceI.H.
|
inlinenoexcept |
Return pointer to the first data element.
Definition at line 178 of file VectorSpaceI.H.
|
inlinestatic |
Return a VectorSpace with all elements = s.
Definition at line 157 of file VectorSpaceI.H.
|
inline |
Definition at line 241 of file VectorSpaceI.H.
Definition at line 260 of file VectorSpaceI.H.
|
inline |
Definition at line 331 of file VectorSpaceI.H.
Referenced by MatrixSpace< Tensor< scalar >, scalar, 3, 3 >::operator=().
|
inline |
Definition at line 341 of file VectorSpaceI.H.
|
inline |
Definition at line 351 of file VectorSpaceI.H.
|
inline |
Definition at line 360 of file VectorSpaceI.H.
|
inline |
Definition at line 368 of file VectorSpaceI.H.
|
inline |
Definition at line 378 of file VectorSpaceI.H.
|
inlinenoexcept |
Return an iterator to begin of VectorSpace.
Definition at line 192 of file VectorSpaceI.H.
|
inlinenoexcept |
Return an iterator to end of VectorSpace.
Definition at line 199 of file VectorSpaceI.H.
|
inlinenoexcept |
Return const_iterator to begin of VectorSpace.
Definition at line 206 of file VectorSpaceI.H.
|
inlinenoexcept |
Return const_iterator to end of VectorSpace.
Definition at line 214 of file VectorSpaceI.H.
|
inlinenoexcept |
Return const_iterator to begin of VectorSpace.
Definition at line 222 of file VectorSpaceI.H.
|
inlinenoexcept |
Return const_iterator to end of VectorSpace.
Definition at line 230 of file VectorSpaceI.H.
|
inline |
Definition at line 169 of file VectorSpaceI.H.
|
friend |
|
friend |
Cmpt v_[Ncmpts] |
The components of this vector space.
Definition at line 81 of file VectorSpace.H.
Referenced by Foam::cmptMax(), Foam::cmptMin(), Foam::cmptProduct(), Foam::cmptSum(), Foam::magSqr(), Foam::operator &&(), Foam::operator<(), and Foam::operator==().
|
static |
Dimensionality of space.
Definition at line 104 of file VectorSpace.H.
Referenced by Foam::cof(), and Foam::det().
|
static |
Number of components in this vector space.
Definition at line 109 of file VectorSpace.H.
Referenced by anisotropicFilter::operator()(), and genericPatchFieldBase::processEntry().
|
static |
Definition at line 115 of file VectorSpace.H.
|
static |
Definition at line 116 of file VectorSpace.H.
|
static |
Definition at line 121 of file VectorSpace.H.
|
static |
Definition at line 122 of file VectorSpace.H.
|
static |
Definition at line 123 of file VectorSpace.H.
|
static |
Definition at line 124 of file VectorSpace.H.
|
static |
Definition at line 125 of file VectorSpace.H.
|
static |
Definition at line 126 of file VectorSpace.H.
|
static |
Definition at line 127 of file VectorSpace.H.
|
static |
Definition at line 128 of file VectorSpace.H.