==============
Changes: 2.2.0
==============

.. rubric:: General:

-  Changed petscengine.h to petscmatlab.h
-  Changed PetscOptionsEList() to return the index of the string
   selected by the user (error if user enters impossible string)

.. rubric:: Vec:

-  VecLoad() has a new argument giving the Vector type to be created

.. rubric:: Mat:

-  If you use MAT_SYMMETRIC as option for MatSetOption() you will
   likely need to also use the option MAT_SYMMETRY_ETERNAL otherwise
   at the next MatAssembly the matrix will likly lose the symmetry
   flag.
-  Added MatISGetLocalMat() to allow preallocating the local matrix.

.. rubric:: PC:

.. rubric:: KSP:

-  changed unmodifiedGramSchmidt name to classicalGramSchmidt
   everywhere.
-  Eliminated KSPGMRESIROrthogonalize() now have
   KSPGMRESSetCGSRefinement() to decide when to use iterative
   refinement
-  The SLES object has been removed from PETSc. All of this options
   are available via the KSP object. For example, -sles_view_binary
   ->ksp_view_binary, SLESCreate()->KSPCreate() The calling sequences
   SLESSetUp(sles,b,x) should be replaced with KSPSetRhs(ksp,b)
   KSPSetSolution(ksp,x) KSPSetUp(ksp). Similarly SLESSolve(sles,b,x)
   should be replaced with KSPSetRhs(ksp,b) KSPSetSolution(ksp,x)
   KSPSolve(ksp)
-  removed its argument from KSPSolve. Obtain the number of
   iterations via KSPGetIterationNumber()

.. rubric:: SNES:

-  SNESSolve() no longer returns number of iterations, use
   SNESGetIterationNumber() to get the number of iterations required

.. rubric:: TS:

.. rubric:: DMMG:

-  Added support for -dmmg_galerkin and DMMGSetUseGalerkin() for
   nonlinear problems (not sequential only)

.. rubric:: SYS:

-  added new PETSC_VIEWER_MATLAB for saving variables to Matlab .mat
   files
-  eliminated PetscViewerXXXXType and PetscViewerXXXSetType()
   replaced with PetscViewerFileType and PetscViewerSetFileType()
-  PETSC_BINARY_RDONLY,PETSC_BINARY_WRONLY,PETSC_BINARY_CREATE
   becomes PETSC_FILE_RDONLY,PETSC_FILE_WRONLY,PETSC_FILE_CREATE

.. rubric:: Fortran:

.. rubric:: ExternalPackages:
