Parallel solution of nonlinear equations and unconstrained minimization problems


The SNES (Scalable Nonlinear Equations Solvers) component of PETSc provides a powerful suite of data-structure-neutral numerical routines for solving large-scale systems of nonlinear equations and unconstrained minimization problems (10,000s to 1,000,000s of equations). Newton-like methods provide the core of the package, including both line search and trust region techniques. The software is directly usable from C, C++, Fortran 77, and Fortran 90.

Flexibility and extensibility are two distinguishing design features of PETSc. The interfaces to the various nonlinear solvers are all the same, and the SNES interface is virtually identical for the uniprocessor and parallel cases. For example, at runtime the user can select a nonlinear solver, data structures for matrices and vectors, and solvers for the linearized Newton systems, including direct methods as well as preconditioned Krylov subspace techniques. One can also specify user-defined convergence tests, monitoring routines, data structures, etc.

This design enables SNES to serve a wide range of users with vaying needs and different levels of experience, including

  • black-box users, who can use the high-level interface to solve problems quickly;
  • high-performance users, who can easily customize the nonlinear solvers according to the application at hand; and
  • algorithm researchers, who can employ the software infrastructure for rapid algorithm development and prototyping.

  • What is PETSc?

    PETSc, the Portable, Extensible Toolkit for Scientific Computation, is a powerful MPI-based suite of numerical software for the solution of time-dependent PDEs, as well as nonlinear and linear algebraic systems (focusing on sparse matrices).

    PETSc is available on Sun, DEC Alpha, Silicon Graphics, HP-UX, and IBM RS/6000 workstations; IBM PCs running FreeBSD or Linux; the Cray T3D, the Intel Paragon; and the IBM SP.

    PETSc is supported and developed in the Mathematics and Computer Science Division of Argonne National Laboratory.

    Need more info?

    Visit PETSc on the WWW. In particular, see the SNES chapter of the PETSc 2.0 Users Manual, in either PostScript or HTML format.

    Reference:

    Satish Balay, William Gropp, Lois Curfman McInnes, and Barry Smith, PETSc 2.0 Users Manual, Technical Report ANL-95/11, Argonne National Laboratory, November 1995.


    [ Optimization Software Guide | OTC Home Page | NEOS Server | NEOS Guide ]