Actual source code: linesearchregi.c
petsc-3.3-p7 2013-05-11
1: #include <petsc-private/linesearchimpl.h> /*I "petscsnes.h" I*/
3: EXTERN_C_BEGIN
4: extern PetscErrorCode SNESLineSearchCreate_Basic(SNESLineSearch);
5: extern PetscErrorCode SNESLineSearchCreate_L2(SNESLineSearch);
6: extern PetscErrorCode SNESLineSearchCreate_CP(SNESLineSearch);
7: extern PetscErrorCode SNESLineSearchCreate_BT(SNESLineSearch);
8: extern PetscErrorCode SNESLineSearchCreate_Shell(SNESLineSearch);
9: EXTERN_C_END
11: /*
12: extern PetscErrorCode SNESLineSearchCreate_Cubic(SNESLineSearch);
13: extern PetscErrorCode SNESLineSearchCreate_Quadratic(SNESLineSearch);
14: extern PetscErrorCode SNESLineSearchCreate_BasicNoNorms(SNESLineSearch);
15: extern PetscErrorCode SNESLineSearchCreate_QuadraticSecant(SNESLineSearch);
16: extern PetscErrorCode SNESLineSearchCreate_CriticalSecant(SNESLineSearch);
17: */
22: /*@C
23: SNESLineSearchRegisterAll - Registers all of the nonlinear solver methods in the SNESLineSearch package.
25: Not Collective
27: Level: advanced
29: .keywords: SNESLineSearch, register, all
31: .seealso: SNESLineSearchRegisterDestroy()
32: @*/
33: PetscErrorCode SNESLineSearchRegisterAll(const char path[])
34: {
38: SNESLineSearchRegisterAllCalled = PETSC_TRUE;
39: /*
40: SNESLineSearchRegisterDynamic(LINESEARCHCUBIC, path,"SNESLineSearchCreate_Cubic", SNESLineSearchCreate_Cubic);
42: SNESLineSearchRegisterDynamic(LINESEARCHQUADRATIC, path,"SNESLineSearchCreate_Quadratic", SNESLineSearchCreate_Quadratic);
43: SNESLineSearchRegisterDynamic(LINESEARCHCRITICALSECANT, path,"SNESLineSearchCreate_CriticalSecant", SNESLineSearchCreate_CriticalSecant);
45: */
46: SNESLineSearchRegisterDynamic(SNESLINESEARCHSHELL, path,"SNESLineSearchCreate_Shell", SNESLineSearchCreate_Shell);
47: SNESLineSearchRegisterDynamic(SNESLINESEARCHBASIC, path,"SNESLineSearchCreate_Basic", SNESLineSearchCreate_Basic);
48: SNESLineSearchRegisterDynamic(SNESLINESEARCHL2, path,"SNESLineSearchCreate_L2", SNESLineSearchCreate_L2);
49: SNESLineSearchRegisterDynamic(SNESLINESEARCHBT, path,"SNESLineSearchCreate_BT", SNESLineSearchCreate_BT);
50: SNESLineSearchRegisterDynamic(SNESLINESEARCHCP, path,"SNESLineSearchCreate_CP", SNESLineSearchCreate_CP);
52: return(0);
53: }
57: PetscErrorCode SNESLineSearchRegisterDestroy(void)
58: {
62: PetscFListDestroy(&SNESLineSearchList);
63: SNESLineSearchRegisterAllCalled = PETSC_FALSE;
64: return(0);
65: }