C++ main module for mmsd Package  1.0
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
MMSD_DoubleVector Class Reference

#include <MMSD_DoubleVector.h>

Inheritance diagram for MMSD_DoubleVector:
Inheritance graph
[legend]
Collaboration diagram for MMSD_DoubleVector:
Collaboration graph
[legend]

Public Member Functions

 MMSD_DoubleVector (void)
 create an object More...
 
 MMSD_DoubleVector (const int &n)
 create an object More...
 
 MMSD_DoubleVector (const MMSD_DoubleVector &s)
 build a vector More...
 
virtual ~MMSD_DoubleVector (void)
 destroy an object. More...
 
MMSD_DoubleVectoroperator= (const lapack_real &s)
 copy operator the view is taken into account More...
 
MMSD_DoubleVectoroperator= (const MMSD_DoubleVector &s)
 copy operator the view is taken into account More...
 
MMSD_DoubleVectoroperator= (const MMSD_ConstDoubleVector &s)
 copy operator the view is taken into account More...
 
double triProduct (const double *b, const double *c) const
 tri scalar product More...
 
double quadProduct (const double *a, const double *b, const double *c) const
 quad scalar product More...
 
virtual tLVectorIndex getNullValuesNumber (const tReal &eps) const
 
LAP_DoubleVectoroperator+= (const double &s)
 add operator More...
 
LAP_DoubleVectoroperator+= (const LAP_Vector< lapack_real > &s)
 add vector operator use daxpy blas method More...
 
LAP_DoubleVectoroperator-= (const double &s)
 sub operator More...
 
LAP_DoubleVectoroperator-= (const LAP_Vector< lapack_real > &s)
 sub vector operator use daxpy blas method More...
 
LAP_DoubleVectoroperator^= (const double &s)
 power operator More...
 
LAP_DoubleVectoroperator/= (const LAP_DoubleVector &s)
 division elementt by elementt vector operator More...
 
LAP_DoubleVectoroperator/= (const lapack_real &s)
 divide operator More...
 
LAP_DoubleVectoroperator*= (const LAP_DoubleVector &s)
 division elementt by elementt vector operator More...
 
LAP_DoubleVectoroperator*= (const lapack_real &s)
 scale operator More...
 
