IFPACK Development
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Ifpack_OverlapFactorObject Class Referenceabstract

Ifpack_OverlapFactorObject: Supports functionality common to Ifpack overlap factorization classes. More...

#include <Ifpack_OverlapFactorObject.h>

Inheritance diagram for Ifpack_OverlapFactorObject:
Inheritance graph
[legend]
Collaboration diagram for Ifpack_OverlapFactorObject:
Collaboration graph
[legend]

Public Member Functions

 Ifpack_OverlapFactorObject (const Ifpack_OverlapGraph *OverlapGraph)
 Constructor using Ifpack_OverlapGraph.
 
 Ifpack_OverlapFactorObject (const Epetra_RowMatrix *UserMatrix)
 Constructor using Epetra_RowMatrix.
 
 Ifpack_OverlapFactorObject (const Ifpack_OverlapFactorObject &Source)
 Copy constructor.
 
virtual ~Ifpack_OverlapFactorObject ()
 Ifpack_OverlapFactorObject Destructor.
 
virtual int InitValues (const Epetra_RowMatrix *UserMatrix)
 Initialize values from user matrix A, can be called repeatedly as matrix values change.
 
virtual int Factor ()
 Compute factors.
 
bool Allocated () const
 If storage has been allocated, this query returns true, otherwise it returns false.
 
bool ValuesInitialized () const
 If values have been initialized, this query returns true, otherwise it returns false.
 
bool Factored () const
 If factor is completed, this query returns true, otherwise it returns false.
 

Protected Member Functions

virtual int ProcessOverlapMatrix (const Epetra_RowMatrix &A)=0
 Virtual method that processes the overlap matrix as needed by the derived class.
 
virtual int DerivedFactor ()=0
 Virtual method that computes the factors as needed by the derived class.
 
void SetAllocated (bool Flag)
 
void SetFactored (bool Flag)
 
void SetValuesInitialized (bool Flag)
 

Protected Attributes

bool Factored_
 
bool Allocated_
 
bool ValuesInitialized_
 
Ifpack_OverlapGraphOverlapGraph_
 
Epetra_RowMatrixUserMatrix_
 

Detailed Description

Ifpack_OverlapFactorObject: Supports functionality common to Ifpack overlap factorization classes.

Definition at line 48 of file Ifpack_OverlapFactorObject.h.

Constructor & Destructor Documentation

◆ Ifpack_OverlapFactorObject() [1/2]

Ifpack_OverlapFactorObject::Ifpack_OverlapFactorObject ( const Ifpack_OverlapGraph * OverlapGraph)

Constructor using Ifpack_OverlapGraph.

Creates an object from the overlap graph.

Parameters
InOverlapGraph - Graph describing the graph that should be used for the factors.

◆ Ifpack_OverlapFactorObject() [2/2]

Ifpack_OverlapFactorObject::Ifpack_OverlapFactorObject ( const Epetra_RowMatrix * UserMatrix)

Constructor using Epetra_RowMatrix.

Creates an Ifpack_Graph object from the user graph implicitly defined by the Epetra_RowMatrix interface.

Parameters
InRowMatrix - An object that has implemented the Epetra_RowMatrix interface.

Member Function Documentation

◆ Allocated()

bool Ifpack_OverlapFactorObject::Allocated ( ) const
inline

If storage has been allocated, this query returns true, otherwise it returns false.

Definition at line 97 of file Ifpack_OverlapFactorObject.h.

◆ DerivedFactor()

virtual int Ifpack_OverlapFactorObject::DerivedFactor ( )
protectedpure virtual

Virtual method that computes the factors as needed by the derived class.

This method is called by Factor() afer some safety checks have been performed.

Implemented in Ifpack_CrsIlut.

◆ Factor()

virtual int Ifpack_OverlapFactorObject::Factor ( )
virtual

Compute factors.

This function computes factors using the method DerivedFactor() that is implemented by the derived class. InitValues() must be called before the factorization can proceed.

◆ Factored()

bool Ifpack_OverlapFactorObject::Factored ( ) const
inline

If factor is completed, this query returns true, otherwise it returns false.

Definition at line 103 of file Ifpack_OverlapFactorObject.h.

◆ InitValues()

virtual int Ifpack_OverlapFactorObject::InitValues ( const Epetra_RowMatrix * UserMatrix)
virtual

Initialize values from user matrix A, can be called repeatedly as matrix values change.

Processes matrix values, primarily handling overlap if any has been requested. This method then calls ProcessOverlapMatrix(), a virtual method that must be implemented by any class that derives from this class.

Parameters
InUserMatrix - User matrix to be processed.

◆ ProcessOverlapMatrix()

virtual int Ifpack_OverlapFactorObject::ProcessOverlapMatrix ( const Epetra_RowMatrix & A)
protectedpure virtual

Virtual method that processes the overlap matrix as needed by the derived class.

This method is called by InitValues() afer the user matrix has been distributed to support overlap (if any overlap is requested). ProcessOverlapMatrix must be implemented by any derived class of Ifpack_OverlapFactorObject.

Implemented in Ifpack_CrsIlut.

◆ SetAllocated()

void Ifpack_OverlapFactorObject::SetAllocated ( bool Flag)
inlineprotected

Definition at line 122 of file Ifpack_OverlapFactorObject.h.

◆ SetFactored()

void Ifpack_OverlapFactorObject::SetFactored ( bool Flag)
inlineprotected

Definition at line 123 of file Ifpack_OverlapFactorObject.h.

◆ SetValuesInitialized()

void Ifpack_OverlapFactorObject::SetValuesInitialized ( bool Flag)
inlineprotected

Definition at line 124 of file Ifpack_OverlapFactorObject.h.

◆ ValuesInitialized()

bool Ifpack_OverlapFactorObject::ValuesInitialized ( ) const
inline

If values have been initialized, this query returns true, otherwise it returns false.

Definition at line 100 of file Ifpack_OverlapFactorObject.h.

Member Data Documentation

◆ Allocated_

bool Ifpack_OverlapFactorObject::Allocated_
protected

Definition at line 127 of file Ifpack_OverlapFactorObject.h.

◆ Factored_

bool Ifpack_OverlapFactorObject::Factored_
protected

Definition at line 126 of file Ifpack_OverlapFactorObject.h.

◆ OverlapGraph_

Ifpack_OverlapGraph* Ifpack_OverlapFactorObject::OverlapGraph_
protected

Definition at line 129 of file Ifpack_OverlapFactorObject.h.

◆ UserMatrix_

Epetra_RowMatrix* Ifpack_OverlapFactorObject::UserMatrix_
protected

Definition at line 130 of file Ifpack_OverlapFactorObject.h.

◆ ValuesInitialized_

bool Ifpack_OverlapFactorObject::ValuesInitialized_
protected

Definition at line 128 of file Ifpack_OverlapFactorObject.h.


The documentation for this class was generated from the following file: