ROOT » MATH » SMATRIX » ROOT::Math::SVector<double,6>

class ROOT::Math::SVector<double,6>


    SVector: a generic fixed size Vector class.
    The class is template on the scalar type and on the vector size D.
    See \ref SVectorDoc

    Original author is Thorsten Glebe
    HERA-B Collaboration, MPI Heidelberg (Germany)

    @ingroup SMatrixSVector

    @authors T. Glebe, L. Moneta and J. Palacios



 SVector

Function Members (Methods)

public:
~SVector<double,6>()
doubleapply(unsigned int i) const
const double*Array() const
double*Array()
const double&At(unsigned int i) const
double&At(unsigned int i)
ROOT::Math::SVector<double,6>::iteratorbegin()
ROOT::Math::SVector<double,6>::const_iteratorbegin() const
static unsigned intDim()
ROOT::Math::SVector<double,6>::iteratorend()
ROOT::Math::SVector<double,6>::const_iteratorend() const
boolIsInUse(const double* p) const
booloperator!=(const double& rhs) const
booloperator!=(const ROOT::Math::SVector<double,6U>& rhs) const
const double&operator()(unsigned int i) const
double&operator()(unsigned int i)
ROOT::Math::SVector<double,6U>&operator*=(const double& rhs)
ROOT::Math::SVector<double,6U>&operator+=(const double& rhs)
ROOT::Math::SVector<double,6U>&operator+=(const ROOT::Math::SVector<double,6U>& rhs)
ROOT::Math::SVector<double,6U>&operator-=(const double& rhs)
ROOT::Math::SVector<double,6U>&operator-=(const ROOT::Math::SVector<double,6U>& rhs)
ROOT::Math::SVector<double,6U>&operator/=(const double& rhs)
booloperator<(const double& rhs) const
booloperator<(const ROOT::Math::SVector<double,6U>& rhs) const
ROOT::Math::SVector<double,6U>&operator=(const double& a1)
ROOT::Math::SVector<double,6>&operator=(const ROOT::Math::SVector<double,6>&)
booloperator==(const double& rhs) const
booloperator==(const ROOT::Math::SVector<double,6U>& rhs) const
booloperator>(const double& rhs) const
booloperator>(const ROOT::Math::SVector<double,6U>& rhs) const
const double&operator[](unsigned int i) const
double&operator[](unsigned int i)
ostream&Print(ostream& os) const
ROOT::Math::SVector<double,6>SVector<double,6>()
ROOT::Math::SVector<double,6>SVector<double,6>(const ROOT::Math::SVector<double,6U>& rhs)
ROOT::Math::SVector<double,6>SVector<double,6>(const double& a1)
ROOT::Math::SVector<double,6>SVector<double,6>(const double* a, unsigned int len)
ROOT::Math::SVector<double,6>SVector<double,6>(ROOT::Math::SVector<double,6>::const_iterator begin, ROOT::Math::SVector<double,6>::const_iterator end)
ROOT::Math::SVector<double,6>SVector<double,6>(const double& a1, const double& a2)
ROOT::Math::SVector<double,6>SVector<double,6>(const double& a1, const double& a2, const double& a3)
ROOT::Math::SVector<double,6>SVector<double,6>(const double& a1, const double& a2, const double& a3, const double& a4)
ROOT::Math::SVector<double,6>SVector<double,6>(const double& a1, const double& a2, const double& a3, const double& a4, const double& a5)
ROOT::Math::SVector<double,6>SVector<double,6>(const double& a1, const double& a2, const double& a3, const double& a4, const double& a5, const double& a6)
ROOT::Math::SVector<double,6>SVector<double,6>(const double& a1, const double& a2, const double& a3, const double& a4, const double& a5, const double& a6, const double& a7)
ROOT::Math::SVector<double,6>SVector<double,6>(const double& a1, const double& a2, const double& a3, const double& a4, const double& a5, const double& a6, const double& a7, const double& a8)
ROOT::Math::SVector<double,6>SVector<double,6>(const double& a1, const double& a2, const double& a3, const double& a4, const double& a5, const double& a6, const double& a7, const double& a8, const double& a9)
ROOT::Math::SVector<double,6>SVector<double,6>(const double& a1, const double& a2, const double& a3, const double& a4, const double& a5, const double& a6, const double& a7, const double& a8, const double& a9, const double& a10)
ROOT::Math::SVector<double,6U>&Unit()

Data Members

public:
static ROOT::Math::SVector<double,6>::(anonymous)kSize
private:
doublefArray[6]

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

SVector<T,D>& operator=(const T& a1)
 assignment from a scalar (only for size 1 vector)
SVector<T,D>& operator=(const VecExpr<A,T,D>& rhs)
 assignment  from Vector Expression
unsigned int Dim()
 return dimension $D$
{ return D; }
T apply(unsigned int i) const
 access the parse tree. Index starts from zero
const T* Array() const
 return read-only pointer to internal array
T* Array()
 return non-const pointer to internal array
iterator begin()
 @name --- STL-like interface --- 
 STL iterator interface. 
iterator end()
 STL iterator interface. 
const_iterator begin() const
 STL const_iterator interface. 
const_iterator end() const
 STL const_iterator interface. 
bool operator==(const T& rhs)
 @name --- Operators --- 
 element wise comparison
bool operator!=(const T& rhs)
 element wise comparison
bool operator==(const SVector<T,D>& rhs)
 element wise comparison
bool operator!=(const SVector<T,D>& rhs)
 element wise comparison
bool operator>(const T& rhs)
 element wise comparison
bool operator<(const T& rhs)
 element wise comparison
bool operator>(const SVector<T,D>& rhs)
 element wise comparison
bool operator<(const SVector<T,D>& rhs)
 element wise comparison
const T& operator[](unsigned int i) const
 read-only access of vector elements. Index starts from 0.
const T& operator()(unsigned int i) const
 read-only access of vector elements. Index starts from 0.
const T& At(unsigned int i) const
 read-only access of vector elements with check on index. Index starts from 0.
T& operator[](unsigned int i)
 read/write access of vector elements. Index starts from 0.
T& operator()(unsigned int i)
 read/write access of vector elements. Index starts from 0.
T& At(unsigned int i)
 read/write access of vector elements with check on index. Index starts from 0.
SVector<T,D>& operator+=(const T& rhs)
 self addition with a scalar
SVector<T,D>& operator-=(const T& rhs)
 self subtraction with a scalar
SVector<T,D>& operator*=(const double& rhs)
 self multiplication with a scalar
SVector<T,D>& operator/=(const double& rhs)
 self division with a scalar
SVector<T,D>& operator+=(const SVector<T,D>& rhs)
 self addition with another vector
SVector<T,D>& operator-=(const SVector<T,D>& rhs)
 self subtraction with another vector
SVector<T,D>& Unit()
 @name --- Expert functions --- 
 transform vector into a vector of length 1
bool IsInUse(const double* p) const
       Function to check if a vector is sharing same memory location of the passed pointer
       This function is used by the expression templates to avoid the alias problem during
       expression evaluation. When  the vector is in use, for example in operations
       like V = M * V, where M is a mtrix, a temporary object storing the intermediate result is automatically
       created when evaluating the expression.


std::ostream& Print(ostream& os) const
 used by operator<<()