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_DoubleMatrixStorage Class Referenceabstract

#include <LAP_DoubleMatrixStorage.h>

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

Public Member Functions

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...
 
virtual double & operator() (const tLVectorIndex &i, const tLVectorIndex &j)=0
 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 =0
 accessor of element at row i and column j More...
 
virtual tBoolean copy (const tBoolean &isSymmetric, const tBoolean &isUpper, const tBoolean &isTransposed, const LAP_DoubleMatrixStorage &x)
 copy the storage More...
 
void init (const double &v)
 init the values More...
 
virtual void setValuesPointer (SP::LAP_DoubleVector v)
 set the vector values by reference More...
 
virtual void setValues (const tLVectorIndex &n, const double *values)
 copy the values More...
 
virtual void setValuesNumber (const tLVectorIndex &n)
 set the values number 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)
 
virtual double trace () const =0
 compute the trace of the storage More...
 
virtual void addDiagonal (const double &alpha)=0
 add alpha to diagonal More...
 
virtual pair< tLVectorIndex,
tLVectorIndex
computeBandsNumber () const =0
 compute the bands number of the storage 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...
 
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 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

 LAP_DoubleMatrixStorage ()
 build a matrix More...
 
virtual ~LAP_DoubleMatrixStorage ()
 destroy a matrix More...
 
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_DoubleMatrixStorage::LAP_DoubleMatrixStorage ( )
inlineprotected

build a matrix

References LAP_DoubleVector::New().

Here is the call graph for this function:

virtual LAP_DoubleMatrixStorage::~LAP_DoubleMatrixStorage ( )
inlineprotectedvirtual

destroy a matrix

Member Function Documentation

virtual void LAP_DoubleMatrixStorage::addDiagonal ( const double &  alpha)
pure virtual

add alpha to diagonal

Parameters
alphathe value to add

Implemented in LAP_DoubleFullStorage, LAP_DoubleBandedStorage, and LAP_DoublePackedStorage.

virtual pair<tLVectorIndex,tLVectorIndex> LAP_DoubleMatrixStorage::computeBandsNumber ( ) const
pure 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

Implemented in LAP_DoubleFullStorage, LAP_DoubleBandedStorage, and LAP_DoublePackedStorage.

virtual tBoolean LAP_DoubleMatrixStorage::copy ( const tBoolean isSymmetric,
const tBoolean isUpper,
const tBoolean isTransposed,
const LAP_DoubleMatrixStorage x 
)
inlinevirtual

copy the storage

Parameters
xthe storage to copy

Reimplemented in LAP_DoubleBandedStorage, LAP_DoublePackedStorage, and LAP_DoubleFullStorage.

References LAP_DoubleVector::copy(), and getValues().

Referenced by LAP_DoubleMatrix::copy(), LAP_DoubleFullStorage::copy(), LAP_DoublePackedStorage::copy(), and LAP_DoubleBandedStorage::copy().

Here is the call graph for this function:

Here is the caller graph for this function:

tLVectorIndex LAP_DoubleMatrixStorage::getCapacity ( ) const
inline

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:

double LAP_DoubleMatrixStorage::getFillRate ( ) const
inline

get the fill rate of the matrix

References getNullValuesNumber(), and 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:

double& LAP_Object::getNullValue ( )
inlineinherited
const double& LAP_Object::getNullValue ( ) const
inlineinherited

get a const null value

virtual tLVectorIndex LAP_DoubleMatrixStorage::getNullValuesNumber ( ) const
inlinevirtual

get the number of null values

References tLVectorIndex, and LAP_Object::ZERO_EPSILON.

Referenced by 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 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

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

get type name

References tString.

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

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
inline
virtual void LAP_DoubleMatrixStorage::getValuesPointer ( SP::LAP_DoubleVector &  v)
inlinevirtual

Referenced by LAP_DoubleFullSymmetricMatrix::computeEigenValueDecomposition().

Here is the caller graph for this function:

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

virtual double& LAP_DoubleMatrixStorage::operator() ( const tLVectorIndex i,
const tLVectorIndex j 
)
pure virtual

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

Implemented in LAP_DoubleFullStorage, LAP_DoubleBandedStorage, and LAP_DoublePackedStorage.

virtual const double& LAP_DoubleMatrixStorage::operator() ( const tLVectorIndex i,
const tLVectorIndex j 
) const
pure virtual

accessor of element at row i and column j

Implemented in LAP_DoubleFullStorage, LAP_DoubleBandedStorage, and LAP_DoublePackedStorage.

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

get the value at index for reading

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

get the value at index fro writing

Parameters
indexindex of the element
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:

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_DoubleMatrixStorage::setValues ( const tLVectorIndex n,
const double *  values 
)
inlinevirtual

copy the values

Parameters
n: size of values
values: the values array

Reimplemented in LAP_DoubleFullStorage.

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

Referenced by LAP_DoublePackedStorage::copyPackStorage(), LAP_DoubleFullStorage::setValues(), LAP_DoublePackedUpperMatrix::setValues(), LAP_DoublePackedSymmetricMatrix::setValues(), LAP_DoubleBandedSymmetricMatrix::setValues(), and LAP_DoubleBandedUpperMatrix::setValues().

Here is the call graph for this function:

Here is the caller graph for this function:

virtual void LAP_DoubleMatrixStorage::setValuesNumber ( const tLVectorIndex n)
inlinevirtual
virtual void LAP_DoubleMatrixStorage::setValuesPointer ( SP::LAP_DoubleVector  v)
inlinevirtual
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:

virtual double LAP_DoubleMatrixStorage::trace ( ) const
pure virtual

compute the trace of the storage

Implemented in LAP_DoubleFullStorage, LAP_DoubleBandedStorage, and LAP_DoublePackedStorage.

Referenced by LAP_DoubleMatrix::trace().

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