Templated vector space. More...
Inherited by Barycentric< scalar >, DiagTensor< scalar >, MatrixSpace< BarycentricTensor< Cmpt >, Cmpt, 4, 3 >, MatrixSpace< CompactSpatialTensor< Cmpt >, Cmpt, 6, 3 >, MatrixSpace< CompactSpatialTensorT< Cmpt >, Cmpt, 3, 6 >, MatrixSpace< RowVector< Cmpt >, Cmpt, 1, 3 >, MatrixSpace< SpatialTensor< Cmpt >, Cmpt, 6, 6 >, MatrixSpace< Tensor< Cmpt >, Cmpt, 3, 3 >, MatrixSpace< CompactSpatialTensor< scalar >, scalar, 6, 3 >, MatrixSpace< Tensor< scalar >, scalar, 3, 3 >, SpatialVector< scalar >, SphericalTensor< scalar >, SymmTensor< scalar >, Vector< float >, Vector< vector >, Vector< scalar >, Vector< bool >, Vector< Foam::List< scalar > >, Vector< Foam::PDRblock::gridControl >, Vector< Foam::PDRblock::location >, Vector< label >, Vector< Foam::Vector2D >, Vector< int >, Vector< direction >, Vector2D< scalar >, and Vector2D< label >.
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 = "diagTensor" |
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 78 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 89 of file VectorSpace.H.
typedef Cmpt magType |
Magnitude type.
Definition at line 92 of file VectorSpace.H.
typedef Cmpt* iterator |
Random access iterator for traversing VectorSpace.
Definition at line 217 of file VectorSpace.H.
typedef const Cmpt* const_iterator |
Random access iterator for traversing VectorSpace.
Definition at line 220 of file VectorSpace.H.
|
default |
Default construct.
|
inline |
Construct initialized to zero.
Definition at line 38 of file VectorSpaceI.H.
|
inline |
Copy construct.
Definition at line 45 of file VectorSpaceI.H.
|
inlineexplicit |
Copy construct of a VectorSpace with the same size.
Definition at line 56 of file VectorSpaceI.H.
|
explicit |
Construct from Istream.
Definition at line 36 of file VectorSpace.C.
References IOstream::check(), FUNCTION_NAME, Istream::readBegin(), and Istream::readEnd().
|
inlinestaticconstexprnoexcept |
The number of elements in the VectorSpace = Ncmpts.
Definition at line 176 of file VectorSpace.H.
Referenced by Foam::zip().
|
inline |
Definition at line 86 of file VectorSpaceI.H.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and VectorSpace< Form, Cmpt, Ncmpts >::v_.
Referenced by Foam::component(), NURBS3DVolume::computeParametricCoordinates(), Bezier::facePoints_d(), coordinateRotation::findOrthogonal(), cellMDLimitedGrad< Type >::limitFace(), Foam::setComponent(), and symmetryPlaneFvPatchField< Type >::snGradTransformDiag().
|
inline |
Definition at line 105 of file VectorSpaceI.H.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and VectorSpace< Form, Cmpt, Ncmpts >::v_.
|
inline |
Definition at line 124 of file VectorSpaceI.H.
References Foam::abort(), Foam::FatalError, and FatalErrorInFunction.
|
inline |
Definition at line 144 of file VectorSpaceI.H.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and VectorSpace< Form, Cmpt, Ncmpts >::v_.
Referenced by particle< Type >::trackToMovingTri(), and particle< Type >::trackToStationaryTri().
|
inlinenoexcept |
Return const pointer to the first data element.
Definition at line 192 of file VectorSpaceI.H.
|
inlinenoexcept |
Return pointer to the first data element.
Definition at line 185 of file VectorSpaceI.H.
References VectorSpace< Form, Cmpt, Ncmpts >::v_.
Referenced by DSMCParcel< ParcelType >::DSMCParcel(), KinematicParcel< ParcelType >::KinematicParcel(), and molecule::molecule().
|
inlinestatic |
Return a VectorSpace with all elements = s.
Definition at line 164 of file VectorSpaceI.H.
|
inline |
Definition at line 247 of file VectorSpaceI.H.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and VectorSpace< Form, Cmpt, Ncmpts >::v_.
Definition at line 266 of file VectorSpaceI.H.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and VectorSpace< Form, Cmpt, Ncmpts >::v_.
|
inline |
Definition at line 337 of file VectorSpaceI.H.
Referenced by MatrixSpace< Form, Cmpt, Mrows, Ncols >::operator=().
|
inline |
Definition at line 347 of file VectorSpaceI.H.
|
inline |
Definition at line 357 of file VectorSpaceI.H.
|
inline |
Definition at line 367 of file VectorSpaceI.H.
References VectorSpaceOps< N, I >::eqOpS().
|
inline |
Definition at line 374 of file VectorSpaceI.H.
References VectorSpaceOps< N, I >::eqOpS(), and s().
|
inline |
Definition at line 384 of file VectorSpaceI.H.
References VectorSpaceOps< N, I >::eqOpS(), and s().
|
inlinenoexcept |
Return an iterator to begin of VectorSpace.
Definition at line 199 of file VectorSpaceI.H.
References VectorSpace< Form, Cmpt, Ncmpts >::v_.
Referenced by Foam::eigenValues().
|
inlinenoexcept |
Return an iterator to end of VectorSpace.
Definition at line 206 of file VectorSpaceI.H.
Referenced by Foam::eigenValues().
|
inlinenoexcept |
Return const_iterator to begin of VectorSpace.
Definition at line 213 of file VectorSpaceI.H.
References VectorSpace< Form, Cmpt, Ncmpts >::v_.
|
inlinenoexcept |
Return const_iterator to end of VectorSpace.
Definition at line 221 of file VectorSpaceI.H.
References VectorSpace< Form, Cmpt, Ncmpts >::v_.
|
inlinenoexcept |
Return const_iterator to begin of VectorSpace.
Definition at line 229 of file VectorSpaceI.H.
References VectorSpace< Form, Cmpt, Ncmpts >::v_.
|
inlinenoexcept |
Return const_iterator to end of VectorSpace.
Definition at line 237 of file VectorSpaceI.H.
|
inline |
Definition at line 176 of file VectorSpaceI.H.
|
friend |
|
friend |
Cmpt v_[Ncmpts] |
The components of this vector space.
Definition at line 83 of file VectorSpace.H.
Referenced by VectorSpace< Form, Cmpt, Ncmpts >::begin(), VectorSpace< Form, Cmpt, Ncmpts >::cbegin(), VectorSpace< Barycentric< Cmpt >, Cmpt, 4 >::cend(), VectorSpace< Form, Cmpt, Ncmpts >::cend(), Foam::cmptMax(), Foam::cmptMin(), Foam::cmptProduct(), Foam::cmptSum(), VectorSpace< Form, Cmpt, Ncmpts >::component(), VectorSpace< Form, Cmpt, Ncmpts >::data(), Patch::faceCentres(), Foam::magSqr(), VectorSpace< Barycentric< Cmpt >, Cmpt, 4 >::operator-=(), VectorSpace< Form, Cmpt, Ncmpts >::operator[](), and VectorSpace< Form, Cmpt, Ncmpts >::replace().
|
staticconstexpr |
Dimensionality of space.
Definition at line 98 of file VectorSpace.H.
|
staticconstexpr |
Number of components in this vector space.
Definition at line 101 of file VectorSpace.H.
Referenced by VectorSpace< Form, Cmpt, Ncmpts >::ConstBlock< SubVector, BStart >::ConstBlock().
|
staticconstexpr |
Definition at line 107 of file VectorSpace.H.
Referenced by Matrix< Form, Type >::block(), and Matrix< RectangularMatrix< Type >, Type >::shallowResize().
|
staticconstexpr |
Definition at line 108 of file VectorSpace.H.
Referenced by Matrix< Form, Type >::block(), and Matrix< RectangularMatrix< Type >, Type >::shallowResize().
|
static |
Definition at line 113 of file VectorSpace.H.
|
static |
Definition at line 114 of file VectorSpace.H.
|
static |
Definition at line 115 of file VectorSpace.H.
|
static |
Definition at line 116 of file VectorSpace.H.
|
static |
Definition at line 117 of file VectorSpace.H.
Referenced by treeDataEdge::findNearestOp::operator()(), and treeDataPoint::findNearestOp::operator()().
|
static |
Definition at line 118 of file VectorSpace.H.
Referenced by treeDataEdge::findNearestOp::operator()(), and treeDataPoint::findNearestOp::operator()().
|
static |
Definition at line 119 of file VectorSpace.H.
|
static |
Definition at line 120 of file VectorSpace.H.