1 #ifndef GeometryVector_Vector3DBase_h
2 #define GeometryVector_Vector3DBase_h
8 template <
class T,
class FrameTag>
127 template <
class T,
class U,
class FrameTag>
134 template <
class T,
class U,
class FrameTag>
142 template <
class T,
class U,
class FrameTag>
151 template <
class T,
class FrameTag,
class Scalar>
158 template <
class T,
class FrameTag,
class Scalar>
167 template <
class T,
class FrameTag,
class Scalar>
173 #endif // GeometryVector_Vector3DBase_h
Vector3DBase< T, FrameTag > VectorType
bool operator==(const Vector3DBase &rh) const
MatrixMeschach operator+(const MatrixMeschach &mat1, const MatrixMeschach &mat2)
Vector3DBase(const Cylindrical &set)
Vector3DBase(const Geom::Theta< T > &th, const Geom::Phi< T > &ph, const T &r)
MatrixMeschach operator-(const MatrixMeschach &mat1, const MatrixMeschach &mat2)
Basic3DVector cross(const Basic3DVector &lh) const
Vector product, or "cross" product, with a vector of same type.
BaseClass::Spherical Spherical
PreciseFloatType< T, U >::Type dot(const Vector3DBase< U, FrameTag > &v) const
Vector3DBase(const Basic3DVector< U > &v)
Vector3DBase(const Polar &set)
construct from polar coordinates
Basic3DVector< long double > operator/(const Basic3DVector< long double > &v, S s)
Vector3DBase & operator/=(const T &t)
Scaling by a scalar value (division)
Vector3DBase< typename PreciseFloatType< T, U >::Type, FrameTag > cross(const Vector3DBase< U, FrameTag > &v) const
Vector3DBase & operator+=(const Vector3DBase< U, FrameTag > &v)
BaseClass::Cylindrical Cylindrical
Vector3DBase & operator*=(const T &t)
Scaling by a scalar value (multiplication)
Vector3DBase(const T &x, const T &y, const T &z)
construct from cartesian coordinates
Vector3DBase unit() const
Vector3DBase(const Vector3DBase< U, FrameTag > &v)
PV3DBase< T, VectorTag, FrameTag > BaseClass
Vector3DBase & operator-=(const Vector3DBase< U, FrameTag > &v)
BaseClass::BasicVectorType BasicVectorType
BasicVectorType theVector
Vector3DBase operator-() const
Unary minus, returns a vector with components (-x(),-y(),-z())
MatrixMeschach operator*(const MatrixMeschach &mat1, const MatrixMeschach &mat2)
const BasicVectorType & basicVector() const
T dot(const Basic3DVector &rh) const
Scalar product, or "dot" product, with a vector of same type.
void set(const std::string &name, int value)
set the flag, with a run-time name