1 2 #include <petscpf.h> /*I "petscpf.h" I*/ 3 #include <../src/vec/pf/pfimpl.h> 4 5 PETSC_EXTERN PetscErrorCode PFCreate_Constant(PF, void *); 6 PETSC_EXTERN PetscErrorCode PFCreate_String(PF, void *); 7 PETSC_EXTERN PetscErrorCode PFCreate_Quick(PF, void *); 8 PETSC_EXTERN PetscErrorCode PFCreate_Identity(PF, void *); 9 #if defined(PETSC_HAVE_MATLAB) 10 PETSC_EXTERN PetscErrorCode PFCreate_Matlab(PF, void *); 11 #endif 12 13 /*@C 14 PFRegisterAll - Registers all of the preconditioners in the PF package. 15 16 Not Collective 17 18 Level: advanced 19 20 .seealso: `PFRegister()`, `PFRegisterDestroy()` 21 @*/ 22 PetscErrorCode PFRegisterAll(void) 23 { 24 PetscFunctionBegin; 25 if (PFRegisterAllCalled) PetscFunctionReturn(PETSC_SUCCESS); 26 PFRegisterAllCalled = PETSC_TRUE; 27 28 PetscCall(PFRegister(PFCONSTANT, PFCreate_Constant)); 29 PetscCall(PFRegister(PFSTRING, PFCreate_String)); 30 PetscCall(PFRegister(PFQUICK, PFCreate_Quick)); 31 PetscCall(PFRegister(PFIDENTITY, PFCreate_Identity)); 32 #if defined(PETSC_HAVE_MATLAB) 33 PetscCall(PFRegister(PFMATLAB, PFCreate_Matlab)); 34 #endif 35 PetscFunctionReturn(PETSC_SUCCESS); 36 } 37