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
LAP_DoubleFullStorage Class Reference

#include <LAP_DoubleFullStorage.h>

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

Public Member Functions

 LAP_DoubleFullStorage ()
 build a matrix More...
 
virtual ~LAP_DoubleFullStorage ()
 destroy a matrix More...
 
virtual double & operator() (const tLVectorIndex &i, const tLVectorIndex &j)
 accessor of element at row i and column j taking into account the row More...
 
virtual const double & operator() (const tLVectorIndex &i, const tLVectorIndex &j) const
 accessor of element at row i and column j More...
 
LAP_DoubleFullStorageoperator*= (const double &s)
 multiply by s the matrix viewed term by term taking into account the view More...
 
LAP_DoubleFullStorageoperator/= (const double &s)
 divide by s the matrix viewed term by term taking into account the view More...
 
LAP_DoubleFullStorageoperator+= (const double &s)
 add s to the matrix viewed term by term taking into account the view More...
 
LAP_DoubleFullStorageoperator-= (const double &s)
 sub s to the matrix viewed term by term taking into account the view More...
 
LAP_DoubleFullStorageoperator^= (const double &s)
 sub s to the matrix viewed term by term taking into account the view More...
 
LAP_DoubleFullStorageoperator*= (const LAP_DoubleFullStorage &s)
 multiply the matrices viewed term by term taking into account the view More...
 
LAP_DoubleFullStorageoperator/= (const LAP_DoubleFullStorage &s)
 divide the matrices viewed term by term taking into account the view More...
 
LAP_DoubleFullStorageoperator+= (const LAP_DoubleFullStorage &s)
 add the matrices viewed term by term taking into account the view More...
 
LAP_DoubleFullStorageoperator-= (const LAP_DoubleFullStorage &s)
 sub the matrices viewed term by term taking into account the view More...
 
virtual tBoolean copy (const tBoolean &isSymmetric, const tBoolean &isUpper, const tBoolean &isTransposed, const LAP_DoubleMatrixStorage &x)
 copy he viewed terms of the matrix to this More...
 
tBoolean copyFullStorage (const tBoolean &isSymmetric, const tBoolean &isUpper, const tLVectorIndex &nViewedRows, const tLVectorIndex &nViewedCols, const tLVectorIncrement &incx, const tLVectorIndex &ldx, const double *x)
 copy full storage More...
 
tBoolean copyPackStorage (const tBoolean &isSymmetric, const tBoolean &isUpper, const tLVectorIndex &nX, const double *x)
 copy packed storage More...
 
tBoolean copyBandStorage (const tBoolean &isSymmetric, const tBoolean &isUpper, const tLVectorIndex &nX, const tLVectorIndex &nUpperBands, const tLVectorIndex &nLowerBands, const double *x)
 copy banded storage More...
 
virtual void setValuesPointer (SP::LAP_DoubleVector v)
 set the values of without copying More...
 
virtual void setValuesPointer (const tLVectorIndex &rowSize, SP::LAP_DoubleVector v)
 set the values of without copying More...
 
virtual void setValues (const tLVectorIndex &n, const double *values)
 copy the values to the matrix values More...
 
virtual void setValues (const tLVectorIndex &rowSize, const tLVectorIndex &n, const double *values)
 copy the values to the matrix values without taking account of the view More...
 
virtual void setValuesNumber (const tLVectorIndex &nRows, const tLVectorIndex &n)
 set the values number More...
 
virtual void setValuesNumber (const tLVectorIndex &n)
 set the values number More...
 
