NOX::Petsc::SharedJacobian Class Reference

Shared Jacobian for NOX::Petsc::Group objects. More...

#include <NOX_Petsc_SharedJacobian.H>

Collaboration diagram for NOX::Petsc::SharedJacobian:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 SharedJacobian (Mat &j)
 Constructor.
 SharedJacobian (Mat &j, Mat &p)
 Constructor with separate Matrices for the Jacobian and preconditioner.
 ~SharedJacobian ()
 Destructor.
Mat & getJacobian (const Group *newowner)
 Get a reference to the Jacobian AND take ownership.
const Mat & getJacobian () const
 Return a const pointer to the Jacobian.
bool isOwner (const Group *grp) const
 Return true if grp is the owner of the Jacobian.
Mat & getPrec (const Group *newowner)
 Get a reference to the Jacobian AND take ownership.
const Mat & getPrec () const
 Return a const pointer to the Jacobian.

Protected Attributes

Mat * jacobian
 Pointer to Petsc Jacobian matrix.
Mat * prec
 Pointer to Petsc Preconditioning Matrix.
const Groupowner
 Pointer to const group that owns Jacobian.


Detailed Description

Shared Jacobian for NOX::Petsc::Group objects.

Due to the size of the Jacobian, we cannot afford to have multiple copies. Instead we implement a shared Jacobian that all groups use.

NOTE: An additional matrix is included with the SharedJacobian in anticipation of having a separate Matrix for the Jacobian and the Preconditioner. This option will be available in the future.

Definition at line 63 of file NOX_Petsc_SharedJacobian.H.


Constructor & Destructor Documentation

SharedJacobian::SharedJacobian ( Mat &  j  ) 

Constructor.

Definition at line 47 of file NOX_Petsc_SharedJacobian.C.

References jacobian.

SharedJacobian::SharedJacobian ( Mat &  j,
Mat &  p 
)

Constructor with separate Matrices for the Jacobian and preconditioner.

Definition at line 52 of file NOX_Petsc_SharedJacobian.C.

References jacobian, and prec.

SharedJacobian::~SharedJacobian (  ) 

Destructor.

Definition at line 58 of file NOX_Petsc_SharedJacobian.C.


Member Function Documentation

Mat & SharedJacobian::getJacobian ( const Group newowner  ) 

const Mat & SharedJacobian::getJacobian (  )  const

Return a const pointer to the Jacobian.

Definition at line 68 of file NOX_Petsc_SharedJacobian.C.

References jacobian.

bool SharedJacobian::isOwner ( const Group grp  )  const

Return true if grp is the owner of the Jacobian.

Definition at line 73 of file NOX_Petsc_SharedJacobian.C.

References owner.

Referenced by NOX::Petsc::Group::isJacobian().

Mat & SharedJacobian::getPrec ( const Group newowner  ) 

Get a reference to the Jacobian AND take ownership.

Definition at line 78 of file NOX_Petsc_SharedJacobian.C.

References owner, and prec.

const Mat & SharedJacobian::getPrec (  )  const

Return a const pointer to the Jacobian.

Definition at line 84 of file NOX_Petsc_SharedJacobian.C.

References prec.


Member Data Documentation

Pointer to Petsc Jacobian matrix.

Definition at line 94 of file NOX_Petsc_SharedJacobian.H.

Referenced by getJacobian(), and SharedJacobian().

Pointer to Petsc Preconditioning Matrix.

Definition at line 97 of file NOX_Petsc_SharedJacobian.H.

Referenced by getPrec(), and SharedJacobian().

Pointer to const group that owns Jacobian.

Definition at line 100 of file NOX_Petsc_SharedJacobian.H.

Referenced by getJacobian(), getPrec(), and isOwner().


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

Generated on Wed Oct 21 14:28:48 2009 for Nonlinear Solver Project by  doxygen 1.5.9