NOX Development

Used by LOCA::Epetra::Group to provide a link to the external code for the MassMatrix (coefficients of time dependent terms). More...
#include <LOCA_Epetra_Interface_MassMatrix.H>
Public Member Functions  
MassMatrix ()  
Constructor.  
virtual  ~MassMatrix () 
Destructor.  
virtual bool  computeMassMatrix (const Epetra_Vector &x)=0 
Compute MassMatrix given the specified input vector x. Returns true if computation was successful.  
virtual void  setOldSolution (const Epetra_Vector &x, const int timeStep) 
Routines used in XYZT to set the old solution, the one from the previous time step.  
virtual void  setOldSolutionFirstStep () 
See setOldSolution description.  
virtual void  dataForPrintSolution (const int conStep, const int timeStep, const int totalTimeSteps) 
Provides data to application for output files. 
Used by LOCA::Epetra::Group to provide a link to the external code for the MassMatrix (coefficients of time dependent terms).
This is used for Hopf bifurcation tracking, linear stability analysis, and spacetime solutions (xyzt).
virtual void LOCA::Epetra::Interface::MassMatrix::dataForPrintSolution  (  const int  conStep, 
const int  timeStep,  
const int  totalTimeSteps  
)  [inline, virtual] 
Provides data to application for output files.
This routine is called from Interface::xyzt::printSolution() just before the call to Interface::Required::printSolution(x,param), and gives the application some indices that can be used for creating a unique name/index for the output files.
virtual void LOCA::Epetra::Interface::MassMatrix::setOldSolution  (  const Epetra_Vector &  x, 
const int  timeStep  
)  [inline, virtual] 
Routines used in XYZT to set the old solution, the one from the previous time step.
There is a different routine for first step, where the old solution is set by the user and not part of the solution vector. These routines are used by spacetime (xyzt) problems, where the residual vector is a function of the previous solution, which is also being solved for, and where the MassMatrix is calculated as a function of a different solution vector then the Jacobian (that is, the previous time step). The timeStep argument is sent so the use can set the global time, for cases when computeF, computeJacobian, computeMassMatrix fills are functions of time (nonautonomous systems).