9 #ifndef __IPSYMTMATRIX_HPP__
10 #define __IPSYMTMATRIX_HPP__
19 class SymTMatrixSpace;
120 const std::string& name,
122 const std::string& prefix)
const;
Number * x
Input: Starting point Output: Optimal solution.
FORTRAN_INTEGER_TYPE ipfint
Class responsible for all message output.
SymMatrixSpace base class, corresponding to the SymMatrix base class.
This is the base class for all derived symmetric matrix types.
This is the matrix space for a SymTMatrix with fixed sparsity structure.
SymTMatrix * MakeNewSymTMatrix() const
Method for creating a new matrix of this specific type.
Index Nonzeros() const
Number of non-zeros in the sparse matrix.
Number * AllocateInternalStorage() const
Allocate internal storage for the SymTMatrix values.
void FreeInternalStorage(Number *values) const
Deallocate internal storage for the SymTMatrix values.
~SymTMatrixSpace()
Destructor.
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 an...
const Index * Irows() const
Row index of each non-zero element.
virtual SymMatrix * MakeNewSymMatrix() const
Overloaded MakeNew method for the sYMMatrixSpace base class.
const Index * Jcols() const
Column index of each non-zero element.
Class for symmetric matrices stored in triplet format.
void operator=(const SymTMatrix &)
Overloaded Equals Operator.
const Index * Jcols() const
Obtain pointer to the internal Index array jcn_ without the intention to change the matrix data (USE ...
virtual void PrintImpl(const Journalist &jnlst, EJournalLevel level, EJournalCategory category, const std::string &name, Index indent, const std::string &prefix) const
Print detailed information about the matrix.
virtual void ComputeRowAMaxImpl(Vector &rows_norms, bool init) const
Compute the max-norm of the rows in the matrix.
const SymTMatrixSpace * owner_space_
Copy of the owner_space ptr as a SymTMatrixSpace insteaqd of a MatrixSpace.
virtual bool HasValidNumbersImpl() const
Method for determining if all stored numbers are valid (i.e., no Inf or Nan).
Index Nonzeros() const
Number of nonzero entries.
void FillStruct(ipfint *Irn, ipfint *Jcn) const
Copy the nonzero structure into provided space.
const Number * Values() const
Obtain pointer to the internal Number array values_ without the intention to change the matrix data (...
Number * values_
Values of nonzeros.
const Index * Irows() const
Obtain pointer to the internal Index array irn_ without the intention to change the matrix data (USE ...
Number * Values()
Obtain pointer to the internal Number array values_ with the intention to change the matrix data (USE...
SymTMatrix(const SymTMatrixSpace *owner_space)
Constructor, taking the corresponding matrix space.
bool initialized_
Flag for Initialization.
SymTMatrix()
Default Constructor.
virtual void MultVectorImpl(Number alpha, const Vector &x, Number beta, Vector &y) const
Matrix-vector multiply.
void SetValues(const Number *Values)
Set values of nonzero elements.
void FillValues(Number *Values) const
Copy the value data into provided space.
SymTMatrix(const SymTMatrix &)
Copy Constructor.
EJournalCategory
Category Selection Enum.
int Index
Type of all indices of vectors, matrices etc.
EJournalLevel
Print Level Enum.
double Number
Type of all numbers.