Line | Branch | Exec | Source |
---|---|---|---|
1 | /* | ||
2 | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
3 | SLEPc - Scalable Library for Eigenvalue Problem Computations | ||
4 | Copyright (c) 2002-, Universitat Politecnica de Valencia, Spain | ||
5 | |||
6 | This file is part of SLEPc. | ||
7 | SLEPc is distributed under a 2-clause BSD license (see LICENSE). | ||
8 | - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
9 | */ | ||
10 | |||
11 | #include <slepc/private/epsimpl.h> /*I "slepceps.h" I*/ | ||
12 | |||
13 | SLEPC_EXTERN PetscErrorCode EPSCreate_Power(EPS); | ||
14 | SLEPC_EXTERN PetscErrorCode EPSCreate_Subspace(EPS); | ||
15 | SLEPC_EXTERN PetscErrorCode EPSCreate_Arnoldi(EPS); | ||
16 | SLEPC_EXTERN PetscErrorCode EPSCreate_Lanczos(EPS); | ||
17 | SLEPC_EXTERN PetscErrorCode EPSCreate_KrylovSchur(EPS); | ||
18 | SLEPC_EXTERN PetscErrorCode EPSCreate_GD(EPS); | ||
19 | SLEPC_EXTERN PetscErrorCode EPSCreate_JD(EPS); | ||
20 | SLEPC_EXTERN PetscErrorCode EPSCreate_RQCG(EPS); | ||
21 | SLEPC_EXTERN PetscErrorCode EPSCreate_LOBPCG(EPS); | ||
22 | SLEPC_EXTERN PetscErrorCode EPSCreate_CISS(EPS); | ||
23 | SLEPC_EXTERN PetscErrorCode EPSCreate_LyapII(EPS); | ||
24 | SLEPC_EXTERN PetscErrorCode EPSCreate_LAPACK(EPS); | ||
25 | #if defined(SLEPC_HAVE_ARPACK) | ||
26 | SLEPC_EXTERN PetscErrorCode EPSCreate_ARPACK(EPS); | ||
27 | #endif | ||
28 | #if defined(SLEPC_HAVE_BLOPEX) | ||
29 | SLEPC_EXTERN PetscErrorCode EPSCreate_BLOPEX(EPS); | ||
30 | #endif | ||
31 | #if defined(SLEPC_HAVE_PRIMME) | ||
32 | SLEPC_EXTERN PetscErrorCode EPSCreate_PRIMME(EPS); | ||
33 | #endif | ||
34 | #if defined(SLEPC_HAVE_FEAST) | ||
35 | SLEPC_EXTERN PetscErrorCode EPSCreate_FEAST(EPS); | ||
36 | #endif | ||
37 | #if defined(SLEPC_HAVE_SCALAPACK) | ||
38 | SLEPC_EXTERN PetscErrorCode EPSCreate_ScaLAPACK(EPS); | ||
39 | #endif | ||
40 | #if defined(SLEPC_HAVE_ELPA) | ||
41 | SLEPC_EXTERN PetscErrorCode EPSCreate_ELPA(EPS); | ||
42 | #endif | ||
43 | #if defined(SLEPC_HAVE_ELEMENTAL) | ||
44 | SLEPC_EXTERN PetscErrorCode EPSCreate_Elemental(EPS); | ||
45 | #endif | ||
46 | #if defined(SLEPC_HAVE_EVSL) | ||
47 | SLEPC_EXTERN PetscErrorCode EPSCreate_EVSL(EPS); | ||
48 | #endif | ||
49 | #if defined(SLEPC_HAVE_CHASE) | ||
50 | SLEPC_EXTERN PetscErrorCode EPSCreate_ChASE(EPS); | ||
51 | #endif | ||
52 | |||
53 | /*@C | ||
54 | EPSRegisterAll - Registers all the eigenvalue solvers in the EPS package. | ||
55 | |||
56 | Not Collective | ||
57 | |||
58 | Level: advanced | ||
59 | |||
60 | .seealso: EPSRegister() | ||
61 | @*/ | ||
62 | 12670 | PetscErrorCode EPSRegisterAll(void) | |
63 | { | ||
64 |
1/2✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
|
12670 | PetscFunctionBegin; |
65 |
8/14✓ Branch 0 taken 10 times.
✓ Branch 1 taken 10 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
✓ Branch 6 taken 2 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 2 times.
✗ Branch 9 not taken.
✓ Branch 10 taken 2 times.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✓ Branch 13 taken 2 times.
|
12670 | if (EPSRegisterAllCalled) PetscFunctionReturn(PETSC_SUCCESS); |
66 | 6328 | EPSRegisterAllCalled = PETSC_TRUE; | |
67 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSRegister(EPSPOWER,EPSCreate_Power)); |
68 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSRegister(EPSSUBSPACE,EPSCreate_Subspace)); |
69 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSRegister(EPSARNOLDI,EPSCreate_Arnoldi)); |
70 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSRegister(EPSLANCZOS,EPSCreate_Lanczos)); |
71 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSRegister(EPSKRYLOVSCHUR,EPSCreate_KrylovSchur)); |
72 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSRegister(EPSGD,EPSCreate_GD)); |
73 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSRegister(EPSJD,EPSCreate_JD)); |
74 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSRegister(EPSRQCG,EPSCreate_RQCG)); |
75 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSRegister(EPSLOBPCG,EPSCreate_LOBPCG)); |
76 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSRegister(EPSCISS,EPSCreate_CISS)); |
77 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSRegister(EPSLYAPII,EPSCreate_LyapII)); |
78 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSRegister(EPSLAPACK,EPSCreate_LAPACK)); |
79 | #if defined(SLEPC_HAVE_ARPACK) | ||
80 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 3 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
3194 | PetscCall(EPSRegister(EPSARPACK,EPSCreate_ARPACK)); |
81 | #endif | ||
82 | #if defined(SLEPC_HAVE_BLOPEX) | ||
83 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 4 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
3832 | PetscCall(EPSRegister(EPSBLOPEX,EPSCreate_BLOPEX)); |
84 | #endif | ||
85 | #if defined(SLEPC_HAVE_PRIMME) | ||
86 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 4 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
3832 | PetscCall(EPSRegister(EPSPRIMME,EPSCreate_PRIMME)); |
87 | #endif | ||
88 | #if defined(SLEPC_HAVE_FEAST) | ||
89 | PetscCall(EPSRegister(EPSFEAST,EPSCreate_FEAST)); | ||
90 | #endif | ||
91 | #if defined(SLEPC_HAVE_SCALAPACK) | ||
92 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 4 times.
|
2584 | PetscCall(EPSRegister(EPSSCALAPACK,EPSCreate_ScaLAPACK)); |
93 | #endif | ||
94 | #if defined(SLEPC_HAVE_ELPA) | ||
95 | PetscCall(EPSRegister(EPSELPA,EPSCreate_ELPA)); | ||
96 | #endif | ||
97 | #if defined(SLEPC_HAVE_ELEMENTAL) | ||
98 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 2 times.
|
1302 | PetscCall(EPSRegister(EPSELEMENTAL,EPSCreate_Elemental)); |
99 | #endif | ||
100 | #if defined(SLEPC_HAVE_EVSL) | ||
101 |
4/6✓ Branch 0 taken 1 times.
✓ Branch 1 taken 2 times.
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 1 times.
|
1965 | PetscCall(EPSRegister(EPSEVSL,EPSCreate_EVSL)); |
102 | #endif | ||
103 | #if defined(SLEPC_HAVE_CHASE) | ||
104 |
1/2✗ Branch 0 not taken.
✓ Branch 1 taken 2 times.
|
1298 | PetscCall(EPSRegister(EPSCHASE,EPSCreate_ChASE)); |
105 | #endif | ||
106 |
6/12✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 2 times.
✓ Branch 4 taken 2 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 2 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 2 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 2 times.
|
1244 | PetscFunctionReturn(PETSC_SUCCESS); |
107 | } | ||
108 | |||
109 | /*@C | ||
110 | EPSMonitorRegisterAll - Registers all the monitors in the EPS package. | ||
111 | |||
112 | Not Collective | ||
113 | |||
114 | Level: advanced | ||
115 | |||
116 | .seealso: EPSMonitorRegister() | ||
117 | @*/ | ||
118 | 6328 | PetscErrorCode EPSMonitorRegisterAll(void) | |
119 | { | ||
120 |
1/2✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
|
6328 | PetscFunctionBegin; |
121 |
2/14✓ Branch 0 taken 8 times.
✓ Branch 1 taken 2 times.
✗ Branch 2 not taken.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✗ Branch 5 not taken.
✗ Branch 6 not taken.
✗ Branch 7 not taken.
✗ Branch 8 not taken.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✗ Branch 11 not taken.
✗ Branch 12 not taken.
✗ Branch 13 not taken.
|
6328 | if (EPSMonitorRegisterAllCalled) PetscFunctionReturn(PETSC_SUCCESS); |
122 | 6328 | EPSMonitorRegisterAllCalled = PETSC_TRUE; | |
123 | |||
124 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSMonitorRegister("first_approximation",PETSCVIEWERASCII,PETSC_VIEWER_DEFAULT,EPSMonitorFirst,NULL,NULL)); |
125 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSMonitorRegister("first_approximation",PETSCVIEWERDRAW,PETSC_VIEWER_DRAW_LG,EPSMonitorFirstDrawLG,EPSMonitorFirstDrawLGCreate,NULL)); |
126 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSMonitorRegister("all_approximations",PETSCVIEWERASCII,PETSC_VIEWER_DEFAULT,EPSMonitorAll,NULL,NULL)); |
127 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSMonitorRegister("all_approximations",PETSCVIEWERDRAW,PETSC_VIEWER_DRAW_LG,EPSMonitorAllDrawLG,EPSMonitorAllDrawLGCreate,NULL)); |
128 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSMonitorRegister("convergence_history",PETSCVIEWERASCII,PETSC_VIEWER_DEFAULT,EPSMonitorConverged,EPSMonitorConvergedCreate,EPSMonitorConvergedDestroy)); |
129 |
4/6✓ Branch 0 taken 2 times.
✓ Branch 1 taken 8 times.
✓ Branch 2 taken 2 times.
✗ Branch 3 not taken.
✗ Branch 4 not taken.
✓ Branch 5 taken 2 times.
|
6328 | PetscCall(EPSMonitorRegister("convergence_history",PETSCVIEWERDRAW,PETSC_VIEWER_DRAW_LG,EPSMonitorConvergedDrawLG,EPSMonitorConvergedDrawLGCreate,EPSMonitorConvergedDestroy)); |
130 |
6/12✓ Branch 0 taken 2 times.
✗ Branch 1 not taken.
✗ Branch 2 not taken.
✓ Branch 3 taken 2 times.
✓ Branch 4 taken 2 times.
✗ Branch 5 not taken.
✓ Branch 6 taken 2 times.
✗ Branch 7 not taken.
✓ Branch 8 taken 2 times.
✗ Branch 9 not taken.
✗ Branch 10 not taken.
✓ Branch 11 taken 2 times.
|
1244 | PetscFunctionReturn(PETSC_SUCCESS); |
131 | } | ||
132 |