petsc-3.14.6 2021-03-30
Documentation: Changes: 2.1.0
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):
-
Changed
int VecSetOperation(Vec,VecOperation,void*);
to
int VecSetOperation(Vec,VecOperation,void(*)());
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:
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: