Rosetta Utilities  2014.35
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
numeric::MathVector< T > Class Template Reference

#include <MathVector.hh>

Public Member Functions

 MathVector ()
 default constructor More...
 
 MathVector (const Size SIZE, const T &FILL_VALUE=T(0))
 construct from size and possible filler More...
 
 MathVector (const Size SIZE, const T *DATA)
 construct from length and pointer to data More...
 
 MathVector (const MathVector< T > &VECTOR)
 copy constructor More...
 
MathVector< T > * clone () const
 Clone function. More...
 
 ~MathVector ()
 @ brief destructor More...
 
Size size () const
 size of vector More...
 
const T * begin () const
 pointer to First Element More...
 
T * begin ()
 pointer to First Element More...
 
const T * end () const
 pointer to end of range More...
 
T * end ()
 pointer to end of range More...
 
norm () const
 norm = length of vector More...
 
square_norm () const
 square norm = square length of vector More...
 
sum () const
 sum up all elements More...
 
MathVector< T > MakeVector (const T &X)
 construct vector from one element More...
 
MathVector< T > MakeVector (const T &X, const T &Y)
 construct vector from two elements More...
 
MathVector< T > MakeVector (const T &X, const T &Y, const T &Z)
 construct vector from three elements More...
 
T & operator() (const Size POS)
 return reference to changeable element ( POS) More...
 
const T & operator() (const Size POS) const
 return copy of element ( POS) More...
 
MathVector< T > & operator= (const MathVector< T > &VECTOR)
 equal operator More...
 
MathVector< T > & operator= (const T &VALUE)
 equal operator More...
 
MathVector< T > & operator+= (const T &VALUE)
 operator += VALUE More...
 
MathVector< T > & operator-= (const T &VALUE)
 operator -= VALUE More...
 
MathVector< T > & operator*= (const T &VALUE)
 operator *= VALUE More...
 
MathVector< T > & operator/= (const T &VALUE)
 operator /= VALUE More...
 
MathVector< T > & operator-= (const MathVector< T > &BASE)
 operator -= BASE More...
 
MathVector< T > & operator+= (const MathVector< T > &BASE)
 operator += BASE More...
 

Protected Member Functions

bool assert_valid_position (const Size POS) const
 check whether position is valid More...
 

Private Attributes

Size size_
 length of vector More...
 
T * data_
 range of dynamically allocated memory of size size_ More...
 

Constructor & Destructor Documentation

template<typename T>
numeric::MathVector< T >::MathVector ( )
inline

default constructor

template<typename T>
numeric::MathVector< T >::MathVector ( const Size  SIZE,
const T &  FILL_VALUE = T( 0) 
)
inlineexplicit

construct from size and possible filler

Parameters
SIZEnumber fo elements in Vector
FILL_VALUEassign every element to that value
template<typename T>
numeric::MathVector< T >::MathVector ( const Size  SIZE,
const T *  DATA 
)
inline

construct from length and pointer to data

template<typename T>
numeric::MathVector< T >::MathVector ( const MathVector< T > &  VECTOR)
inline

copy constructor

Parameters
VECTORcopy the given Vector
template<typename T>
numeric::MathVector< T >::~MathVector ( )
inline

@ brief destructor

Member Function Documentation

template<typename T>
bool numeric::MathVector< T >::assert_valid_position ( const Size  POS) const
inlineprotected

check whether position is valid

Referenced by numeric::MathVector< Real >::operator()().

template<typename T>
const T* numeric::MathVector< T >::begin ( ) const
inline
template<typename T>
T* numeric::MathVector< T >::begin ( )
inline

pointer to First Element

Returns
pointer to first element in range containing all elements of Vector
template<typename T>
MathVector< T>* numeric::MathVector< T >::clone ( ) const
inline

Clone function.

Returns
pointer to new Vector< T>
template<typename T>
const T* numeric::MathVector< T >::end ( ) const
inline
template<typename T>
T* numeric::MathVector< T >::end ( )
inline

pointer to end of range

Returns
pointer to address one after last element in Vector
template<typename T>
MathVector< T> numeric::MathVector< T >::MakeVector ( const T &  X)
inline

construct vector from one element

template<typename T>
MathVector< T> numeric::MathVector< T >::MakeVector ( const T &  X,
const T &  Y 
)
inline

construct vector from two elements

template<typename T>
MathVector< T> numeric::MathVector< T >::MakeVector ( const T &  X,
const T &  Y,
const T &  Z 
)
inline

construct vector from three elements

template<typename T>
T numeric::MathVector< T >::norm ( ) const
inline

norm = length of vector

Returns
length of vector

Referenced by numeric::proj_angl().

template<typename T>
T& numeric::MathVector< T >::operator() ( const Size  POS)
inline

return reference to changeable element ( POS)

template<typename T>
const T& numeric::MathVector< T >::operator() ( const Size  POS) const
inline

return copy of element ( POS)

template<typename T>
MathVector< T>& numeric::MathVector< T >::operator*= ( const T &  VALUE)
inline

operator *= VALUE

template<typename T>
MathVector<T>& numeric::MathVector< T >::operator+= ( const T &  VALUE)
inline

operator += VALUE

template<typename T>
MathVector< T>& numeric::MathVector< T >::operator+= ( const MathVector< T > &  BASE)
inline

operator += BASE

template<typename T>
MathVector< T>& numeric::MathVector< T >::operator-= ( const T &  VALUE)
inline

operator -= VALUE

template<typename T>
MathVector< T>& numeric::MathVector< T >::operator-= ( const MathVector< T > &  BASE)
inline

operator -= BASE

template<typename T>
MathVector< T>& numeric::MathVector< T >::operator/= ( const T &  VALUE)
inline

operator /= VALUE

template<typename T>
MathVector< T>& numeric::MathVector< T >::operator= ( const MathVector< T > &  VECTOR)
inline

equal operator

Parameters
VECTORsource vector
Returns
reference to this assigned Vector
template<typename T>
MathVector< T>& numeric::MathVector< T >::operator= ( const T &  VALUE)
inline

equal operator

Parameters
VALUEall elements are set to that value
Returns
reference to this assigned Vector
template<typename T>
Size numeric::MathVector< T >::size ( ) const
inline
template<typename T>
T numeric::MathVector< T >::square_norm ( ) const
inline

square norm = square length of vector

Returns
square length of vector

Referenced by numeric::MathVector< Real >::norm().

template<typename T>
T numeric::MathVector< T >::sum ( ) const
inline

sum up all elements

Returns
sum of all elements

Member Data Documentation

template<typename T>
T* numeric::MathVector< T >::data_
private
template<typename T>
Size numeric::MathVector< T >::size_
private

The documentation for this class was generated from the following file: