PARTONS/NumA++  
Numerical Analysis C++ routines
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
NumA::VectorD Class Reference

Object representing a mathematical vector. More...

Public Member Functions

 VectorD ()
 Default constructor. More...
 
 VectorD (size_t size)
 Construct a vector of given size initialized at 0. More...
 
 VectorD (size_t size, double initValue)
 Construct a vector of given size initialized at initValue. More...
 
 VectorD (const std::vector< double > &vector)
 Copy constructor. More...
 
 VectorD (const VectorD &vector)
 Copy constructor. More...
 
 VectorD (const Vector2D &vector)
 Copy constructor. More...
 
 VectorD (const Vector3D &vector)
 Copy constructor. More...
 
 VectorD (const Vector4D &vector)
 Copy constructor. More...
 
virtual ~VectorD ()
 Default destructor. More...
 
void push_back (double value)
 Same as std::vector. More...
 
void resize (size_t n, double value=0.)
 Same as std::vector. More...
 
void assign (size_t n, double value=0.)
 Same as std::vector. More...
 
size_t size () const
 
VectorD sub (size_t startPos, size_t endPos) const
 Returns a subset of the vector: [startPos:endPos[. More...
 
double operator* (const VectorD &rhs) const
 Scalar product. More...
 
VectorD operator- (const VectorD &rhs) const
 Subtraction. More...
 
VectorD operator+ (const VectorD &rhs) const
 Addition. More...
 
VectorD operator* (double rhs) const
 Multiplication of all coefficients by a scalar. More...
 
VectorD operator+ (double rhs) const
 Addition of all coefficients with a scalar. More...
 
VectorD operator- (double rhs) const
 Subtraction of all coefficient with a scalar. More...
 
VectorD operator/ (double rhs) const
 Division of all coefficients by a scalar. More...
 
double norm () const
 Norm 2. More...
 
MatrixD toMatrix ()
 Conversion to a matrix of one column. More...
 
double & operator[] (size_t n)
 Direct accessor in memory with the specified index value n. More...
 
double & at (size_t n)
 Same as std::vector. More...
 
const double & operator[] (size_t n) const
 Direct accessor in memory with the specified index value n. More...
 
const double & at (size_t n) const
 Same as std::vector. More...
 
const std::vector< double > & toStdVector () const
 Conversion to std::vector. More...
 
std::string toString () const
 Return a formatted characters string to display vector's values. More...
 

Static Public Member Functions

static VectorD concatenate (const VectorD &V1, const VectorD &V2)
 Concatenation of two vectors. More...
 

Private Attributes

std::vector< double > m_vector
 An array of double to represent the vector in memory. More...
 

Detailed Description

Object representing a mathematical vector.

Constructor & Destructor Documentation

◆ VectorD() [1/8]

NumA::VectorD::VectorD ( )

Default constructor.

◆ VectorD() [2/8]

NumA::VectorD::VectorD ( size_t  size)

Construct a vector of given size initialized at 0.

Parameters
sizeSize of the vector.

◆ VectorD() [3/8]

NumA::VectorD::VectorD ( size_t  size,
double  initValue 
)

Construct a vector of given size initialized at initValue.

Parameters
sizeSize of the vector.
initValueDefault value for the coefficients.

◆ VectorD() [4/8]

NumA::VectorD::VectorD ( const std::vector< double > &  vector)

Copy constructor.

Parameters
vectorstd::vector<double>

◆ VectorD() [5/8]

NumA::VectorD::VectorD ( const VectorD vector)

Copy constructor.

Parameters
vectorVectorD

◆ VectorD() [6/8]

NumA::VectorD::VectorD ( const Vector2D vector)

Copy constructor.

Parameters
vectorVector2D

◆ VectorD() [7/8]

NumA::VectorD::VectorD ( const Vector3D vector)

Copy constructor.

Parameters
vectorVector3D

◆ VectorD() [8/8]

NumA::VectorD::VectorD ( const Vector4D vector)

Copy constructor.

Parameters
vectorVector4D

◆ ~VectorD()

NumA::VectorD::~VectorD ( )
virtual

Default destructor.

Member Function Documentation

◆ assign()

void NumA::VectorD::assign ( size_t  n,
double  value = 0. 
)

Same as std::vector.

◆ at() [1/2]

double & NumA::VectorD::at ( size_t  n)

Same as std::vector.

◆ at() [2/2]

const double & NumA::VectorD::at ( size_t  n) const

Same as std::vector.

◆ concatenate()

VectorD NumA::VectorD::concatenate ( const VectorD V1,
const VectorD V2 
)
static

Concatenation of two vectors.

Parameters
V1
V2
Returns
VectorD of size V1.size() + V2.size()

◆ norm()

double NumA::VectorD::norm ( ) const

Norm 2.

Returns
double

◆ operator*() [1/2]

double NumA::VectorD::operator* ( const VectorD rhs) const

Scalar product.

Parameters
rhsVectorD of same size.
Returns
double

◆ operator*() [2/2]

VectorD NumA::VectorD::operator* ( double  rhs) const

Multiplication of all coefficients by a scalar.

Parameters
rhsScalar.
Returns
Vector.

◆ operator+() [1/2]

VectorD NumA::VectorD::operator+ ( const VectorD rhs) const

Addition.

Parameters
rhsVectorD of same size.
Returns
VectorD of same size.

◆ operator+() [2/2]

VectorD NumA::VectorD::operator+ ( double  rhs) const

Addition of all coefficients with a scalar.

Parameters
rhsScalar.
Returns
Vector.

◆ operator-() [1/2]

VectorD NumA::VectorD::operator- ( const VectorD rhs) const

Subtraction.

Parameters
rhsVectorD of same size.
Returns
VectorD of same size.

◆ operator-() [2/2]

VectorD NumA::VectorD::operator- ( double  rhs) const

Subtraction of all coefficient with a scalar.

Parameters
rhsScalar.
Returns
Vector.

◆ operator/()

VectorD NumA::VectorD::operator/ ( double  rhs) const

Division of all coefficients by a scalar.

Parameters
rhsScalar.
Returns
Vector.

◆ operator[]() [1/2]

double & NumA::VectorD::operator[] ( size_t  n)

Direct accessor in memory with the specified index value n.

Parameters
n
Returns
double

◆ operator[]() [2/2]

const double & NumA::VectorD::operator[] ( size_t  n) const

Direct accessor in memory with the specified index value n.

Parameters
n
Returns
double

◆ push_back()

void NumA::VectorD::push_back ( double  value)

Same as std::vector.

◆ resize()

void NumA::VectorD::resize ( size_t  n,
double  value = 0. 
)

Same as std::vector.

◆ size()

size_t NumA::VectorD::size ( ) const
Returns
size_t Size of the vector.

◆ sub()

VectorD NumA::VectorD::sub ( size_t  startPos,
size_t  endPos 
) const

Returns a subset of the vector: [startPos:endPos[.

Parameters
startPos
endPos
Returns
VectorD

◆ toMatrix()

MatrixD NumA::VectorD::toMatrix ( )

Conversion to a matrix of one column.

Returns
MatrixD typed vector column.

◆ toStdVector()

const std::vector< double > & NumA::VectorD::toStdVector ( ) const

Conversion to std::vector.

◆ toString()

std::string NumA::VectorD::toString ( ) const

Return a formatted characters string to display vector's values.

Returns
std::string

Member Data Documentation

◆ m_vector

std::vector<double> NumA::VectorD::m_vector
private

An array of double to represent the vector in memory.


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