My Project
MatrixElements Class Reference

an abstract class to help represent the elements in a MatrixType object From this we derive concrete classes that are used to store specific types of values, such as constant values, variable references, general nonlinear expressions, etc. More...

#include <OSMatrix.h>

Inheritance diagram for MatrixElements:
MatrixConstructor MatrixNode ConReferenceMatrixElements ConstantMatrixElements GeneralMatrixElements LinearMatrixElements MixedRowReferenceMatrixElements ObjReferenceMatrixElements VarReferenceMatrixElements

Public Member Functions

 MatrixElements ()
 -------— Methods for class MatrixElements -------—
 
virtual ~MatrixElements ()
 
bool getRowMajor ()
 Returns whether the matrix is stored row-wise or column-wise.
 
bool IsEqual (MatrixElements *that)
 A function to check for the equality of two objects.
 
- Public Member Functions inherited from MatrixConstructor
 MatrixConstructor ()
 constructor
 
virtual ~MatrixConstructor ()
 destructor
 
- Public Member Functions inherited from MatrixNode
 MatrixNode ()
 default constructor
 
virtual ~MatrixNode ()
 destructor
 
virtual ENUM_MATRIX_CONSTRUCTOR_TYPE getNodeType ()
 
virtual ENUM_MATRIX_TYPE getMatrixType ()=0
 
virtual std::string getNodeName ()=0
 
virtual std::string getMatrixNodeInXML ()=0
 
std::vector< MatrixNode * > getPrefixFromNodeTree ()
 
std::vector< MatrixNode * > preOrderMatrixNodeTraversal (std::vector< MatrixNode * > *prefixVector)
 
std::vector< MatrixNode * > getPostfixFromNodeTree ()
 
std::vector< MatrixNode * > postOrderMatrixNodeTraversal (std::vector< MatrixNode * > *postfixVector)
 
virtual MatrixNodecloneMatrixNode ()=0
 
virtual bool alignsOnBlockBoundary (int firstRow, int firstColumn, int nRows, int nCols)=0
 Check whether a submatrix aligns with the block partition of a matrix or block or other constructor.
 
virtual bool IsEqual (MatrixNode *that)
 A function to check for the equality of two objects.
 
bool setRandom (double density, bool conformant, int iMin, int iMax)
 A function to make a random instance of this class.
 
bool deepCopyFrom (MatrixNode *that)
 A function to make a deep copy of an instance of this class.
 

Public Attributes

bool rowMajor
 To indicate whether the matrix elements are stored in row major form or column major form.
 
int numberOfValues
 numberOfValues records the number of entries in the arrays that make up the instance of nonzeros
 
IntVectorstart
 A vector listing the row or column starts.
 
IntVectorindex
 The index array of the (nonzero) elements.
 
- Public Attributes inherited from MatrixNode
ENUM_MATRIX_TYPE matrixType
 matrixType tracks the type of elements contained in this MatrixNode, which may be useful in solver selection For an enumeration of the possible types see OSParameters.h
 
ENUM_MATRIX_CONSTRUCTOR_TYPE nType
 nType is a unique integer assigned to each type of matrix node (see OSParameters.h)
 
unsigned int inumberOfChildren
 inumberOfChildren is the number of MatrixNode child elements For the matrix types (OSMatrix and MatrixBlock) this number is not fixed and is temporarily set to 0
 
MatrixNode ** m_mChildren
 m_mChildren holds all the children, that is, nodes used in the definition or construction of the current node.
 

Detailed Description

an abstract class to help represent the elements in a MatrixType object From this we derive concrete classes that are used to store specific types of values, such as constant values, variable references, general nonlinear expressions, etc.

Definition at line 248 of file OSMatrix.h.

Constructor & Destructor Documentation

◆ MatrixElements()

MatrixElements::MatrixElements ( )

-------— Methods for class MatrixElements -------—

Definition at line 2837 of file OSMatrix.cpp.

◆ ~MatrixElements()

MatrixElements::~MatrixElements ( )
virtual

Definition at line 2848 of file OSMatrix.cpp.

Member Function Documentation

◆ getRowMajor()

bool MatrixElements::getRowMajor ( )

Returns whether the matrix is stored row-wise or column-wise.

Definition at line 2879 of file OSMatrix.cpp.

◆ IsEqual()

bool MatrixElements::IsEqual ( MatrixElements * that)

A function to check for the equality of two objects.

The following method writes a matrix node in OSgL format. it is used by OSgLWriter to write a <matrix> element.

Returns
the MatrixNode and its children as an OSgL string.

Definition at line 2896 of file OSMatrix.cpp.

Member Data Documentation

◆ rowMajor

bool MatrixElements::rowMajor

To indicate whether the matrix elements are stored in row major form or column major form.

Definition at line 255 of file OSMatrix.h.

◆ numberOfValues

int MatrixElements::numberOfValues

numberOfValues records the number of entries in the arrays that make up the instance of nonzeros

Definition at line 261 of file OSMatrix.h.

◆ start

IntVector* MatrixElements::start

A vector listing the row or column starts.

Definition at line 266 of file OSMatrix.h.

◆ index

IntVector* MatrixElements::index

The index array of the (nonzero) elements.

Definition at line 269 of file OSMatrix.h.


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