Epetra Package Browser (Single Doxygen Collection)
Development
|
Epetra_FastCrsOperator: A class for constructing matrix objects optimized for common kernels. More...
#include <Epetra_FastCrsMatrix.h>
Protected Member Functions | |
int | Allocate (bool UseFloats) |
Protected Attributes | |
const Epetra_CrsMatrix & | CrsMatrix_ |
int | NumMyRows_ |
int | NumMyNonzeros_ |
double * | Values_ |
float * | FloatValues_ |
int * | Indices_ |
unsigned short * | ShortIndices_ |
bool | UsingFloats_ |
bool | UsingShorts_ |
bool | ValuesAllocated_ |
Epetra_MultiVector * | ImportVector_ |
Epetra_MultiVector * | ExportVector_ |
Protected Attributes inherited from Epetra_CompObject | |
Epetra_Flops * | FlopCounter_ |
Constructors/Destructor | |
Epetra_FastCrsOperator (const Epetra_CrsMatrix &Matrix, bool UseFloats=false) | |
Epetra_FastCrsOperator constuctor. More... | |
virtual | ~Epetra_FastCrsOperator () |
Epetra_FastCrsOperator Destructor. More... | |
Post-construction modifications | |
int | UpdateValues (const Epetra_CrsMatrix &Matrix) |
Update values using a matrix with identical structure. More... | |
Additional methods required to support the Epetra_Operator interface | |
char * | Label () const |
Returns a character string describing the operator. More... | |
int | SetUseTranspose (bool UseTranspose) |
If set true, transpose of this operator will be applied. More... | |
double | NormInf () const |
Returns the infinity norm of the global matrix. More... | |
const Epetra_Comm & | Comm () const |
Returns a pointer to the Epetra_Comm communicator associated with this matrix. More... | |
int | Apply (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
Returns the result of a Epetra_Operator applied to a Epetra_MultiVector X in Y. More... | |
int | ApplyInverse (const Epetra_MultiVector &X, Epetra_MultiVector &Y) const |
Returns the result of a Epetra_Operator inverse applied to an Epetra_MultiVector X in Y. More... | |
bool | HasNormInf () const |
Returns true because this class can compute an Inf-norm. More... | |
bool | UseTranspose () const |
Returns the current UseTranspose setting. More... | |
const Epetra_Map & | OperatorDomainMap () const |
Returns the Epetra_Map object associated with the domain of this matrix operator. More... | |
const Epetra_Map & | OperatorRangeMap () const |
Returns the Epetra_Map object associated with the range of this matrix operator. More... | |
Additional Inherited Members | |
Public Member Functions inherited from Epetra_CompObject | |
Epetra_CompObject & | operator= (const Epetra_CompObject &src) |
Epetra_CompObject () | |
Basic Epetra_CompObject constuctor. More... | |
Epetra_CompObject (const Epetra_CompObject &Source) | |
Epetra_CompObject copy constructor. More... | |
virtual | ~Epetra_CompObject () |
Epetra_CompObject destructor. More... | |
void | SetFlopCounter (const Epetra_Flops &FlopCounter_in) |
Set the internal Epetra_Flops() pointer. More... | |
void | SetFlopCounter (const Epetra_CompObject &CompObject) |
Set the internal Epetra_Flops() pointer to the flop counter of another Epetra_CompObject. More... | |
void | UnsetFlopCounter () |
Set the internal Epetra_Flops() pointer to 0 (no flops counted). More... | |
Epetra_Flops * | GetFlopCounter () const |
Get the pointer to the Epetra_Flops() object associated with this object, returns 0 if none. More... | |
void | ResetFlops () const |
Resets the number of floating point operations to zero for this multi-vector. More... | |
double | Flops () const |
Returns the number of floating point operations with this multi-vector. More... | |
void | UpdateFlops (int Flops_in) const |
Increment Flop count for this object. More... | |
void | UpdateFlops (long int Flops_in) const |
Increment Flop count for this object. More... | |
void | UpdateFlops (long long Flops_in) const |
Increment Flop count for this object. More... | |
void | UpdateFlops (double Flops_in) const |
Increment Flop count for this object. More... | |
void | UpdateFlops (float Flops_in) const |
Increment Flop count for this object. More... | |
Public Member Functions inherited from Epetra_Operator | |
virtual | ~Epetra_Operator () |
Destructor. More... | |
Epetra_FastCrsOperator: A class for constructing matrix objects optimized for common kernels.
The Epetra_FastCrsOperator class takes an existing Epetra_CrsMatrix object, analyzes it and builds upon it for the purposes of obtaining the best possible performance on basic operations.
Definition at line 67 of file Epetra_FastCrsMatrix.h.
Epetra_FastCrsOperator::Epetra_FastCrsOperator | ( | const Epetra_CrsMatrix & | Matrix, |
bool | UseFloats = false |
||
) |
Epetra_FastCrsOperator constuctor.
|
virtual |
Epetra_FastCrsOperator Destructor.
int Epetra_FastCrsOperator::UpdateValues | ( | const Epetra_CrsMatrix & | Matrix | ) |
Update values using a matrix with identical structure.
|
inlinevirtual |
Returns a character string describing the operator.
Implements Epetra_Operator.
Definition at line 93 of file Epetra_FastCrsMatrix.h.
|
inlinevirtual |
If set true, transpose of this operator will be applied.
This flag allows the transpose of the given operator to be used implicitly. Setting this flag affects only the Apply() and ApplyInverse() methods. If the implementation of this interface does not support transpose use, this method should return a value of -1.
In | UseTranspose -If true, multiply by the transpose of operator, otherwise just use operator. |
Implements Epetra_Operator.
Definition at line 105 of file Epetra_FastCrsMatrix.h.
|
inlinevirtual |
Returns the infinity norm of the global matrix.
Implements Epetra_Operator.
Definition at line 111 of file Epetra_FastCrsMatrix.h.
|
inlinevirtual |
Returns a pointer to the Epetra_Comm communicator associated with this matrix.
Implements Epetra_Operator.
Definition at line 114 of file Epetra_FastCrsMatrix.h.
|
virtual |
Returns the result of a Epetra_Operator applied to a Epetra_MultiVector X in Y.
X | (In) - A Epetra_MultiVector of dimension NumVectors to multiply with matrix. |
Y | (Out) - A Epetra_MultiVector of dimension NumVectors containing result. |
Implements Epetra_Operator.
|
virtual |
Returns the result of a Epetra_Operator inverse applied to an Epetra_MultiVector X in Y.
X | (In) - A Epetra_MultiVector of dimension NumVectors to solve for. |
Y | (Out) - A Epetra_MultiVector of dimension NumVectors containing result. |
Implements Epetra_Operator.
|
inlinevirtual |
Returns true because this class can compute an Inf-norm.
Implements Epetra_Operator.
Definition at line 136 of file Epetra_FastCrsMatrix.h.
|
inlinevirtual |
Returns the current UseTranspose setting.
Implements Epetra_Operator.
Definition at line 139 of file Epetra_FastCrsMatrix.h.
|
inlinevirtual |
Returns the Epetra_Map object associated with the domain of this matrix operator.
Implements Epetra_Operator.
Definition at line 142 of file Epetra_FastCrsMatrix.h.
|
inlinevirtual |
Returns the Epetra_Map object associated with the range of this matrix operator.
Implements Epetra_Operator.
Definition at line 145 of file Epetra_FastCrsMatrix.h.
|
protected |
|
protected |
Definition at line 152 of file Epetra_FastCrsMatrix.h.
|
protected |
Definition at line 153 of file Epetra_FastCrsMatrix.h.
|
protected |
Definition at line 154 of file Epetra_FastCrsMatrix.h.
|
protected |
Definition at line 155 of file Epetra_FastCrsMatrix.h.
|
protected |
Definition at line 156 of file Epetra_FastCrsMatrix.h.
|
protected |
Definition at line 157 of file Epetra_FastCrsMatrix.h.
|
protected |
Definition at line 158 of file Epetra_FastCrsMatrix.h.
|
protected |
Definition at line 160 of file Epetra_FastCrsMatrix.h.
|
protected |
Definition at line 161 of file Epetra_FastCrsMatrix.h.
|
protected |
Definition at line 162 of file Epetra_FastCrsMatrix.h.
|
mutableprotected |
Definition at line 165 of file Epetra_FastCrsMatrix.h.
|
mutableprotected |
Definition at line 166 of file Epetra_FastCrsMatrix.h.