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.


The documentation for this class was generated from the following files:
Generated on Tue Oct 20 12:46:36 2009 for NOX by doxygen 1.4.7