AztecOO  Development
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Macros | Functions
AZOO_iterate.h File Reference

AZOO_iterate: A function built around AztecOO that mimics the Aztec funciton AZ_iterate. More...

#include "Epetra_Comm.h"
#include "Epetra_Map.h"
#include "Epetra_Vector.h"
#include "Epetra_VbrMatrix.h"
#include "Epetra_CrsMatrix.h"
#include "Epetra_LinearProblem.h"
#include "AztecOO.h"
#include "Aztec2Petra.h"
Include dependency graph for AZOO_iterate.h:

Functions

void AZOO_iterate (double *xsolve, double *b, int *options, double *params, double *status, int *proc_config, AZ_MATRIX *Amat, AZ_PRECOND *precond, struct AZ_SCALING *scaling)
 Provides essentially equivalent functionality as the AZ_iterate function in Aztec 2.1.
 

Detailed Description

AZOO_iterate: A function built around AztecOO that mimics the Aztec funciton AZ_iterate.

AZOO_iterate is intended to facilitate the smooth transition from Aztec to Trilinos/AztecOO.
The AZOO_iterate interface is essentially identical to the AZ_iterate interface and should be,
for most uses a simple replacement in functionality.  

However, because AztecOO uses Petra for
distributed matrix and vector services (instead of AZ_MATRIX as defined by Aztec), there will 
be some differences.  Some known differences are:

<ol>
<li> AZOO_iterate does not support Aztec's matrix-free version of AZ_MATRIX at this time.  
     Note that AztecOO has its own version of matrix-free implementation via the pure virtual
 class Epetra_RowMatrix.
<li> Scaling is performed independently in AztecOO.  All of the Aztec scaling options 
     (options[AZ_scaling]) are recognized, but block Jacobi scaling is implemented as point
 Jacobi scaling.
<li> Block entry preconditioners are not supported in AztecOO.  This functionality will be
     provided by IFPACK in a future release.

</ol>
Warning
{This function is intended as a temporary bridge for users migrating from Aztec to Trilinos/AztecOO. As such, it is not optimal in terms of memory use. Further flexibility can be had by copying AZOO_iterate() and customizing it to your own needs. Ultimately, users will be best served by making a complete transition to the Trilinos/AztecOO framework, building problems using Petra classes. }