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... | |
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 () |
Return an iterator to begin of VectorSpace. More... | |
iterator | end () |
Return an iterator to end of VectorSpace. More... | |
const_iterator | cbegin () const |
Return const_iterator to begin of VectorSpace. More... | |
const_iterator | cend () const |
Return const_iterator to end of VectorSpace. More... | |
const_iterator | begin () const |
Return const_iterator to begin of VectorSpace. More... | |
const_iterator | end () const |
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 | |
const typedef Cmpt * | const_iterator |
Random access iterator for traversing VectorSpace. More... | |
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 |
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 56 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.
|
default |
Default construct.
|
inline |
Construct initialized to zero.
Definition at line 38 of file VectorSpaceI.H.
|
inline |
Copy construct.
Definition at line 46 of file VectorSpaceI.H.
|
inlineexplicit |
Copy construct of a VectorSpace with the same size.
Definition at line 57 of file VectorSpaceI.H.
|
explicit |
Construct from Istream.
Definition at line 37 of file VectorSpace.C.
|
inlinestaticconstexprnoexcept |
The number of elements in the VectorSpace = Ncmpts.
Definition at line 176 of file VectorSpace.H.
Referenced by streamLineParticle::move(), sampledPlane::print(), createShellMesh::setRefinement(), and Foam::zip().
|
inline |
Definition at line 87 of file VectorSpaceI.H.
Referenced by Foam::component(), NURBS3DVolume::computeParametricCoordinates(), coordinateRotation::findOrthogonal(), NURBS3DVolume::JacobianUVW(), cellMDLimitedGrad< Type >::limitFace(), starcd::rotation(), euler::rotation(), and Foam::setComponent().
|
inline |
Definition at line 106 of file VectorSpaceI.H.
|
inline |
Definition at line 125 of file VectorSpaceI.H.
|
inline |
Definition at line 145 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 192 of file VectorSpaceI.H.
|
inlinenoexcept |
Return pointer to the first data element.
Definition at line 185 of file VectorSpaceI.H.
|
inlinestatic |
Return a VectorSpace with all elements = s.
Definition at line 164 of file VectorSpaceI.H.
|
inline |
Definition at line 244 of file VectorSpaceI.H.
Definition at line 263 of file VectorSpaceI.H.
|
inline |
Definition at line 334 of file VectorSpaceI.H.
Referenced by MatrixSpace< BarycentricTensor< Cmpt >, Cmpt, 4, 3 >::operator=().
|
inline |
Definition at line 344 of file VectorSpaceI.H.
|
inline |
Definition at line 354 of file VectorSpaceI.H.
|
inline |
Definition at line 363 of file VectorSpaceI.H.
|
inline |
Definition at line 371 of file VectorSpaceI.H.
|
inline |
Definition at line 381 of file VectorSpaceI.H.
|
inline |
Return an iterator to begin of VectorSpace.
Definition at line 199 of file VectorSpaceI.H.
Referenced by Foam::eigenValues().
|
inline |
Return an iterator to end of VectorSpace.
Definition at line 206 of file VectorSpaceI.H.
Referenced by Foam::eigenValues().
|
inline |
Return const_iterator to begin of VectorSpace.
Definition at line 213 of file VectorSpaceI.H.
|
inline |
Return const_iterator to end of VectorSpace.
Definition at line 220 of file VectorSpaceI.H.
|
inline |
Return const_iterator to begin of VectorSpace.
Definition at line 227 of file VectorSpaceI.H.
|
inline |
Return const_iterator to end of VectorSpace.
Definition at line 234 of file VectorSpaceI.H.
|
inline |
Definition at line 176 of file VectorSpaceI.H.
|
friend |
|
friend |
const typedef Cmpt* const_iterator |
Random access iterator for traversing VectorSpace.
Definition at line 220 of file VectorSpace.H.
Cmpt v_[Ncmpts] |
The components of this vector space.
Definition at line 83 of file VectorSpace.H.
Referenced by Foam::cmptMax(), Foam::cmptMin(), Foam::cmptProduct(), Foam::cmptSum(), Patch::faceCentres(), Foam::magSqr(), Foam::operator&&(), Foam::operator<(), Foam::operator==(), and Foam::operator>().
|
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.
|
staticconstexpr |
Definition at line 107 of file VectorSpace.H.
|
staticconstexpr |
Definition at line 108 of file VectorSpace.H.
|
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 trackingInverseDistance::markBoundaries(), inverseDistance::markBoundaries(), treeDataPoint::findNearestOp::operator()(), treeDataEdge::findNearestOp::operator()(), orientedSurface::orientedSurface(), distributedTriSurfaceMesh::overlappingSurface(), searchableDisk::searchableDisk(), and sampledMeshedSurface::update().
|
static |
Definition at line 118 of file VectorSpace.H.
Referenced by treeDataPoint::findNearestOp::operator()(), treeDataEdge::findNearestOp::operator()(), distributedTriSurfaceMesh::overlappingSurface(), searchableDisk::searchableDisk(), searchableSurfaceCollection::searchableSurfaceCollection(), and sampledMeshedSurface::update().
|
static |
Definition at line 119 of file VectorSpace.H.
|
static |
Definition at line 120 of file VectorSpace.H.