petsc-3.11.4 2019-09-28
Report Typos and Errors

SNESRegister

Adds a method to the nonlinear solver package.

Synopsis

#include "petscsnes.h"  
PetscErrorCode  SNESRegister(const char sname[],PetscErrorCode (*function)(SNES))
Not collective

Input Parameters

name_solver - name of a new user-defined solver
routine_create - routine to create method context

Notes

SNESRegister() may be called multiple times to add several user-defined solvers.

Sample usage

   SNESRegister("my_solver",MySolverCreate);

Then, your solver can be chosen with the procedural interface via

    SNESSetType(snes,"my_solver")
or at runtime via the option
    -snes_type my_solver

Note: If your function is not being put into a shared library then use SNESRegister() instead

Keywords

SNES, nonlinear, register

See Also

SNESRegisterAll(), SNESRegisterDestroy()

Level

advanced

Location

src/snes/interface/snes.c
Index of all SNES routines
Table of Contents for all manual pages
Index of all manual pages