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 201c84c290SBarry Smith .seealso: PFRegister(), PFRegisterDestroy() 21292f8084SBarry Smith @*/ 22607a6623SBarry Smith PetscErrorCode PFRegisterAll(void) 23292f8084SBarry Smith { 24292f8084SBarry Smith PetscFunctionBegin; 250f51fdf8SToby Isaac if (PFRegisterAllCalled) PetscFunctionReturn(0); 26292f8084SBarry Smith PFRegisterAllCalled = PETSC_TRUE; 27292f8084SBarry Smith 28*9566063dSJacob Faibussowitsch PetscCall(PFRegister(PFCONSTANT, PFCreate_Constant)); 29*9566063dSJacob Faibussowitsch PetscCall(PFRegister(PFSTRING, PFCreate_String)); 30*9566063dSJacob Faibussowitsch PetscCall(PFRegister(PFQUICK, PFCreate_Quick)); 31*9566063dSJacob Faibussowitsch PetscCall(PFRegister(PFIDENTITY, PFCreate_Identity)); 32909a696eSBarry Smith #if defined(PETSC_HAVE_MATLAB_ENGINE) 33*9566063dSJacob Faibussowitsch PetscCall(PFRegister(PFMATLAB, PFCreate_Matlab)); 34292f8084SBarry Smith #endif 35292f8084SBarry Smith PetscFunctionReturn(0); 36292f8084SBarry Smith } 37