a data structure to represent row reference elements in a MatrixType object Each nonzero element references a row (if index is negative) or constraint (otherwise) This class allows the combining of row and constraint references in a single matrix constructor. More...
#include <OSMatrix.h>
Public Member Functions | |
MixedRowReferenceMatrixElements () | |
-------— Methods for class MixedRowReferenceMatrixElements -------— More... | |
~MixedRowReferenceMatrixElements () | |
virtual ENUM_MATRIX_CONSTRUCTOR_TYPE | getNodeType () |
virtual ENUM_MATRIX_TYPE | getMatrixType () |
virtual std::string | getNodeName () |
virtual std::string | getMatrixNodeInXML () |
virtual bool | alignsOnBlockBoundary (int firstRow, int firstColumn, int nRows, int nCols) |
Check whether a submatrix aligns with the block partition of a matrix or block or other constructor. More... | |
virtual MixedRowReferenceMatrixElements * | cloneMatrixNode () |
bool | IsEqual (MixedRowReferenceMatrixElements *that) |
A function to check for the equality of two objects. More... | |
bool | setRandom (double density, bool conformant, int iMin, int iMax) |
A function to make a random instance of this class. More... | |
bool | deepCopyFrom (MixedRowReferenceMatrixElements *that) |
A function to make a deep copy of an instance of this class. More... | |
![]() | |
MatrixElements () | |
-------— Methods for class MatrixElements -------— More... | |
virtual | ~MatrixElements () |
bool | getRowMajor () |
Returns whether the matrix is stored row-wise or column-wise. More... | |
bool | IsEqual (MatrixElements *that) |
A function to check for the equality of two objects. More... | |
![]() | |
MatrixConstructor () | |
constructor More... | |
virtual | ~MatrixConstructor () |
destructor More... | |
![]() | |
MatrixNode () | |
default constructor More... | |
virtual | ~MatrixNode () |
destructor More... | |
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 bool | IsEqual (MatrixNode *that) |
A function to check for the equality of two objects. More... | |
bool | setRandom (double density, bool conformant, int iMin, int iMax) |
A function to make a random instance of this class. More... | |
bool | deepCopyFrom (MatrixNode *that) |
A function to make a deep copy of an instance of this class. More... | |
Public Attributes | |
ConReferenceMatrixValues * | value |
The row references (indexes of core rows plus value type) of the elements. More... | |
![]() | |
bool | rowMajor |
To indicate whether the matrix elements are stored in row major form or column major form. More... | |
int | numberOfValues |
numberOfValues records the number of entries in the arrays that make up the instance of nonzeros More... | |
IntVector * | start |
A vector listing the row or column starts. More... | |
IntVector * | index |
The index array of the (nonzero) elements. More... | |
![]() | |
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 More... | |
ENUM_MATRIX_CONSTRUCTOR_TYPE | nType |
nType is a unique integer assigned to each type of matrix node (see OSParameters.h) More... | |
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 More... | |
MatrixNode ** | m_mChildren |
m_mChildren holds all the children, that is, nodes used in the definition or construction of the current node. More... | |
a data structure to represent row reference elements in a MatrixType object Each nonzero element references a row (if index is negative) or constraint (otherwise) This class allows the combining of row and constraint references in a single matrix constructor.
Definition at line 1264 of file OSMatrix.h.
MixedRowReferenceMatrixElements::MixedRowReferenceMatrixElements | ( | ) |
-------— Methods for class MixedRowReferenceMatrixElements -------—
Definition at line 5838 of file OSMatrix.cpp.
MixedRowReferenceMatrixElements::~MixedRowReferenceMatrixElements | ( | ) |
Definition at line 5846 of file OSMatrix.cpp.
|
virtual |
Reimplemented from MatrixNode.
Definition at line 5856 of file OSMatrix.cpp.
|
virtual |
Implements MatrixNode.
Definition at line 5866 of file OSMatrix.cpp.
|
virtual |
Implements MatrixNode.
Definition at line 5861 of file OSMatrix.cpp.
|
virtual |
The following method writes the row reference elements in OSgL format. it is used by OSgLWriter to write a <matrix> element.
These elements have to be printed in two passes: objReference elements first, followed by conReference elements
Implements MatrixNode.
Definition at line 5873 of file OSMatrix.cpp.
|
virtual |
Check whether a submatrix aligns with the block partition of a matrix or block or other constructor.
firstRow | gives the number of the first row in the submatrix (zero-based) |
firstColumn | gives the number of the first column in the submatrix (zero-based) |
nRows | gives the number of rows in the submatrix |
nColumns | gives the number of columns in the submatrix |
Implements MatrixNode.
Definition at line 6054 of file OSMatrix.cpp.
|
virtual |
Create or clone a node of this type. This is an abstract method which is required to be implemented by the concrete operator nodes that derive or extend from this class.
Implements MatrixNode.
Definition at line 6059 of file OSMatrix.cpp.
bool MixedRowReferenceMatrixElements::IsEqual | ( | MixedRowReferenceMatrixElements * | that | ) |
A function to check for the equality of two objects.
Definition at line 6066 of file OSMatrix.cpp.
bool MixedRowReferenceMatrixElements::setRandom | ( | double | density, |
bool | conformant, | ||
int | iMin, | ||
int | iMax | ||
) |
A function to make a random instance of this class.
density,: | corresponds to the probability that a particular child element is created |
conformant,: | if true enforces side constraints not enforceable in the schema (e.g., agreement of "numberOfXXX" attributes and <XXX> children) |
iMin,: | lowest index value (inclusive) that a variable reference in this matrix can take |
iMax,: | greatest index value (inclusive) that a variable reference in this matrix can take |
Definition at line 6108 of file OSMatrix.cpp.
bool MixedRowReferenceMatrixElements::deepCopyFrom | ( | MixedRowReferenceMatrixElements * | that | ) |
A function to make a deep copy of an instance of this class.
that,: | the instance from which information is to be copied |
Definition at line 6113 of file OSMatrix.cpp.
ConReferenceMatrixValues* MixedRowReferenceMatrixElements::value |
The row references (indexes of core rows plus value type) of the elements.
This information is recycled from the ConReferenceMatrix class. Negative indices describe objectives (in which case the value type must be ENUM_CONREFERENCE_VALUETYPE_value).
Row reference elements are not part of the OSiL schema; they only exist in the consolidated form of a matrix (where they are the ONLY constructor).
Definition at line 1275 of file OSMatrix.h.