1 #ifndef GeometryVector_PV3DBase_h
2 #define GeometryVector_PV3DBase_h
14 template <
class T,
class PVType,
class FrameType>
82 template <
class T,
class PV,
class F>
83 inline std::ostream & operator<<( std::ostream& s, const PV3DBase<T,PV,F>&
v) {
84 return s <<
v.basicVector();
87 #endif // GeometryVector_PV3DBase_h
T y() const
Cartesian y coordinate.
T x() const
Cartesian x coordinate.
T mag() const
The vector magnitude. Equivalent to sqrt(vec.mag2())
T perp2() const
Squared magnitude of transverse component.
Geom::Theta< T > theta() const
Geom::Phi< T > phi() const
PV3DBase(const T &x, const T &y, const T &z)
construct from cartesian coordinates
Geom::Phi< T > phi() const
Geom::Theta< T > theta() const
Basic3DVector< T > BasicVectorType
T z() const
Cartesian z coordinate.
BasicVectorType::Cylindrical Cylindrical
MathVector & mathVector()
PV3DBase(const Cylindrical &set)
T perp() const
Magnitude of transverse component.
MathVector const & mathVector() const
PV3DBase(const Basic3DVector< U > &v)
BasicVectorType::MathVector MathVector
PV3DBase(const Geom::Theta< T > &th, const Geom::Phi< T > &ph, const T &r)
BasicVectorType theVector
BasicVectorType::Polar Polar
BasicVectorType::Spherical Spherical
T transverse() const
Another name for perp()
PV3DBase(const Polar &set)
construct from polar coordinates
const BasicVectorType & basicVector() const
T mag2() const
The vector magnitude squared. Equivalent to vec.dot(vec)