Actual source code: itregis.c
2: #include src/eps/epsimpl.h
4: EXTERN_C_BEGIN
5: extern int EPSCreate_PREONLY(EPS);
6: extern int EPSCreate_POWER(EPS);
7: extern int EPSCreate_RQI(EPS);
8: extern int EPSCreate_SUBSPACE(EPS);
9: extern int EPSCreate_ARNOLDI(EPS);
10: #if defined(SLEPC_HAVE_ARPACK)
11: extern int EPSCreate_ARPACK(EPS);
12: #endif
13: extern int EPSCreate_LAPACK(EPS);
14: #if defined(SLEPC_HAVE_BLZPACK) && !defined(PETSC_USE_COMPLEX)
15: extern int EPSCreate_BLZPACK(EPS);
16: #endif
17: #if defined(SLEPC_HAVE_PLANSO) && !defined(PETSC_USE_COMPLEX)
18: extern int EPSCreate_PLANSO(EPS);
19: #endif
20: #if defined(SLEPC_HAVE_TRLAN) && !defined(PETSC_USE_COMPLEX)
21: extern int EPSCreate_TRLAN(EPS);
22: #endif
23: EXTERN_C_END
24:
25: /*
26: This is used by EPSSetType() to make sure that at least one
27: EPSRegisterAll() is called. In general, if there is more than one
28: DLL, then EPSRegisterAll() may be called several times.
29: */
30: extern PetscTruth EPSRegisterAllCalled;
34: /*@C
35: EPSRegisterAll - Registers all the eigenvalue solvers in the EPS package.
37: Not Collective
39: Level: advanced
41: .seealso: EPSRegisterDestroy()
42: @*/
43: int EPSRegisterAll(char *path)
44: {
48: EPSRegisterAllCalled = PETSC_TRUE;
50: EPSRegisterDynamic(EPSPOWER, path,"EPSCreate_POWER",
51: EPSCreate_POWER);
52: EPSRegisterDynamic(EPSRQI, path,"EPSCreate_RQI",
53: EPSCreate_RQI);
54: EPSRegisterDynamic(EPSSUBSPACE, path,"EPSCreate_SUBSPACE",
55: EPSCreate_SUBSPACE);
56: EPSRegisterDynamic(EPSARNOLDI, path,"EPSCreate_ARNOLDI",
57: EPSCreate_ARNOLDI);
58: #if defined(SLEPC_HAVE_ARPACK)
59: EPSRegisterDynamic(EPSARPACK, path,"EPSCreate_ARPACK",
60: EPSCreate_ARPACK);
61: #endif
62: EPSRegisterDynamic(EPSLAPACK, path,"EPSCreate_LAPACK",
63: EPSCreate_LAPACK);
64: #if defined(SLEPC_HAVE_BLZPACK) && !defined(PETSC_USE_COMPLEX)
65: EPSRegisterDynamic(EPSBLZPACK, path,"EPSCreate_BLZPACK",
66: EPSCreate_BLZPACK);
67: #endif
68: #if defined(SLEPC_HAVE_PLANSO) && !defined(PETSC_USE_COMPLEX)
69: EPSRegisterDynamic(EPSPLANSO, path,"EPSCreate_PLANSO",
70: EPSCreate_PLANSO);
71: #endif
72: #if defined(SLEPC_HAVE_TRLAN) && !defined(PETSC_USE_COMPLEX)
73: EPSRegisterDynamic(EPSTRLAN, path,"EPSCreate_TRLAN",
74: EPSCreate_TRLAN);
75: #endif
76: return(0);
77: }