============== Changes: 2.1.0 ============== Changes ------- (See `Features`_ below) .. rubric:: 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. .. rubric:: AO (Application Orderings): .. rubric:: TS (Timestepping Solvers): .. rubric:: SNES (Nonlinear Solvers): .. rubric:: SLES (Linear Solvers): .. rubric:: KSP (Krylov Subspace Methods): .. rubric:: PC (Preconditioners): .. rubric:: 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 .. rubric:: 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. .. rubric:: VEC (Vectors): - Changed ``int VecSetOperation(Vec,VecOperation,void*);`` to ``int VecSetOperation(Vec,VecOperation,void(*)());`` .. rubric:: IS (Index Sets): .. rubric:: General: .. rubric:: Draw (Graphics): .. rubric:: Viewers: .. rubric:: System: .. rubric:: Error Handling: - CHKERRA() is now obselete; use CHKERRQ() instead. Changed the calling sequence of SETERRQ() to eliminate the second input parameter. .. rubric:: Event Logging: .. rubric:: Fortran Interface: Features -------- (See `Changes`_ above) .. rubric:: 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. .. rubric:: AO (Application Orderings): .. rubric:: TS (Timestepping Solvers): .. rubric:: SNES (Nonlinear Solvers): .. rubric:: SLES (Linear Solvers): .. rubric:: KSP (Krylov Subspace Methods): - Added support for "diagonal scaling" of preconditioned system as required by most ODE integrators via PCDiagonalScaleSet(). .. rubric:: PC (Preconditioners): .. rubric:: MAT (Matrices): - Added the Henry Tufo/Paul Fischer libtfs scalable parallel direct solver for MPIAIJ matrices. - Added routine MatFDColoringSetRecompute(). .. rubric:: 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. .. rubric:: VEC (Vectors): - Added DMComposite routines to help with PDE optimization and multicomponent PDEs. .. rubric:: IS (Index Sets): .. rubric:: PF: .. rubric:: Draw (Graphics): .. rubric:: Viewers: .. rubric:: System: .. rubric:: Error Handling: .. rubric:: Event Logging: .. rubric:: Fortran Interface: