17d0a6c19SBarry Smith 2c6db04a5SJed Brown #include <petscpf.h> /*I "petscpf.h" I*/ 30f51fdf8SToby Isaac #include <../src/vec/pf/pfimpl.h> 4292f8084SBarry Smith 58cc058d9SJed Brown PETSC_EXTERN PetscErrorCode PFCreate_Constant(PF, void *); 68cc058d9SJed Brown PETSC_EXTERN PetscErrorCode PFCreate_String(PF, void *); 78cc058d9SJed Brown PETSC_EXTERN PetscErrorCode PFCreate_Quick(PF, void *); 88cc058d9SJed Brown PETSC_EXTERN PetscErrorCode PFCreate_Identity(PF, void *); 9909a696eSBarry Smith #if defined(PETSC_HAVE_MATLAB_ENGINE) 108cc058d9SJed Brown PETSC_EXTERN PetscErrorCode PFCreate_Matlab(PF, void *); 11292f8084SBarry Smith #endif 12292f8084SBarry Smith 13292f8084SBarry Smith /*@C 14292f8084SBarry Smith PFRegisterAll - Registers all of the preconditioners in the PF package. 15292f8084SBarry Smith 16292f8084SBarry Smith Not Collective 17292f8084SBarry Smith 18292f8084SBarry Smith Level: advanced 19292f8084SBarry Smith 20db781477SPatrick Sanan .seealso: `PFRegister()`, `PFRegisterDestroy()` 21292f8084SBarry Smith @*/ 22*9371c9d4SSatish Balay PetscErrorCode PFRegisterAll(void) { 23292f8084SBarry Smith PetscFunctionBegin; 240f51fdf8SToby Isaac if (PFRegisterAllCalled) PetscFunctionReturn(0); 25292f8084SBarry Smith PFRegisterAllCalled = PETSC_TRUE; 26292f8084SBarry Smith 279566063dSJacob Faibussowitsch PetscCall(PFRegister(PFCONSTANT, PFCreate_Constant)); 289566063dSJacob Faibussowitsch PetscCall(PFRegister(PFSTRING, PFCreate_String)); 299566063dSJacob Faibussowitsch PetscCall(PFRegister(PFQUICK, PFCreate_Quick)); 309566063dSJacob Faibussowitsch PetscCall(PFRegister(PFIDENTITY, PFCreate_Identity)); 31909a696eSBarry Smith #if defined(PETSC_HAVE_MATLAB_ENGINE) 329566063dSJacob Faibussowitsch PetscCall(PFRegister(PFMATLAB, PFCreate_Matlab)); 33292f8084SBarry Smith #endif 34292f8084SBarry Smith PetscFunctionReturn(0); 35292f8084SBarry Smith } 36