9 #ifndef __IPSYMMATRIX_HPP__ 10 #define __IPSYMMATRIX_HPP__ 101 virtual SymMatrix* MakeNewSymMatrix()
const=0;
107 return MakeNewSymMatrix();
Number * x
Input: Starting point Output: Optimal solution.
virtual void ComputeRowAMaxImpl(Vector &rows_norms, bool init) const =0
Compute the max-norm of the rows in the matrix.
SymMatrixSpace(Index dim)
Constructor, given the dimension (identical to the number of rows and columns).
Index Dim() const
Dimension of the matrix (number of rows and columns)
double Number
Type of all numbers.
SymMatrix(const SymMatrixSpace *owner_space)
Constructor, taking the owner_space.
void MultVector(Number alpha, const Vector &x, Number beta, Vector &y) const
Matrix-vector multiply.
SmartPtr< const SymMatrixSpace > OwnerSymMatrixSpace() const
This is the base class for all derived symmetric matrix types.
Index NCols() const
Number of columns.
Template class for Smart Pointers.
virtual void ComputeColAMaxImpl(Vector &cols_norms, bool init) const
Since the matrix is symmetric, the row and column max norms are identical.
Matrix & operator=(const Matrix &)
Overloaded Equals Operator.
const SymMatrixSpace * owner_space_
Copy of the owner space ptr as a SymMatrixSpace instead of a MatrixSpace.
MatrixSpace base class, corresponding to the Matrix base class.
virtual Matrix * MakeNew() const
Overloaded MakeNew method for the MatrixSpace base class.
int Index
Type of all indices of vectors, matrices etc.
Index NRows() const
Number of rows.
virtual void TransMultVectorImpl(Number alpha, const Vector &x, Number beta, Vector &y) const
Since the matrix is symmetric, it is only necessary to implement the MultVectorImpl method in a class...
virtual ~SymMatrixSpace()
Destructor.
SymMatrixSpace base class, corresponding to the SymMatrix base class.
virtual ~SymMatrix()
Destructor.
Index Dim() const
Accessor method for the dimension of the matrices in this matrix space.