tBoolean setView (const tFlag &k, const tLVectorIndex &start, const tLVectorIndex &end, const tLVectorIndex &increment)
 set the the view the row/column element considered are in [start,end[ with increment inc More...
 
void resetView ()
 reset view More...
 
tLVectorIndex getViewSize (const tFlag &d) const
 get the length of the view of the matrix More...
 
const tLVectorIncrementgetIncrement (const tFlag &d) const
 get the increment of the view of the matrix More...
 
const tLVectorIndexgetStart (const tFlag &d) const
 get the start index of the view of the matrix More...
 
tLVectorIndex getViewIndex (const tLVectorIndex &k, const tLVectorIndex &i) const
 get the view index of col or row More...
 
virtual tLVectorIndex getViewedRowsNumber () const
 get the lines number of the matrix from view More...
 
virtual tLVectorIndex getViewedColumnsNumber () const
 get the columns number of the matrix from view More...
 
tLVectorIndex getLeadingDimension () const
 get the leading dimension ie the memory distance between M(i,j) & M(i,j+1) More...
 
const tLVectorIncrementgetRowIncrement () const
 get the row increment ie the memory distance between M(i,j) & M(i+1,j) More...
 
tBoolean isSubmatrixView () const
 return true if the matrix is the sub matrix view More...
 
tLVectorIndex getRowSize () const
 get rows number More...
 
virtual void addDiagonal (const double &alpha)
 add alpha to the diagnal element More...
 
virtual double trace () const
 return the sum of the diagonal element More...
 
virtual void getRowByReference (const tLVectorIndex &i, LAP_DoubleVector &v)
 get the row by reference the values of v pointer to the values of the column j of this More...
 
virtual void getRowByReference (const tLVectorIndex &i, LAP_ConstDoubleVector &v) const
 get the row by reference the values of v pointer to the values of the column j of this More...
 
virtual void getColumnByReference (const tLVectorIndex &j, LAP_DoubleVector &v)
 get the column by reference the values of v pointer to the values of the column j of this More...
 
virtual void getColumnByReference (const tLVectorIndex &j, LAP_ConstDoubleVector &v) const
 get the column by reference the values of v pointer to the values of the column j of this More...
 
void removeColumn (const tLVectorIndex &j)
 remove the column at index j More...
 
void reverseColumns ()
 reverese the column order More...
 
void swapColumns (const tLVectorIndex &i, const tLVectorIndex &j)
 swap the column i & j More...
 
void concat (const double &alpha, const LAP_DoubleFullStorage &X, const double &beta, const LAP_DoubleFullStorage &Y)
 concat This-> [alpha X, beta Y] add the colmuns of Y to the columns of X to becomes A More...
 
virtual pair< tLVectorIndex,
tLVectorIndex
computeBandsNumber () const
 compute the bands number of the storage More...
 
LAP_DoubleFullStoragemultiplyBy (const tBoolean &isPackedSymmetric, const LAP_DoublePackedStorage &s)
 multiply the matrices viewed term by term taking into account the view More...
 
LAP_DoubleFullStoragedivideBy (const tBoolean &isPackedSymmetric, const LAP_DoublePackedStorage &s)
 divide the matrices viewed term by term taking into account the view More...
 
LAP_DoubleFullStorageadd (const tBoolean &isPackedSymmetric, const LAP_DoublePackedStorage &s)
 add the matrices viewed term by term taking into account the view More...
 
LAP_DoubleFullStoragesub (const tBoolean &isPackedSymmetric, const LAP_DoublePackedStorage &s)
 sub the matrices viewed term by term taking into account the view More...
 
const double & operator[] (const tLVectorIndex &index) const
 get the value at index for reading More...
 
double & operator[] (const tLVectorIndex &index)
 get the value at index fro writing More...
 
void init (const double &v)
 init the values More...
 
virtual tLVectorIndex getNullValuesNumber () const
 get the number of null values More...
 
tLVectorIndex getValuesNumber () const
 get the number of values More...
 
tLVectorIndex getCapacity () const
 get the capacity of values More...
 
double getFillRate () const
 get the fill rate of the matrix More...
 
const LAP_DoubleVectorgetValues () const
 get the vector values of the matrix More...
 
LAP_DoubleVectorgetValues ()
 get the vector values of the matrix More...
 
virtual void getValuesPointer (SP::LAP_DoubleVector &v)
 
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...
 
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...
 
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 tString toString () const
 return the string representation of the object node 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::LAP_DoubleFullStorage New ()
 create a new full storage class More...
 
static pair< tLVectorIndex,
tLVectorIndex
computeBandsNumber (const tBoolean &isUpper, const tLVectorIndex &nRows, const tLVectorIndex &nCols, const tLVectorIncrement &inc, const tLVectorIndex &ldx, const double *x, const tReal &eps)
 
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 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

LAP_DoubleFullStorage::LAP_DoubleFullStorage ( )
inline

build a matrix

Referenced by New().

Here is the caller graph for this function:

virtual LAP_DoubleFullStorage::~LAP_DoubleFullStorage ( )
inlinevirtual

destroy a matrix

Member Function Documentation

LAP_DoubleFullStorage & LAP_DoubleFullStorage::add ( const tBoolean isPackedSymmetric,
const LAP_DoublePackedStorage s 
)

add the matrices viewed term by term taking into account the view

References LAP_DoublePackedStorage::getDimension(), getLeadingDimension(), getRowIncrement(), getViewedColumnsNumber(), getViewedRowsNumber(), tLVectorIncrement, and tLVectorIndex.

Referenced by LAP_DoubleFullSymmetricMatrix::operator+=().

Here is the call graph for this function:

Here is the caller graph for this function:

void LAP_DoubleFullStorage::addDiagonal ( const double &  alpha)
virtual

add alpha to the diagnal element

Implements LAP_DoubleMatrixStorage.

References getLeadingDimension(), getRowIncrement(), getViewedColumnsNumber(), getViewedRowsNumber(), tLVectorIncrement, and tLVectorIndex.

Here is the call graph for this function:

pair< tLVectorIndex, tLVectorIndex > LAP_DoubleFullStorage::computeBandsNumber ( ) const
virtual

compute the bands number of the storage

Returns
a pair of integer:
  • the first element if the number of upper diagonal >=0
  • the second element is the number of lower diagonal >=0

Implements LAP_DoubleMatrixStorage.

References getLeadingDimension(), getRowIncrement(), getViewedColumnsNumber(), getViewedRowsNumber(), and LAP_Object::ZERO_EPSILON.

Referenced by LAP_DoubleBandedStorage::copyFullStorage().

Here is the call graph for this function:

Here is the caller graph for this function:

pair< tLVectorIndex, tLVectorIndex > LAP_DoubleFullStorage::computeBandsNumber ( const tBoolean isUpper,
const tLVectorIndex nRows,
const tLVectorIndex nCols,
const tLVectorIncrement inc,
const tLVectorIndex ldx,
const double *  x,
const tReal eps 
)
static

References tLVectorIndex.

void LAP_DoubleFullStorage::concat ( const double &  alpha,
const LAP_DoubleFullStorage X,
const double &  beta,
const LAP_DoubleFullStorage Y 
)
inline

concat This-> [alpha X, beta Y] add the colmuns of Y to the columns of X to becomes A

References LAP_DoubleMatrixStorage::getValues(), and LAP_Vector< T >::merge().

Referenced by LAP_DoubleFullGeneralMatrix::concat().

Here is the call graph for this function:

Here is the caller graph for this function:

tBoolean LAP_DoubleFullStorage::copy ( const tBoolean isSymmetric,
const tBoolean isUpper,
const tBoolean isTransposed,
const LAP_DoubleMatrixStorage x 
)
virtual
tBoolean LAP_DoubleFullStorage::copyBandStorage ( const tBoolean isSymmetric,
const tBoolean isUpper,
const tLVectorIndex nX,
const tLVectorIndex nUpperBands,
const tLVectorIndex nLowerBands,
const double *  x 
)

copy banded storage

References setValuesNumber(), and tLVectorIndex.

Referenced by copy().

Here is the call graph for this function:

Here is the caller graph for this function:

tBoolean LAP_DoubleFullStorage::copyFullStorage ( const tBoolean isSymmetric,
const tBoolean isUpper,
const tLVectorIndex nViewedRows,
const tLVectorIndex nViewedCols,
const tLVectorIncrement incx,
const tLVectorIndex ldx,
const double *  x 
)

copy full storage

References setValuesNumber(), and tLVectorIndex.

Referenced by copy().

Here is the call graph for this function:

Here is the caller graph for this function:

tBoolean LAP_DoubleFullStorage::copyPackStorage ( const tBoolean isSymmetric,
const tBoolean isUpper,
const tLVectorIndex nX,
const double *  x 
)

copy packed storage

References setValuesNumber(), and tLVectorIndex.

Referenced by copy().

Here is the call graph for this function:

Here is the caller graph for this function:

LAP_DoubleFullStorage & LAP_DoubleFullStorage::divideBy ( const tBoolean isPackedSymmetric,
const LAP_DoublePackedStorage s 
)

divide the matrices viewed term by term taking into account the view

References LAP_DoublePackedStorage::getDimension(), getLeadingDimension(), getRowIncrement(), getViewedColumnsNumber(), getViewedRowsNumber(), tLVectorIncrement, and tLVectorIndex.

Referenced by LAP_DoubleFullSymmetricMatrix::operator/=().

Here is the call graph for this function:

Here is the caller graph for this function:

tLVectorIndex LAP_DoubleMatrixStorage::getCapacity ( ) const
inlineinherited

get the capacity of values

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:

void LAP_DoubleFullStorage::getColumnByReference ( const tLVectorIndex j,
LAP_DoubleVector v 
)
virtual

get the column by reference the values of v pointer to the values of the column j of this

References LAP_Matrix::COL, getIncrement(), getRowIncrement(), getRowSize(), LAP_DoubleMatrixStorage::getValues(), getViewedColumnsNumber(), lapack_real, LAP_Vector< T >::setValues(), LAP_Vector< T >::setView(), tLVectorIncrement, and tLVectorIndex.

Referenced by LAP_DoubleFullSymmetricMatrix::getColumnByReference(), LAP_DoubleFullGeneralMatrix::getColumnByReference(), and LAP_DoubleFullGeneralMatrix::norm2().

Here is the call graph for this function:

Here is the caller graph for this function:

void LAP_DoubleFullStorage::getColumnByReference ( const tLVectorIndex j,
LAP_ConstDoubleVector v 
) const
virtual

get the column by reference the values of v pointer to the values of the column j of this

References LAP_Matrix::COL, getIncrement(), getRowSize(), LAP_DoubleMatrixStorage::getValues(), getViewedColumnsNumber(), lapack_real, LAP_Matrix::ROW, LAP_ConstVector< T >::setValues(), LAP_ConstVector< T >::setView(), tLVectorIncrement, and tLVectorIndex.

Here is the call graph for this function:

double LAP_DoubleMatrixStorage::getFillRate ( ) const
inlineinherited

get the fill rate of the matrix

References LAP_DoubleMatrixStorage::getNullValuesNumber(), and LAP_DoubleMatrixStorage::getValuesNumber().

Here is the call 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_DoubleFullStorage::getIncrement ( const tFlag d) const
inline

get the increment of the view of the matrix

Parameters
dROW or COL to get the view increment of a row or a column

References LAP_2DView::getIncrement().

Referenced by getColumnByReference(), getLeadingDimension(), getRowByReference(), getRowIncrement(), and getViewIndex().

Here is the call graph for this function:

Here is the caller graph for this function:

tLVectorIndex LAP_DoubleFullStorage::getLeadingDimension ( ) const
inline
double& LAP_Object::getNullValue ( )
inlineinherited
const double& LAP_Object::getNullValue ( ) const
inlineinherited

get a const null value

virtual tLVectorIndex LAP_DoubleMatrixStorage::getNullValuesNumber ( ) const
inlinevirtualinherited

get the number of null values

References tLVectorIndex, and LAP_Object::ZERO_EPSILON.

Referenced by LAP_DoubleMatrixStorage::getFillRate().

Here is the caller 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 LAP_DoubleFullStorage::getRowByReference ( const tLVectorIndex i,
LAP_DoubleVector v 
)
virtual

get the row by reference the values of v pointer to the values of the column j of this

References LAP_Matrix::COL, getIncrement(), getRowSize(), LAP_DoubleMatrixStorage::getValuesNumber(), getViewedColumnsNumber(), getViewedRowsNumber(), getViewIndex(), lapack_int, lapack_real, LAP_Matrix::ROW, LAP_Vector< T >::setValues(), LAP_Vector< T >::setView(), and tLVectorIndex.

Referenced by LAP_DoubleFullGeneralMatrix::getRowByReference(), and LAP_DoubleFullGeneralMatrix::norm2().

Here is the call graph for this function:

Here is the caller graph for this function:

void LAP_DoubleFullStorage::getRowByReference ( const tLVectorIndex i,
LAP_ConstDoubleVector v 
) const
virtual

get the row by reference the values of v pointer to the values of the column j of this

References LAP_Matrix::COL, getIncrement(), getRowSize(), LAP_DoubleMatrixStorage::getValuesNumber(), getViewedColumnsNumber(), getViewedRowsNumber(), getViewIndex(), lapack_int, lapack_real, LAP_Matrix::ROW, LAP_ConstVector< T >::setValues(), LAP_ConstVector< T >::setView(), and tLVectorIndex.

Here is the call graph for this function:

const tLVectorIncrement& LAP_DoubleFullStorage::getRowIncrement ( ) const
inline
tLVectorIndex LAP_DoubleFullStorage::getRowSize ( ) const
inline

get rows number

Referenced by getColumnByReference(), and getRowByReference().

Here is the caller 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

const tLVectorIndex& LAP_DoubleFullStorage::getStart ( const tFlag d) const
inline

get the start index of the view of the matrix

Parameters
dROW or COL to get the start of the view of a row or a column

References LAP_2DView::getStart().

Referenced by getViewIndex(), LAP_DoubleFullSymmetricMatrix::indexMin(), LAP_DoubleFullUpperMatrix::indexMin(), LAP_DoubleFullGeneralMatrix::indexMin(), and isSubmatrixView().

Here is the call graph for this function:

Here is the caller graph for this function:

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

get type name

References tString.

const LAP_DoubleVector& LAP_DoubleMatrixStorage::getValues ( ) const
inlineinherited
LAP_DoubleVector& LAP_DoubleMatrixStorage::getValues ( )
inlineinherited

get the vector values of the matrix

References LAP_Vector< T >::get().

Here is the call graph for this function:

tLVectorIndex LAP_DoubleMatrixStorage::getValuesNumber ( ) const
inlineinherited
virtual void LAP_DoubleMatrixStorage::getValuesPointer ( SP::LAP_DoubleVector &  v)
inlinevirtualinherited

Referenced by LAP_DoubleFullSymmetricMatrix::computeEigenValueDecomposition().

Here is the caller graph for this function:

virtual tLVectorIndex LAP_DoubleFullStorage::getViewedColumnsNumber ( ) const
inlinevirtual
virtual tLVectorIndex LAP_DoubleFullStorage::getViewedRowsNumber ( ) const
inlinevirtual
tLVectorIndex LAP_DoubleFullStorage::getViewIndex ( const tLVectorIndex k,
const tLVectorIndex i 
) const
inline

get the view index of col or row

Parameters
krow or column type
iview index of the row or column

References getIncrement(), and getStart().

Referenced by getRowByReference(), and operator()().

Here is the call graph for this function:

Here is the caller graph for this function:

tLVectorIndex LAP_DoubleFullStorage::getViewSize ( const tFlag d) const
inline

get the length of the view of the matrix

Parameters
dROW or COL to get the view size of a row or a column

References LAP_2DView::getSize().

Referenced by getViewedColumnsNumber(), and getViewedRowsNumber().

Here is the call graph for this function:

Here is the caller graph for this function:

void LAP_DoubleMatrixStorage::init ( const double &  v)
inlineinherited
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

tBoolean LAP_DoubleFullStorage::isSubmatrixView ( ) const
inline

return true if the matrix is the sub matrix view

References LAP_Matrix::COL, LAP_2DView::getEnd(), getStart(), LAP_DoubleMatrixStorage::getValuesNumber(), and LAP_Matrix::ROW.

Here is the call graph for this function:

LAP_DoubleFullStorage & LAP_DoubleFullStorage::multiplyBy ( const tBoolean isPackedSymmetric,
const LAP_DoublePackedStorage s 
)

multiply the matrices viewed term by term taking into account the view

References LAP_DoublePackedStorage::getDimension(), getLeadingDimension(), getRowIncrement(), getViewedColumnsNumber(), getViewedRowsNumber(), tLVectorIncrement, and tLVectorIndex.

Referenced by LAP_DoubleFullSymmetricMatrix::operator*=().

Here is the call graph for this function:

Here is the caller graph for this function:

static SP::LAP_DoubleFullStorage LAP_DoubleFullStorage::New ( )
inlinestatic

create a new full storage class

References LAP_DoubleFullStorage().

Referenced by LAP_DoubleFullGeneralMatrix::LAP_DoubleFullGeneralMatrix(), LAP_DoubleFullSymmetricMatrix::LAP_DoubleFullSymmetricMatrix(), and LAP_DoubleFullUpperMatrix::LAP_DoubleFullUpperMatrix().

Here is the call graph for this function:

Here is the caller graph for this function:

virtual double& LAP_DoubleFullStorage::operator() ( const tLVectorIndex i,
const tLVectorIndex j 
)
inlinevirtual

accessor of element at row i and column j taking into account the row

Implements LAP_DoubleMatrixStorage.

References LAP_Matrix::COL, getViewIndex(), and LAP_Matrix::ROW.

Here is the call graph for this function:

virtual const double& LAP_DoubleFullStorage::operator() ( const tLVectorIndex i,
const tLVectorIndex j 
) const
inlinevirtual

accessor of element at row i and column j

Implements LAP_DoubleMatrixStorage.

References LAP_Matrix::COL, getViewIndex(), and LAP_Matrix::ROW.

Here is the call graph for this function:

LAP_DoubleFullStorage & LAP_DoubleFullStorage::operator*= ( const double &  s)

multiply by s the matrix viewed term by term taking into account the view

References getLeadingDimension(), getRowIncrement(), getViewedColumnsNumber(), getViewedRowsNumber(), tLVectorIncrement, and tLVectorIndex.

Here is the call graph for this function:

LAP_DoubleFullStorage & LAP_DoubleFullStorage::operator*= ( const LAP_DoubleFullStorage s)

multiply the matrices viewed term by term taking into account the view

References getLeadingDimension(), getRowIncrement(), getViewedColumnsNumber(), getViewedRowsNumber(), tLVectorIncrement, and tLVectorIndex.

Here is the call graph for this function:

LAP_DoubleFullStorage & LAP_DoubleFullStorage::operator+= ( const double &  s)

add s to the matrix viewed term by term taking into account the view

References getLeadingDimension(), getRowIncrement(), getViewedColumnsNumber(), getViewedRowsNumber(), tLVectorIncrement, and tLVectorIndex.

Here is the call graph for this function:

LAP_DoubleFullStorage & LAP_DoubleFullStorage::operator+= ( const LAP_DoubleFullStorage s)

add the matrices viewed term by term taking into account the view

References getLeadingDimension(), getRowIncrement(), getViewedColumnsNumber(), getViewedRowsNumber(), tLVectorIncrement, and tLVectorIndex.

Here is the call graph for this function:

LAP_DoubleFullStorage & LAP_DoubleFullStorage::operator-= ( const double &  s)

sub s to the matrix viewed term by term taking into account the view

LAP_DoubleFullStorage & LAP_DoubleFullStorage::operator-= ( const LAP_DoubleFullStorage s)

sub the matrices viewed term by term taking into account the view

References getLeadingDimension(), getRowIncrement(), getViewedColumnsNumber(), getViewedRowsNumber(), tLVectorIncrement, and tLVectorIndex.

Here is the call graph for this function:

LAP_DoubleFullStorage & LAP_DoubleFullStorage::operator/= ( const double &  s)

divide by s the matrix viewed term by term taking into account the view

LAP_DoubleFullStorage & LAP_DoubleFullStorage::operator/= ( const LAP_DoubleFullStorage s)

divide the matrices viewed term by term taking into account the view

References getLeadingDimension(), getRowIncrement(), getViewedColumnsNumber(), getViewedRowsNumber(), tLVectorIncrement, and tLVectorIndex.

Here is the call graph for this function:

const double& LAP_DoubleMatrixStorage::operator[] ( const tLVectorIndex index) const
inlineinherited

get the value at index for reading

Parameters
indexindex of the element
double& LAP_DoubleMatrixStorage::operator[] ( const tLVectorIndex index)
inlineinherited

get the value at index fro writing

Parameters
indexindex of the element
LAP_DoubleFullStorage & LAP_DoubleFullStorage::operator^= ( const double &  s)

sub s to the matrix viewed term by term taking into account the view

References getLeadingDimension(), getRowIncrement(), getViewedColumnsNumber(), getViewedRowsNumber(), tLVectorIncrement, and tLVectorIndex.

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:

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:

void LAP_DoubleFullStorage::removeColumn ( const tLVectorIndex j)

remove the column at index j

References LAP_DoubleMatrixStorage::getValues(), getViewedColumnsNumber(), and LAP_Vector< T >::removeValues().

Referenced by LAP_DoubleFullGeneralMatrix::removeColumn().

Here is the call graph for this function:

Here is the caller graph for this function:

void LAP_DoubleFullStorage::resetView ( )
inline

reset view

References LAP_Matrix::COL, LAP_DoubleMatrixStorage::getValuesNumber(), LAP_Matrix::ROW, and LAP_2DView::setView().

Referenced by setValues(), setValuesNumber(), and setValuesPointer().

Here is the call graph for this function:

Here is the caller graph for this function:

void LAP_DoubleFullStorage::reverseColumns ( )

reverese the column order

References getLeadingDimension(), getRowIncrement(), getViewedColumnsNumber(), getViewedRowsNumber(), tLVectorIncrement, and tLVectorIndex.

Referenced by LAP_DoubleFullGeneralMatrix::reverseColumns().

Here is the call graph for this function:

Here is the caller graph for this function:

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

set output

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_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:

virtual void LAP_DoubleFullStorage::setValues ( const tLVectorIndex n,
const double *  values 
)
inlinevirtual

copy the values to the matrix values

Reimplemented from LAP_DoubleMatrixStorage.

References resetView(), LAP_DoubleMatrixStorage::setValues(), and tLVectorIndex.

Referenced by LAP_DoubleFullSymmetricMatrix::setValues(), LAP_DoubleFullUpperMatrix::setValues(), and LAP_DoubleFullGeneralMatrix::setValues().

Here is the call graph for this function:

Here is the caller graph for this function:

virtual void LAP_DoubleFullStorage::setValues ( const tLVectorIndex rowSize,
const tLVectorIndex n,
const double *  values 
)
inlinevirtual

copy the values to the matrix values without taking account of the view

References resetView(), and LAP_DoubleMatrixStorage::setValues().

Here is the call graph for this function:

virtual void LAP_DoubleFullStorage::setValuesNumber ( const tLVectorIndex nRows,
const tLVectorIndex n 
)
inlinevirtual

set the values number

References resetView(), and LAP_DoubleMatrixStorage::setValuesNumber().

Referenced by copyBandStorage(), copyFullStorage(), copyPackStorage(), LAP_DoubleFullUpperMatrix::setSize(), LAP_DoubleFullGeneralMatrix::setSize(), and LAP_DoubleFullSymmetricMatrix::setSize().

Here is the call graph for this function:

Here is the caller graph for this function:

virtual void LAP_DoubleFullStorage::setValuesNumber ( const tLVectorIndex n)
inlinevirtual

set the values number

Reimplemented from LAP_DoubleMatrixStorage.

References resetView(), LAP_DoubleMatrixStorage::setValuesNumber(), and tLVectorIndex.

Here is the call graph for this function:

virtual void LAP_DoubleFullStorage::setValuesPointer ( SP::LAP_DoubleVector  v)
inlinevirtual

set the values of without copying

Reimplemented from LAP_DoubleMatrixStorage.

References resetView(), LAP_DoubleMatrixStorage::setValuesPointer(), and tLVectorIndex.

Referenced by LAP_DoubleFullUpperMatrix::setValues(), LAP_DoubleFullGeneralMatrix::setValues(), and LAP_DoubleFullSymmetricMatrix::setValues().

Here is the call graph for this function:

Here is the caller graph for this function:

virtual void LAP_DoubleFullStorage::setValuesPointer ( const tLVectorIndex rowSize,
SP::LAP_DoubleVector  v 
)
inlinevirtual

set the values of without copying

References resetView(), and LAP_DoubleMatrixStorage::setValuesPointer().

Here is the call graph for this function:

tBoolean LAP_DoubleFullStorage::setView ( const tFlag k,
const tLVectorIndex start,
const tLVectorIndex end,
const tLVectorIndex increment 
)
inline

set the the view the row/column element considered are in [start,end[ with increment inc

Returns
false if the new view length or end are greater than the size of the row/col of the matrix

References LAP_DoubleMatrixStorage::getValuesNumber(), LAP_2DView::setView(), and tLVectorIndex.

Here is the call graph for this function:

LAP_DoubleFullStorage & LAP_DoubleFullStorage::sub ( const tBoolean isPackedSymmetric,
const LAP_DoublePackedStorage s 
)

sub the matrices viewed term by term taking into account the view

References LAP_DoublePackedStorage::getDimension(), getLeadingDimension(), getRowIncrement(), getViewedColumnsNumber(), getViewedRowsNumber(), tLVectorIncrement, and tLVectorIndex.

Referenced by LAP_DoubleFullSymmetricMatrix::operator-=().

Here is the call graph for this function:

Here is the caller graph for this function:

void LAP_DoubleFullStorage::swapColumns ( const tLVectorIndex i,
const tLVectorIndex j 
)

swap the column i & j

swap 2 columns

References getRowIncrement(), getViewedColumnsNumber(), getViewedRowsNumber(), tLVectorIncrement, and tLVectorIndex.

Referenced by LAP_DoubleFullGeneralMatrix::swapColumns().

Here is the call graph for this function:

Here is the caller 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 CORE_Object::toString ( ) const
virtualinherited

return the string representation of the object node

Returns
the string representation of the object node

Reimplemented in MM_Attribute, MM_Structure, MMSD_DoubleSymmetricMatrix, CORE_Time, CORE_Vector< T >, CORE_Array< T >, CORE_Array< tString >, CORE_Array< int >, CORE_Array< tFlag >, MM_Class, MMSD_Model, LAP_DoubleMatrix, LAP_DoubleVector, CORE_Array2D< T >, MMSD_Cluster, MMSD_FluryGautschiGaussianLaw, CORE_Color, CORE_Matrix< T >, MMSD_DataSet, CORE_SharedPointersVMap< Key, Value >, CORE_SharedPointersVMap< tString, const CORE_Object >, CORE_SharedPointersVMap< tString, CORE_Object >, MATH_StiefelOptimizer, MMSD_Law, CORE_SharedPointersListVMap< Key, Value >, MATH_Equation, CORE_SharedPointersKVMap< Key, Value >, MATH_TranscendentEquation, MMSD_GaussianLaw, MMSD_GaussianCluster, MMSD_StiefelGaussianLaw, MATH_NewtonEquation, CORE_String, LAP_View, CORE_Integer, LAP_2DView, MMSD_StiefelFunction, CORE_Array3D< T >, MATH_CubicPolynom, MATH_QuadraticPolynom, MATH_ZeroEquation, MMSD_ConstraintGaussianCluster, CORE_Complex, CORE_Real, MATH_EigenFunction, and MATH_StiefelFunction.

References CORE_Object::getIdentityString().

Referenced by CORE_Object::print(), MM_ClassFactory::saveIntoFile(), CORE_SharedPointersKVMap< Key, Value >::toString(), CORE_SharedPointersListVMap< Key, Value >::toString(), MMSD_Law::toString(), CORE_SharedPointersVMap< Key, Value >::toString(), MMSD_Cluster::toString(), and MMSD_Model::toString().

Here is the call graph for this function:

Here is the caller graph for this function:

double LAP_DoubleFullStorage::trace ( ) const
virtual

return the sum of the diagonal element

Implements LAP_DoubleMatrixStorage.

References getLeadingDimension(), getRowIncrement(), getViewedColumnsNumber(), getViewedRowsNumber(), tLVectorIncrement, and tLVectorIndex.

Here is the call graph for this function:

Member Data Documentation

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: