xref: /petsc/include/petscpc.h (revision 19e4bc6e2551bcda1393baa22ea0d433aa4d16d7)
1 
2 /*
3       Preconditioner module.
4 */
5 #if !defined(__PC_PACKAGE)
6 #define __PC_PACKAGE
7 #include "petsc.h"
8 #include "mat.h"
9 
10 typedef enum { PCNONE, PCJACOBI, PCSOR } PCMETHOD;
11 
12 typedef struct _PC* PC;
13 
14 int    PCCreate(PC*);
15 int    PCSetMethod(PC,PCMETHOD);
16 int    PCApply(void*,Vec,Vec);
17 int    PCSetUp(PC);
18 int    PCApplyRichardson(void *,Vec,Vec,Vec,int);
19 int    PCApplyRichardsonExists(PC);
20 int    PCRegisterAll();
21 int    PCRegister(PCMETHOD,char *,int (*)(PC));
22 int    PCDestroy(PC);
23 
24 #endif
25