void copy (const LAP_Vector< lapack_real > &v)
 copy the vector v into this. the view is set to [0,v.getSize()[ the viewed values of v is copied into this use (dcopy blas routine) More...
 
void copy (const LAP_ConstVector< lapack_real > &v)
 copy the vector the view is set to [0,v.getSize()[ the viewed values of v is copied into this use (dcopy blas routine) More...
 
virtual void copy (const vector< lapack_real > &vs)
 copy a vector of real More...
 
double product (const LAP_DoubleVector &v) const
 return result=<this,vect> the view is taken into account ddot blas method called More...
 
void add (const lapack_real &alpha, const LAP_Vector< lapack_real > &x)
 return this+=alpha. x the view is taken into account daxpy blas method called More...
 
void add (const lapack_real &alpha, const tLVectorIndex n, const lapack_real *x)
 return this+=alpha. x the view is taken into account daxpy blas method called More...
 
virtual void add (const tLVectorIndex &i, const lapack_real &v)
 return this[i]+=v the view is taken into account More...
 
void add (const lapack_real &s)
 add operator More...
 
void scale (const lapack_real &alpha)
 return this*=a the view is taken into account dscal blas method called More...
 
tLVectorIndex indexMax () const
 return the i such that |xi| is maximum idamax blas method called More...
 
double maxValue (tLVectorIndex &i) const
 set the i index such that xi is maximum and return its value More...
 
double minValue (tLVectorIndex &i) const
 set the i index such that xi is minimum and return its value More...
 
double norm1 () const
 return the sum(|xi|) dasum blas method called More...
 
double norm2 () const
 return the sqrt(sum([xi|^2)) dnrm2 blas method called More...
 
double sum () const
 return the sum(xi) More...
 
double normInf () const
 return the the maximum value of [xi| More...
 
double distance2 (const LAP_DoubleVector &b) const
 return the norm2 of (this-b) More...
 
double distance2 (SPC::LAP_DoubleVector b) const
 return the norm2 of (this-b) More...
 
tReal distance2 (const LAP_Vector< lapack_real > &a) const
 compute the distance between this and a More...
 
virtual tString toString () const
 turn the class to string More...
 
void getSharedPointer (boost::shared_ptr< LAP_Vector< lapack_real > > &p)
 return the shared pointer corresponding to the class with casting More...
 
void getSharedPointer (boost::shared_ptr< const LAP_Vector< lapack_real > > &p) const
 return the shared pointer corresponding to the class whith casting More...
 
void getSharedPointer (SP::CORE_Object &p)
 get the shared pointer of this class into p More...
 
void getSharedPointer (SPC::CORE_Object &p) const
 get the shared pointer of this class into p More...
 
const lapack_realoperator[] (const tLVectorIndex &i) const
 get the value for reading only More...
 
lapack_realoperator[] (const tLVectorIndex &i)
 get the value for reading & writing More...
 
lapack_realoperator() (const tLVectorIndex &i)
 get the value for reading & writing More...
 
const lapack_realoperator() (const tLVectorIndex &i) const
 get the value for reading only More...
 
void sub (const lapack_real &s)
 sub operator More...
 
void power (const lapack_real &s)
 power operator More...
 
void multiplyBy (const LAP_Vector< lapack_real > &s)
 multiplication element by element vector operator More...
 
LAP_Vector< lapack_real > & divideBy (const LAP_Vector< lapack_real > &s)
 division elementt by elementt vector operator More...
 
void setIsValuesReferenced (const tBoolean &isReferenced)
 deferenced the values the values is unreferenced : so it is not destroyed with this class is desctroyed More...
 
void setValues (const tLVectorIndex &n, lapack_real *&values, const tBoolean &isReferenced)
 
void setValues (const tLVectorIndex &n, const lapack_real *values)
 copy the values More...
 
void setValues (const tLVectorIndex &n, const tLVectorIncrement &incv, const lapack_real *values)
 copy the values More...
 
tBoolean setView (SP::LAP_View v)
 set the view More...
 
tBoolean setView (const tLVectorIndex &start, const tLVectorIndex &end, const tLVectorIndex &increment)
 set the view of the vector More...
 
void resetView ()
 set the view of the vector to all the values More...
 
void setSize (const tLVectorIndex &n)
 set the view to [0,n[ by 1 increment if values is too small, re-alocate it More...
 
void fit ()
 fit the vector More...
 
void init (const lapack_real &v)
 init the value to v from the view More...
 
void removeValues (const tLVectorIndex &index, const tLVectorIndex &n)
 remove n values of the array from index if values=[0,1,...,index,...index+n,index+n+,....,size[ the values {index,...index+n-1} are removed values becomes values=[0,...index-1,index+n,...,size-n[ More...
 
void set (const tLVectorIndex &i, const lapack_real &v)
 set element at index i taking into account the view More...
 
void merge (const lapack_real &alpha, const LAP_Vector< lapack_real > &x, const lapack_real &beta, const LAP_Vector< lapack_real > &y)
 this is the merging of 2 vectors This = [alpha.x,beta.y] More...
 
virtual const lapack_realgetValues () const
 get the values for reading More...
 
virtual lapack_realgetValues ()
 get the values for writing More...
 
virtual const lapack_realget (const tLVectorIndex &i) const
 get element at index i taking into account the view More...
 
tLVectorIndex getSize () const
 get the size of the vector More...
 
tLVectorIndex getCapacity () const
 get the capacity More...
 
const tLVectorIncrementgetIncrement () const
 get the increment of the vector More...
 
const tLVectorIndexgetStart () const
 get the start of the vector More...
 
void max (LAP_Vector< lapack_real > &y)
 y=max(this,y); More...
 
tLVectorIndex indexMin () const
 retun the index min of th evector More...
 
void quickSort ()
 quit sort the vector in an increasing order More...
 
void sort (const tFlag &order)
 sort in order view untaken into account More...
 
void sort ()
 sort in ascent order view untaken into account More...
 
tBoolean compare (const lapack_real &a, const lapack_real &b, const tFlag &order)
 compare More...
 
void reverse ()
 reverse the vector More...
 
double & getNullValue ()
 get a null value More...
 
const double & getNullValue () const
 get a const null value More...
 
tBoolean isNullValue (const double &v) const
 return true if the value is a null More...
 
tString getClassName () const
 return the class name of the object More...
 
tString getIdentityString () const
 return the identity string of the object of the form className_at_address More...
 
tString getPointerAddress () const
 return the identity string of the object More...
 
template<class T >
tBoolean isInstanceOf () const
 return true if the object is an instance of T More...
 
virtual void print ()
 print the class More...
 
virtual ostream & print (ostream &out) const
 print the class More...
 
virtual void print (const tString &message)
 print the class More...
 
virtual void print (const tInteger &str)
 print More...
 
virtual void print (const tRelativeInteger &str)
 print More...
 
virtual void print (const tReal &str)
 print More...
 
virtual void print (const int &str)
 print More...
 

Static Public Member Functions

static SP::MMSD_DoubleVector New ()
 
static SP::MMSD_DoubleVector New (const int &nElements)
 
static double triProduct (const tArrayIndex &n, const double *a, const double *b, const double *c)
 tri scalar product More...
 
static double quadProduct (const tArrayIndex &n, const double *a, const double *b, const double *c, const double *d)
 tri scalar product More...
 
static SP::LAP_DoubleVector New (const tLVectorIndex &s)
 create a new vector of double of size s More...
 
static SP::LAP_DoubleVector New (const LAP_DoubleVector &s)
 create a new copy of s the view is taken into account More...
 
static SP::LAP_DoubleVector New (SPC::LAP_DoubleVector s)
 create a new copy of s the view is taken into account More...
 
static SP::LAP_DoubleVector New (const vector< lapack_real > &vs)
 create a new copy of s the view is taken into account More...
 
static double product (const LAP_DoubleVector &v, const LAP_DoubleVector &w)
 
static void rotate (LAP_DoubleVector &dx, LAP_DoubleVector &dy, const lapack_real &c, const lapack_real &s)
 make a rotation of vector dx= c*dx+s*dy dy=-s*dx+c*dy the view is taken into account drot blas method called More...
 
static void buildRotation (lapack_real &dx, lapack_real &dy, lapack_real &c, lapack_real &s)
 build rotation the view is taken into account drotg blas method called More...
 
static void swap (LAP_DoubleVector &x, LAP_DoubleVector &y)
 swap the two vectors with the same length dswap method called More...
 
static tReal distance2 (const LAP_Vector< lapack_real > &a, const LAP_Vector< lapack_real > &b)
 compute the distance between 2 vectors a & b More...
 
static void max (const LAP_Vector< lapack_real > &x, LAP_Vector< lapack_real > &y)
 y=max(x,y); More...
 
static tString getClassName (const tString &identityString)
 return the class name of the object using only the identity string More...
 
template<class T >
static tString getTypeName ()
 get type name More...
 
static tBoolean is64Architecture ()
 return true if the machine is a 64 bits machine More...
 
static tBoolean is32Architecture ()
 return true if the machine is a 32 bits machine More...
 
static tString pointer2String (const void *obj)
 return the string represantation of a pointer More...
 
static void setOutput (ostream &out)
 set output More...
 
static ostream & getOutput ()
 get output More...
 
static void printObjectsInMemory ()
 print object in memory More...
 
static ostream & print (ostream &out, const tString &message)
 print the class More...
 
static void outputPrint (const tString &message)
 

Static Public Attributes

static const tFlag ASCENT
 
static const tFlag DESCENT
 
static double ZERO_EPSILON =1.e-18
 
static tBoolean mIsMemoryTesting =false
 indicator to store all classes created and deleted only for debuging version More...
 

Protected Member Functions

void setThis (SP::CORE_Object p)
 set this weak shared pointer called toDoAfterThis setting method More...
 
virtual void setType (tString type)
 set the type of the object More...
 
virtual void toDoAfterThisSetting ()
 method called after setThis() method this method can oly be called once. More...
 

Constructor & Destructor Documentation

MMSD_DoubleVector::MMSD_DoubleVector ( void  )

create an object

References CORE_Object::setType().

Referenced by New().

Here is the call graph for this function:

Here is the caller graph for this function:

MMSD_DoubleVector::MMSD_DoubleVector ( const int &  n)

create an object

References CORE_Object::setType().

Here is the call graph for this function:

MMSD_DoubleVector::MMSD_DoubleVector ( const MMSD_DoubleVector s)

build a vector

References CORE_Object::setType().

Here is the call graph for this function:

MMSD_DoubleVector::~MMSD_DoubleVector ( void  )
virtual

destroy an object.

Member Function Documentation

void LAP_Vector< lapack_real >::add ( const lapack_real s)
inlineinherited

add operator

void LAP_DoubleVector::add ( const lapack_real alpha,
const LAP_Vector< lapack_real > &  x 
)
inlineinherited

return this+=alpha. x the view is taken into account daxpy blas method called

References DoubleVectorAdd(), LAP_Vector< lapack_real >::getIncrement(), LAP_Vector< T >::getIncrement(), LAP_Vector< lapack_real >::getSize(), and LAP_Vector< T >::getSize().

Referenced by LAP_DoubleVector::operator+=(), LAP_DoubleVector::operator-=(), and MMSD_GaussianLaw::updateMean().

Here is the call graph for this function:

Here is the caller graph for this function:

void LAP_DoubleVector::add ( const lapack_real alpha,
const tLVectorIndex  n,
const lapack_real x 
)
inlineinherited

return this+=alpha. x the view is taken into account daxpy blas method called

References DoubleVectorAdd(), and LAP_Vector< lapack_real >::getIncrement().

Here is the call graph for this function:

virtual void LAP_DoubleVector::add ( const tLVectorIndex i,
const lapack_real v 
)
inlinevirtualinherited

return this[i]+=v the view is taken into account

Reimplemented from LAP_Vector< lapack_real >.

References LAP_Vector< T >::add().

Here is the call graph for this function:

static void LAP_DoubleVector::buildRotation ( lapack_real dx,
lapack_real dy,
lapack_real c,
lapack_real s 
)
inlinestaticinherited

build rotation the view is taken into account drotg blas method called

References DoubleVectorRotationPlane().

Here is the call graph for this function:

tBoolean LAP_Vector< lapack_real >::compare ( const lapack_real a,
const lapack_real b,
const tFlag order 
)
inlineinherited

compare

void LAP_DoubleVector::copy ( const LAP_Vector< lapack_real > &  v)
inlineinherited

copy the vector v into this. the view is set to [0,v.getSize()[ the viewed values of v is copied into this use (dcopy blas routine)

Parameters
vvector to copy

References DoubleVectorCopy(), LAP_Vector< lapack_real >::getIncrement(), LAP_Vector< T >::getIncrement(), LAP_Vector< T >::getSize(), and LAP_Vector< lapack_real >::setSize().

Referenced by LAP_DoubleMatrixStorage::copy(), LAP_DoubleVector::LAP_DoubleVector(), operator=(), LAP_DoubleVector::operator=(), LAP_DoublePackedUpperMatrix::vectorProduct(), LAP_DoubleBandedUpperMatrix::vectorProduct(), and LAP_DoubleFullUpperMatrix::vectorProduct().

Here is the call graph for this function:

Here is the caller graph for this function:

void LAP_DoubleVector::copy ( const LAP_ConstVector< lapack_real > &  v)
inlineinherited

copy the vector the view is set to [0,v.getSize()[ the viewed values of v is copied into this use (dcopy blas routine)

Parameters
vvector to copy

References DoubleVectorCopy(), LAP_ConstVector< T >::getIncrement(), LAP_Vector< lapack_real >::getIncrement(), LAP_ConstVector< T >::getSize(), and LAP_Vector< lapack_real >::setSize().

Here is the call graph for this function:

virtual void LAP_DoubleVector::copy ( const vector< lapack_real > &  vs)
inlinevirtualinherited

copy a vector of real

Reimplemented from LAP_Vector< lapack_real >.

References LAP_Vector< T >::copy().

Here is the call graph for this function:

double LAP_DoubleVector::distance2 ( const LAP_DoubleVector b) const
inlineinherited

return the norm2 of (this-b)

References LAP_Vector< T >::distance2().

Referenced by LAP_DoubleVector::distance2().

Here is the call graph for this function:

Here is the caller graph for this function:

double LAP_DoubleVector::distance2 ( SPC::LAP_DoubleVector  b) const
inlineinherited

return the norm2 of (this-b)

References LAP_DoubleVector::distance2(), and null.

Here is the call graph for this function:

tReal LAP_Vector< lapack_real >::distance2 ( const LAP_Vector< lapack_real > &  a) const
inlineinherited

compute the distance between this and a

static tReal LAP_Vector< lapack_real >::distance2 ( const LAP_Vector< lapack_real > &  a,
const LAP_Vector< lapack_real > &  b 
)
staticinherited

compute the distance between 2 vectors a & b

LAP_Vector<lapack_real >& LAP_Vector< lapack_real >::divideBy ( const LAP_Vector< lapack_real > &  s)
inlineinherited

division elementt by elementt vector operator

Referenced by LAP_DoubleVector::operator/=().

Here is the caller graph for this function:

void LAP_Vector< lapack_real >::fit ( )
inlineinherited

fit the vector

virtual const lapack_real & LAP_Vector< lapack_real >::get ( const tLVectorIndex i) const
inlinevirtualinherited

get element at index i taking into account the view

tLVectorIndex LAP_Vector< lapack_real >::getCapacity ( ) const
inlineinherited

get the capacity

Referenced by LAP_DoubleVector::getNullValuesNumber().

Here is the caller graph for this function:

static tString CORE_Object::getClassName ( const tString identityString)
inlinestaticinherited

return the class name of the object using only the identity string

Referenced by UI_Class::createVector2D(), LAP_DoublePackedUpperMatrix::matrixProduct(), LAP_DoubleBandedUpperMatrix::matrixProduct(), LAP_DoubleFullUpperMatrix::matrixProduct(), and CORE_Object::printObjectsInMemory().

Here is the caller graph for this function:

tString CORE_Object::getClassName ( ) const
inherited

return the class name of the object

Returns
the class name of the object

References tString.

Referenced by CORE_Object::getIdentityString().

Here is the caller graph for this function:

tString CORE_Object::getIdentityString ( ) const
inlineinherited

return the identity string of the object of the form className_at_address

Returns
the identity string of the object

References CORE_Object::getClassName(), CORE_Object::pointer2String(), and tString.

Referenced by UI_Class::createPrimitiveMap(), UI_Class::saveAssociation(), UI_Class::saveClass(), UI_ClassFactory::saveIntoClass(), MATH_StiefelFunction::toString(), LAP_2DView::toString(), CORE_Object::toString(), MATH_StiefelOptimizer::toString(), and MM_Class::toString().

Here is the call graph for this function:

Here is the caller graph for this function:

const tLVectorIncrement& LAP_Vector< lapack_real >::getIncrement ( ) const
inlineinherited
double& LAP_Object::getNullValue ( )
inlineinherited
const double& LAP_Object::getNullValue ( ) const
inlineinherited

get a const null value

virtual tLVectorIndex LAP_DoubleVector::getNullValuesNumber ( const tReal eps) const
inlinevirtualinherited
Returns
the numbe rof non null values

Implements LAP_Vector< lapack_real >.

References LAP_Vector< lapack_real >::getCapacity(), and tLVectorIndex.

Here is the call graph for this function:

static ostream& CORE_Object::getOutput ( )
inlinestaticinherited

get output

tString CORE_Object::getPointerAddress ( ) const
inlineinherited

return the identity string of the object

Returns
the identity string of the object

References CORE_Object::pointer2String().

Here is the call graph for this function:

void CORE_Object::getSharedPointer ( SP::CORE_Object &  p)
inlineinherited
void CORE_Object::getSharedPointer ( SPC::CORE_Object &  p) const
inlineinherited

get the shared pointer of this class into p

void LAP_Vector< lapack_real >::getSharedPointer ( boost::shared_ptr< LAP_Vector< lapack_real > > &  p)
inlineinherited

return the shared pointer corresponding to the class with casting

void LAP_Vector< lapack_real >::getSharedPointer ( boost::shared_ptr< const LAP_Vector< lapack_real > > &  p) const
inlineinherited

return the shared pointer corresponding to the class whith casting

tLVectorIndex LAP_Vector< lapack_real >::getSize ( ) const
inlineinherited
const tLVectorIndex& LAP_Vector< lapack_real >::getStart ( ) const
inlineinherited

get the start of the vector

template<class T >
static tString CORE_Object::getTypeName ( )
inlinestaticinherited

get type name

References tString.

virtual const lapack_real * LAP_Vector< lapack_real >::getValues ( ) const
inlinevirtualinherited

get the values for reading

Referenced by quadProduct(), and triProduct().

Here is the caller graph for this function:

virtual lapack_real * LAP_Vector< lapack_real >::getValues ( )
inlinevirtualinherited

get the values for writing

tLVectorIndex LAP_DoubleVector::indexMax ( ) const
inlineinherited

return the i such that |xi| is maximum idamax blas method called

References DoubleVectorIndexMax(), LAP_Vector< lapack_real >::getIncrement(), and LAP_Vector< lapack_real >::getSize().

Referenced by LAP_DoubleVector::normInf().

Here is the call graph for this function:

Here is the caller graph for this function:

tLVectorIndex LAP_Vector< lapack_real >::indexMin ( ) const
inherited

retun the index min of th evector

void LAP_Vector< lapack_real >::init ( const lapack_real v)
inlineinherited

init the value to v from the view

Referenced by operator=(), and LAP_DoubleVector::operator=().

Here is the caller graph for this function:

static tBoolean CORE_Object::is32Architecture ( )
inlinestaticinherited

return true if the machine is a 32 bits machine

References CORE_Object::is64Architecture().

Here is the call graph for this function:

tBoolean CORE_Object::is64Architecture ( )
staticinherited

return true if the machine is a 64 bits machine

Referenced by CORE_Object::is32Architecture().

Here is the caller graph for this function:

template<class T >
tBoolean CORE_Object::isInstanceOf ( ) const
inlineinherited

return true if the object is an instance of T

References null.

tBoolean LAP_Object::isNullValue ( const double &  v) const
inlineinherited

return true if the value is a null

static void LAP_Vector< lapack_real >::max ( const LAP_Vector< lapack_real > &  x,
LAP_Vector< lapack_real > &  y 
)
inlinestaticinherited

y=max(x,y);

void LAP_Vector< lapack_real >::max ( LAP_Vector< lapack_real > &  y)
inlineinherited

y=max(this,y);

double LAP_DoubleVector::maxValue ( tLVectorIndex i) const
inlineinherited

set the i index such that xi is maximum and return its value

References LAP_Vector< T >::maxValue().

Referenced by MMSD_Model::computeSampleClusterProbabilities().

Here is the call graph for this function:

Here is the caller graph for this function:

void LAP_Vector< lapack_real >::merge ( const lapack_real alpha,
const LAP_Vector< lapack_real > &  x,
const lapack_real beta,
const LAP_Vector< lapack_real > &  y 
)
inherited

this is the merging of 2 vectors This = [alpha.x,beta.y]

double LAP_DoubleVector::minValue ( tLVectorIndex i) const
inlineinherited

set the i index such that xi is minimum and return its value

References LAP_Vector< T >::minValue().

Here is the call graph for this function:

void LAP_Vector< lapack_real >::multiplyBy ( const LAP_Vector< lapack_real > &  s)
inlineinherited

multiplication element by element vector operator

Referenced by LAP_DoubleVector::operator*=().

Here is the caller graph for this function:

static SP::MMSD_DoubleVector MMSD_DoubleVector::New ( )
inlinestatic

References MMSD_DoubleVector().

Here is the call graph for this function:

static SP::MMSD_DoubleVector MMSD_DoubleVector::New ( const int &  nElements)
inlinestatic

References MMSD_DoubleVector().

Here is the call graph for this function:

static SP::LAP_DoubleVector LAP_DoubleVector::New ( const tLVectorIndex s)
inlinestaticinherited

create a new vector of double of size s

References LAP_DoubleVector::LAP_DoubleVector().

Here is the call graph for this function:

static SP::LAP_DoubleVector LAP_DoubleVector::New ( const LAP_DoubleVector s)
inlinestaticinherited

create a new copy of s the view is taken into account

References LAP_DoubleVector::LAP_DoubleVector().

Here is the call graph for this function:

static SP::LAP_DoubleVector LAP_DoubleVector::New ( SPC::LAP_DoubleVector  s)
inlinestaticinherited

create a new copy of s the view is taken into account

References LAP_DoubleVector::LAP_DoubleVector(), LAP_DoubleVector::New(), and null.

Here is the call graph for this function:

static SP::LAP_DoubleVector LAP_DoubleVector::New ( const vector< lapack_real > &  vs)
inlinestaticinherited

create a new copy of s the view is taken into account

References LAP_DoubleVector::New().

Here is the call graph for this function:

double LAP_DoubleVector::norm1 ( ) const
inlineinherited

return the sum(|xi|) dasum blas method called

References DoubleVectorNorm1(), LAP_Vector< lapack_real >::getIncrement(), and LAP_Vector< lapack_real >::getSize().

Here is the call graph for this function:

double LAP_DoubleVector::norm2 ( ) const
inlineinherited

return the sqrt(sum([xi|^2)) dnrm2 blas method called

References DoubleVectorNorm2(), LAP_Vector< lapack_real >::getIncrement(), and LAP_Vector< lapack_real >::getSize().

Referenced by MMSD_DataSet::scale().

Here is the call graph for this function:

Here is the caller graph for this function:

double LAP_DoubleVector::normInf ( ) const
inlineinherited

return the the maximum value of [xi|

References LAP_DoubleVector::indexMax().

Here is the call graph for this function:

lapack_real & LAP_Vector< lapack_real >::operator() ( const tLVectorIndex i)
inlineinherited

get the value for reading & writing

const lapack_real & LAP_Vector< lapack_real >::operator() ( const tLVectorIndex i) const
inlineinherited

get the value for reading only

LAP_DoubleVector& LAP_DoubleVector::operator*= ( const LAP_DoubleVector s)
inlineinherited

division elementt by elementt vector operator

References LAP_Vector< lapack_real >::multiplyBy().

Here is the call graph for this function:

LAP_DoubleVector& LAP_DoubleVector::operator*= ( const lapack_real s)
inlineinherited

scale operator

References LAP_DoubleVector::scale().

Here is the call graph for this function:

LAP_DoubleVector& LAP_DoubleVector::operator+= ( const double &  s)
inlineinherited

add operator

References LAP_Vector< T >::add().

Here is the call graph for this function:

LAP_DoubleVector& LAP_DoubleVector::operator+= ( const LAP_Vector< lapack_real > &  s)
inlineinherited

add vector operator use daxpy blas method

References LAP_DoubleVector::add().

Here is the call graph for this function:

LAP_DoubleVector& LAP_DoubleVector::operator-= ( const double &  s)
inlineinherited

sub operator

References LAP_Vector< lapack_real >::sub().

Here is the call graph for this function:

LAP_DoubleVector& LAP_DoubleVector::operator-= ( const LAP_Vector< lapack_real > &  s)
inlineinherited

sub vector operator use daxpy blas method

References LAP_DoubleVector::add().

Here is the call graph for this function:

LAP_DoubleVector& LAP_DoubleVector::operator/= ( const LAP_DoubleVector s)
inlineinherited

division elementt by elementt vector operator

References LAP_Vector< lapack_real >::divideBy().

Here is the call graph for this function:

LAP_DoubleVector& LAP_DoubleVector::operator/= ( const lapack_real s)
inlineinherited

divide operator

References LAP_DoubleVector::scale().

Here is the call graph for this function:

MMSD_DoubleVector& MMSD_DoubleVector::operator= ( const lapack_real s)
inline

copy operator the view is taken into account

References LAP_Vector< lapack_real >::init().

Here is the call graph for this function:

MMSD_DoubleVector& MMSD_DoubleVector::operator= ( const MMSD_DoubleVector s)
inline

copy operator the view is taken into account

References LAP_DoubleVector::copy().

Here is the call graph for this function:

MMSD_DoubleVector& MMSD_DoubleVector::operator= ( const MMSD_ConstDoubleVector s)
inline

copy operator the view is taken into account

References LAP_DoubleVector::copy().

Here is the call graph for this function:

const lapack_real & LAP_Vector< lapack_real >::operator[] ( const tLVectorIndex i) const
inlineinherited

get the value for reading only

lapack_real & LAP_Vector< lapack_real >::operator[] ( const tLVectorIndex i)
inlineinherited

get the value for reading & writing

LAP_DoubleVector& LAP_DoubleVector::operator^= ( const double &  s)
inlineinherited

power operator

References LAP_Vector< lapack_real >::power().

Here is the call graph for this function:

void CORE_Object::outputPrint ( const tString message)
staticinherited

print on output

References null, and CORE_Object::print().

Referenced by CORE_Exception::CORE_Exception().

Here is the call graph for this function:

Here is the caller graph for this function:

tString CORE_Object::pointer2String ( const void *  obj)
staticinherited

return the string represantation of a pointer

References tString.

Referenced by CORE_Object::CORE_Object(), CORE_Object::getIdentityString(), CORE_Object::getPointerAddress(), and CORE_Object::~CORE_Object().

Here is the caller graph for this function:

void LAP_Vector< lapack_real >::power ( const lapack_real s)
inlineinherited

power operator

Referenced by LAP_DoubleVector::operator^=().

Here is the caller graph for this function:

virtual void CORE_Object::print ( )
inlinevirtualinherited

print the class

References CORE_Object::toString().

Referenced by CORE_Object::outputPrint(), CORE_Out::print(), CORE_Object::print(), CORE_Out::printInt(), CORE_Out::println(), CORE_Out::printReal(), CORE_Out::printString(), and CORE_Out::setAction().

Here is the call graph for this function:

Here is the caller graph for this function:

virtual ostream& CORE_Object::print ( ostream &  out) const
inlinevirtualinherited

print the class

References CORE_Object::print(), and CORE_Object::toString().

Here is the call graph for this function:

void CORE_Object::print ( const tString message)
virtualinherited

print the class

Reimplemented in CORE_Out.

References null, and CORE_Object::print().

Here is the call graph for this function:

void CORE_Object::print ( const tInteger str)
virtualinherited

print

References null.

void CORE_Object::print ( const tRelativeInteger str)
virtualinherited

print

References null.

void CORE_Object::print ( const tReal str)
virtualinherited

print

References null.

void CORE_Object::print ( const int &  str)
virtualinherited

print

References null.

static ostream& CORE_Object::print ( ostream &  out,
const tString message 
)
inlinestaticinherited

print the class

void CORE_Object::printObjectsInMemory ( )
staticinherited

print object in memory

References CORE_Object::getClassName(), CORE_Object::getSharedPointer(), and CORE_Object::mIsMemoryTesting.

Referenced by main().

Here is the call graph for this function:

Here is the caller graph for this function:

double LAP_DoubleVector::product ( const LAP_DoubleVector v) const
inlineinherited

return result=<this,vect> the view is taken into account ddot blas method called

References DoubleVectorDot(), LAP_Vector< lapack_real >::getIncrement(), LAP_Vector< T >::getIncrement(), LAP_Vector< lapack_real >::getSize(), and LAP_Vector< T >::getSize().

Referenced by MATH_StiefelOptimizer::minimize(), and LAP_DoubleVector::product().

Here is the call graph for this function:

Here is the caller graph for this function:

static double LAP_DoubleVector::product ( const LAP_DoubleVector v,
const LAP_DoubleVector w 
)
inlinestaticinherited

References LAP_DoubleVector::product().

Here is the call graph for this function:

static double MMSD_DoubleVector::quadProduct ( const tArrayIndex n,
const double *  a,
const double *  b,
const double *  c,
const double *  d 
)
inlinestatic

tri scalar product

References tArrayIndex.

Referenced by MMSD_StiefelFunction::computeFunction(), and quadProduct().

Here is the caller graph for this function:

double MMSD_DoubleVector::quadProduct ( const double *  a,
const double *  b,
const double *  c 
) const
inline

quad scalar product

References LAP_Vector< lapack_real >::getSize(), LAP_Vector< lapack_real >::getValues(), and quadProduct().

Here is the call graph for this function:

void LAP_Vector< lapack_real >::quickSort ( )
inherited

quit sort the vector in an increasing order

void LAP_Vector< lapack_real >::removeValues ( const tLVectorIndex index,
const tLVectorIndex n 
)
inlineinherited

remove n values of the array from index if values=[0,1,...,index,...index+n,index+n+,....,size[ the values {index,...index+n-1} are removed values becomes values=[0,...index-1,index+n,...,size-n[

void LAP_Vector< lapack_real >::resetView ( )
inlineinherited

set the view of the vector to all the values

void LAP_Vector< lapack_real >::reverse ( )
inherited

reverse the vector

static void LAP_DoubleVector::rotate ( LAP_DoubleVector dx,
LAP_DoubleVector dy,
const lapack_real c,
const lapack_real s 
)
staticinherited

make a rotation of vector dx= c*dx+s*dy dy=-s*dx+c*dy the view is taken into account drot blas method called

void LAP_DoubleVector::scale ( const lapack_real alpha)
inlineinherited

return this*=a the view is taken into account dscal blas method called

References DoubleVectorScale(), LAP_Vector< lapack_real >::getIncrement(), and LAP_Vector< lapack_real >::getSize().

Referenced by LAP_DoubleVector::operator*=(), and LAP_DoubleVector::operator/=().

Here is the call graph for this function:

Here is the caller graph for this function:

void LAP_Vector< lapack_real >::set ( const tLVectorIndex i,
const lapack_real v 
)
inlineinherited

set element at index i taking into account the view

void LAP_Vector< lapack_real >::setIsValuesReferenced ( const tBoolean isReferenced)
inlineinherited

deferenced the values the values is unreferenced : so it is not destroyed with this class is desctroyed

static void CORE_Object::setOutput ( ostream &  out)
inlinestaticinherited

set output

void LAP_Vector< lapack_real >::setSize ( const tLVectorIndex n)
inlineinherited

set the view to [0,n[ by 1 increment if values is too small, re-alocate it

Parameters
nsize of the vector

Referenced by LAP_DoubleVector::copy(), and LAP_DoubleVector::LAP_DoubleVector().

Here is the caller graph for this function:

void CORE_Object::setThis ( SP::CORE_Object  p)
inlineprotectedinherited

set this weak shared pointer called toDoAfterThis setting method

References CORE_Object::toDoAfterThisSetting().

Here is the call graph for this function:

virtual void CORE_Object::setType ( tString  type)
inlineprotectedvirtualinherited

set the type of the object

Referenced by LAP_IntegerVector::LAP_IntegerVector(), MATH_BetaFunction::MATH_BetaFunction(), MATH_C1Function::MATH_C1Function(), MATH_DigammaFunction::MATH_DigammaFunction(), MATH_EigenFunction::MATH_EigenFunction(), MATH_Equation::MATH_Equation(), MATH_Function::MATH_Function(), MATH_GammaFunction::MATH_GammaFunction(), MATH_KeplerFunction::MATH_KeplerFunction(), MATH_LogGammaFunction::MATH_LogGammaFunction(), MATH_NewtonEquation::MATH_NewtonEquation(), MATH_StiefelFunction::MATH_StiefelFunction(), MATH_StiefelOptimizer::MATH_StiefelOptimizer(), MATH_TranscendentEquation::MATH_TranscendentEquation(), MATH_TrigammaFunction::MATH_TrigammaFunction(), MATH_ZeroEquation::MATH_ZeroEquation(), MATH_ZKeplerFunction::MATH_ZKeplerFunction(), MM_Attribute::MM_Attribute(), MM_Class::MM_Class(), MM_ClassFactory::MM_ClassFactory(), MM_Data::MM_Data(), MM_Structure::MM_Structure(), MMSD_ClassFactory::MMSD_ClassFactory(), MMSD_Cluster::MMSD_Cluster(), MMSD_ConstDoubleVector::MMSD_ConstDoubleVector(), MMSD_ConstraintGaussianCluster::MMSD_ConstraintGaussianCluster(), MMSD_ConstraintGaussianModel::MMSD_ConstraintGaussianModel(), MMSD_DataSet::MMSD_DataSet(), MMSD_DataSetClassFactory::MMSD_DataSetClassFactory(), MMSD_DoubleFullMatrix::MMSD_DoubleFullMatrix(), MMSD_DoubleSymmetricMatrix::MMSD_DoubleSymmetricMatrix(), MMSD_DoubleVector(), MMSD_FluryGautschiGaussianLaw::MMSD_FluryGautschiGaussianLaw(), MMSD_GaussianCluster::MMSD_GaussianCluster(), MMSD_GaussianFDFunction::MMSD_GaussianFDFunction(), MMSD_GaussianLaw::MMSD_GaussianLaw(), MMSD_GaussianModel::MMSD_GaussianModel(), MMSD_Law::MMSD_Law(), MMSD_Model::MMSD_Model(), MMSD_ModelClassFactory::MMSD_ModelClassFactory(), MMSD_Object::MMSD_Object(), MMSD_StiefelFunction::MMSD_StiefelFunction(), MMSD_StiefelGaussianLaw::MMSD_StiefelGaussianLaw(), STAT_BernoulliDistribution::STAT_BernoulliDistribution(), STAT_BinomialDistribution::STAT_BinomialDistribution(), STAT_Combinatorial< T >::STAT_Combinatorial(), STAT_DiracDistribution::STAT_DiracDistribution(), STAT_Distribution::STAT_Distribution(), STAT_ExponentialDistribution::STAT_ExponentialDistribution(), STAT_GammaDistribution::STAT_GammaDistribution(), STAT_GeometricDistribution::STAT_GeometricDistribution(), STAT_InverseNormalDistribution::STAT_InverseNormalDistribution(), STAT_NormalDistribution::STAT_NormalDistribution(), STAT_Object::STAT_Object(), STAT_PoissonDistribution::STAT_PoissonDistribution(), STAT_UniformDistribution::STAT_UniformDistribution(), and STAT_UniformLaplaceTransform::STAT_UniformLaplaceTransform().

Here is the caller graph for this function:

void LAP_Vector< lapack_real >::setValues ( const tLVectorIndex n,
lapack_real *&  values,
const tBoolean isReferenced 
)
inlineinherited
void LAP_Vector< lapack_real >::setValues ( const tLVectorIndex n,
const lapack_real values 
)
inlineinherited

copy the values

Parameters
nthe size of the values array
valuesthe values array
void LAP_Vector< lapack_real >::setValues ( const tLVectorIndex n,
const tLVectorIncrement incv,
const lapack_real values 
)
inlineinherited

copy the values

Parameters
nthe viewed element number of the array
incvthe distance between values[i] and values[i+1]
valuesthe values array

note the the memory size of values array must be at least n*incv.

tBoolean LAP_Vector< lapack_real >::setView ( SP::LAP_View  v)
inlineinherited

set the view

tBoolean LAP_Vector< lapack_real >::setView ( const tLVectorIndex start,
const tLVectorIndex end,
const tLVectorIndex increment 
)
inlineinherited

set the view of the vector

Returns
false if the new size or end are greater than the capacity of the vector
void LAP_Vector< lapack_real >::sort ( const tFlag order)
inherited

sort in order view untaken into account

Sort the objects

void LAP_Vector< lapack_real >::sort ( )
inlineinherited

sort in ascent order view untaken into account

void LAP_Vector< lapack_real >::sub ( const lapack_real s)
inlineinherited

sub operator

Referenced by LAP_DoubleVector::operator-=().

Here is the caller graph for this function:

double LAP_DoubleVector::sum ( ) const
inlineinherited

return the sum(xi)

References LAP_Vector< T >::sum().

Referenced by MMSD_DataSet::scale(), MMSD_ConstraintGaussianCluster::updateFreedomDegrees(), and MMSD_GaussianCluster::updateFreedomDegrees().

Here is the call graph for this function:

Here is the caller graph for this function:

static void LAP_DoubleVector::swap ( LAP_DoubleVector x,
LAP_DoubleVector y 
)
inlinestaticinherited

swap the two vectors with the same length dswap method called

References ASSERT_IN, DoubleVectorSwap(), LAP_Vector< T >::getIncrement(), LAP_Vector< T >::getSize(), lapack_int, and tLVectorIndex.

Here is the call graph for this function:

virtual void CORE_Object::toDoAfterThisSetting ( )
inlineprotectedvirtualinherited

method called after setThis() method this method can oly be called once.

Reimplemented in STAT_UniformLaplaceTransform.

Referenced by CORE_Object::setThis(), and STAT_UniformLaplaceTransform::toDoAfterThisSetting().

Here is the caller graph for this function:

tString LAP_DoubleVector::toString ( ) const
virtualinherited

turn the class to string

Reimplemented from CORE_Object.

References LAP_Vector< lapack_real >::getIncrement(), LAP_Vector< lapack_real >::getSize(), tLVectorIndex, CORE_Real::toString(), and tString.

Here is the call graph for this function:

static double MMSD_DoubleVector::triProduct ( const tArrayIndex n,
const double *  a,
const double *  b,
const double *  c 
)
inlinestatic

tri scalar product

References tArrayIndex.

Referenced by MMSD_StiefelFunction::computeFunction(), triProduct(), and MMSD_GaussianLaw::updateMean().

Here is the caller graph for this function:

double MMSD_DoubleVector::triProduct ( const double *  b,
const double *  c 
) const
inline

tri scalar product

References LAP_Vector< lapack_real >::getSize(), LAP_Vector< lapack_real >::getValues(), and triProduct().

Here is the call graph for this function:

Member Data Documentation

const tFlag LAP_Vector< lapack_real >::ASCENT
staticinherited
const tFlag LAP_Vector< lapack_real >::DESCENT
staticinherited
tBoolean CORE_Object::mIsMemoryTesting =false
staticinherited

indicator to store all classes created and deleted only for debuging version

Referenced by CORE_Object::CORE_Object(), main(), CORE_Object::printObjectsInMemory(), and CORE_Object::~CORE_Object().

double LAP_Object::ZERO_EPSILON =1.e-18
staticinherited

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