This is the matrix space for a SymTMatrix with fixed sparsity structure. More...
#include <IpSymTMatrix.hpp>
Public Member Functions | |
virtual SymMatrix * | MakeNewSymMatrix () const |
Overloaded MakeNew method for the sYMMatrixSpace base class. | |
SymTMatrix * | MakeNewSymTMatrix () const |
Method for creating a new matrix of this specific type. | |
Constructors / Destructors | |
SymTMatrixSpace (Index dim, Index nonZeros, const Index *iRows, const Index *jCols) | |
Constructor, given the number of rows and columns (both as dim), as well as the number of nonzeros and the position of the nonzero elements. | |
~SymTMatrixSpace () | |
Destructor. | |
Methods describing Matrix structure | |
Index | Nonzeros () const |
Number of non-zeros in the sparse matrix. | |
const Index * | Irows () const |
Row index of each non-zero element. | |
const Index * | Jcols () const |
Column index of each non-zero element. | |
Private Member Functions | |
Methods called by SymTMatrix for memory management | |
Number * | AllocateInternalStorage () const |
Allocate internal storage for the SymTMatrix values. | |
void | FreeInternalStorage (Number *values) const |
Deallocate internal storage for the SymTMatrix values. | |
Private Attributes | |
const Index | nonZeros_ |
Index * | iRows_ |
Index * | jCols_ |
Friends | |
class | SymTMatrix |
This is the matrix space for a SymTMatrix with fixed sparsity structure.
The sparsity structure is stored here in the matrix space.
Definition at line 161 of file IpSymTMatrix.hpp.
Ipopt::SymTMatrixSpace::SymTMatrixSpace | ( | Index | dim, | |
Index | nonZeros, | |||
const Index * | iRows, | |||
const Index * | jCols | |||
) |
Constructor, given the number of rows and columns (both as dim), as well as the number of nonzeros and the position of the nonzero elements.
Note that the counting of the nonzeros starts a 1, i.e., iRows[i]==1 and jCols[i]==1 refers to the first element in the first row. This is in accordance with the HSL data structure. Off-diagonal elements are stored only once.
Ipopt::SymTMatrixSpace::~SymTMatrixSpace | ( | ) |
Destructor.
virtual SymMatrix* Ipopt::SymTMatrixSpace::MakeNewSymMatrix | ( | ) | const [inline, virtual] |
Overloaded MakeNew method for the sYMMatrixSpace base class.
Implements Ipopt::SymMatrixSpace.
Definition at line 183 of file IpSymTMatrix.hpp.
SymTMatrix* Ipopt::SymTMatrixSpace::MakeNewSymTMatrix | ( | ) | const [inline] |
Method for creating a new matrix of this specific type.
Definition at line 189 of file IpSymTMatrix.hpp.
Index Ipopt::SymTMatrixSpace::Nonzeros | ( | ) | const [inline] |
Number of non-zeros in the sparse matrix.
Definition at line 197 of file IpSymTMatrix.hpp.
const Index* Ipopt::SymTMatrixSpace::Irows | ( | ) | const [inline] |
Row index of each non-zero element.
Definition at line 203 of file IpSymTMatrix.hpp.
const Index* Ipopt::SymTMatrixSpace::Jcols | ( | ) | const [inline] |
Column index of each non-zero element.
Definition at line 209 of file IpSymTMatrix.hpp.
Number* Ipopt::SymTMatrixSpace::AllocateInternalStorage | ( | ) | const [private] |
Allocate internal storage for the SymTMatrix values.
void Ipopt::SymTMatrixSpace::FreeInternalStorage | ( | Number * | values | ) | const [private] |
Deallocate internal storage for the SymTMatrix values.
friend class SymTMatrix [friend] |
Definition at line 229 of file IpSymTMatrix.hpp.
const Index Ipopt::SymTMatrixSpace::nonZeros_ [private] |
Definition at line 225 of file IpSymTMatrix.hpp.
Index* Ipopt::SymTMatrixSpace::iRows_ [private] |
Definition at line 226 of file IpSymTMatrix.hpp.
Index* Ipopt::SymTMatrixSpace::jCols_ [private] |
Definition at line 227 of file IpSymTMatrix.hpp.