44 #ifndef _EPETRA_SERIALDENSESVD_H_ 45 #define _EPETRA_SERIALDENSESVD_H_ 177 virtual int Solve(
void);
183 virtual int Invert(
double rthresh = 0.0,
double athresh = 0.0 );
292 int M()
const {
return(
M_);};
295 int N()
const {
return(
N_);};
298 double *
A()
const {
return(
A_);};
304 double *
B()
const {
return(
B_);};
313 double *
X()
const {
return(
X_);};
318 double *
S()
const {
return(
S_);};
380 virtual void Print(std::ostream& os)
const;
422 {
SetVectors(const_cast<Epetra_SerialDenseMatrix&>(Xmat),Ymat);
int LDX() const
Returns the leading dimension of the solution.
double * AI() const
Returns pointer to the inverted matrix (may be the same as A() if factorization done in place)...
int LDAI() const
Returns the leading dimension of the inverted matrix.
virtual double NormInf() const
Returns the infinity norm of the global matrix.
int M() const
Returns row dimension of system.
virtual double NormInf() const
Computes the Infinity-Norm of the this matrix.
virtual void Print(std::ostream &os) const
Print service methods; defines behavior of ostream << operator.
Epetra_SerialDenseMatrix * InvertedMatrix() const
Returns pointer to inverted matrix (assuming inverse has been performed).
virtual int Invert(double rthresh=0.0, double athresh=0.0)
Inverts the this matrix.
Epetra_SerialDenseMatrix * Inverse_
virtual bool HasNormInf() const
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Epetra_SerialDenseSVD: A class for SVDing dense linear problems.
virtual int RowDim() const
Returns the row dimension of operator.
Epetra_SerialDenseMatrix: A class for constructing and using real double precision general dense matr...
bool Solved()
Returns true if the current set of vectors has been solved.
Epetra_SerialDenseMatrix * Matrix_
Epetra_BLAS: The Epetra BLAS Wrapper Class.
Epetra_SerialDenseMatrix * LHS() const
Returns pointer to current LHS.
virtual ~Epetra_SerialDenseSVD()
Epetra_SerialDenseSVD destructor.
double * X() const
Returns pointer to current solution.
Epetra_Object: The base Epetra class.
Epetra_SerialDenseMatrix * RHS_
Epetra_CompObject: Functionality and data that is common to all computational classes.
virtual bool UseTranspose() const
Returns the current UseTranspose setting.
Epetra_SerialDenseMatrix * Matrix() const
Returns pointer to current matrix.
Epetra_LAPACK: The Epetra LAPACK Wrapper Class.
Epetra_SerialDenseOperator: A pure virtual class for using real-valued double-precision operators...
int LDA() const
Returns the leading dimension of the this matrix.
Epetra_SerialDenseSVD()
Default constructor; matrix should be set using SetMatrix(), LHS and RHS set with SetVectors()...
int SetVectors(Epetra_SerialDenseMatrix &X, Epetra_SerialDenseMatrix &B)
Sets the pointers for left and right hand side vector(s).
Epetra_SerialDenseSVD & operator=(const Epetra_SerialDenseSVD &Source)
int Multiply(char TransA, char TransB, double ScalarAB, const Epetra_SerialDenseMatrix &A, const Epetra_SerialDenseMatrix &B, double ScalarThis)
Matrix-Matrix multiplication, this = ScalarThis*this + ScalarAB*A*B.
virtual const char * Label() const
Epetra_Object Label access funtion.
bool Inverted()
Returns true if matrix inverse has been computed (inverse available via AF() and LDAF()).
int N() const
Returns column dimension of system.
int LDB() const
Returns the leading dimension of the RHS.
virtual int ApplyInverse(const Epetra_SerialDenseMatrix &Xmat, Epetra_SerialDenseMatrix &Ymat)
Returns the result of a Epetra_SerialDenseOperator inverse applied to an Epetra_SerialDenseMatrix X i...
virtual int Apply(const Epetra_SerialDenseMatrix &Xmat, Epetra_SerialDenseMatrix &Ymat)
Returns the result of a Epetra_SerialDenseOperator applied to a Epetra_SerialDenseMatrix X in Y...
virtual int ColDim() const
Returns the column dimension of operator.
int NRHS() const
Returns the number of current right hand sides and solution vectors.
int SetMatrix(Epetra_SerialDenseMatrix &A)
Sets the pointers for coefficient matrix.
void SolveWithTranspose(bool Flag)
Causes equilibration to be called just before the matrix factorization as part of the call to Factor...
double * A() const
Returns pointer to the this matrix.
bool Transpose()
Returns true if transpose of this matrix has and will be used.
virtual int Solve(void)
Computes the solution X to AX = B for the this matrix and the B provided to SetVectors()..
virtual const char * Label() const
Returns a character string describing the operator.
Epetra_SerialDenseMatrix * LHS_
virtual int SetUseTranspose(bool use_transpose)
If set true, transpose of this operator will be applied.
Epetra_SerialDenseMatrix * RHS() const
Returns pointer to current RHS.
double * B() const
Returns pointer to current RHS.
bool Factored()
Returns true if matrix is factored (factor available via AF() and LDAF()).
double ANORM() const
Returns the 1-Norm of the this matrix (returns -1 if not yet computed).