Changes: 2.1.0#

Changes#

(See Features below)

General:

  • Simpler interface for structured grids, see src/snes/examples/tutorials/ex5.c

  • “System routines” including PLog…, Options…, Viewer…, Draw…., FList…,OList… now all begin with the string Petsc. For example, PetscOptionsGetInt() and PetscLogBegin().

  • The calling sequence for PetscMalloc() was changed to return and error code and deliver the pointer as a new final argument. Due to this change, the macros CHKPTRA() and CHKPTRQ() were dropped.

AO (Application Orderings):

TS (Timestepping Solvers):

SNES (Nonlinear Solvers):

SLES (Linear Solvers):

KSP (Krylov Subspace Methods):

PC (Preconditioners):

MAT (Matrices):

  • When using MatCreate(), you must follow with a MatSetType() or MatSetFromOptions() before using the matrix.

  • Changed int             MatShellSetOperation(Mat,MatOperation,void*); to int             MatShellSetOperation(Mat,MatOperation,void(*)());

  • Changed int             MatShellGetOperation(Mat,MatOperation,void**); to int             MatShellGetOperation(Mat,MatOperation,void(**)());

  • Changed IncompleteCholesky to ICC

DA (Distributed Arrays):

  • Changed the DAMG routines to DMMG routines.

  • DAGetColoring() now has new second argument that takes either IS_COLORING_GLOBAL or IS_COLOR_GLOBAL and a new third argument that takes the matrix type of either MATMPIAIJ or MATMPIBAIJ.

VEC (Vectors):

IS (Index Sets):

General:

Draw (Graphics):

Viewers:

System:

Error Handling:

  • CHKERRA() is now obselete; use CHKERRQ() instead. Changed the calling sequence of SETERRQ() to eliminate the second input parameter.

Event Logging:

Fortran Interface:

Features#

(See Changes above)

General:

  • Simpler interface for structured grids, see src/snes/examples/tutorials/ex5.c

  • Complete infrastructure for parallel multigrid for linear and nonlinear problems on structured grids. See src/snes/examples/tutorials/ex19.c

  • Added manual pages for PETSc objects, enums etc.

  • Added html version of all source code and examples, accessible from docs/index.html and the manual pages.

AO (Application Orderings):

TS (Timestepping Solvers):

SNES (Nonlinear Solvers):

SLES (Linear Solvers):

KSP (Krylov Subspace Methods):

  • Added support for “diagonal scaling” of preconditioned system as required by most ODE integrators via PCDiagonalScaleSet().

PC (Preconditioners):

MAT (Matrices):

  • Added the Henry Tufo/Paul Fischer libtfs scalable parallel direct solver for MPIAIJ matrices.

  • Added routine MatFDColoringSetRecompute().

DA (Distributed Arrays):

  • Added DAVecGetArray() to access the multidimensional arrays directly in the global parallel indexing. See src/snes/examples/tutorials/ex5.c and ex19.c

  • Add DAGetLocalVector()/DARestoreLocalVector() for inexpensive access to local work vectors.

VEC (Vectors):

  • Added DMComposite routines to help with PDE optimization and multicomponent PDEs.

IS (Index Sets):

PF:

Draw (Graphics):

Viewers:

System:

Error Handling:

Event Logging:

Fortran Interface: