@@ -53,6 +53,8 @@ PetscErrorCode NEPComputeVectors(NEP nep)
53
53
54
54
Options Database Keys:
55
55
+ -nep_view - print information about the solver used
56
+ . -nep_view_matk - view the split form matrix Ak (replace k by an integer from 0 to nt-1)
57
+ . -nep_view_fnk - view the split form function fk (replace k by an integer from 0 to nt-1)
56
58
. -nep_view_vectors - view the computed eigenvectors
57
59
. -nep_view_values - view the computed eigenvalues
58
60
. -nep_converged_reason - print reason for convergence, and number of iterations
@@ -74,6 +76,7 @@ PetscErrorCode NEPComputeVectors(NEP nep)
74
76
PetscErrorCode NEPSolve (NEP nep )
75
77
{
76
78
PetscInt i ;
79
+ char str [16 ];
77
80
78
81
PetscFunctionBegin ;
79
82
PetscValidHeaderSpecific (nep ,NEP_CLASSID ,1 );
@@ -119,6 +122,14 @@ PetscErrorCode NEPSolve(NEP nep)
119
122
PetscCall (NEPErrorViewFromOptions (nep ));
120
123
PetscCall (NEPValuesViewFromOptions (nep ));
121
124
PetscCall (NEPVectorsViewFromOptions (nep ));
125
+ if (nep -> fui == NEP_USER_INTERFACE_SPLIT ) {
126
+ for (i = 0 ;i < nep -> nt ;i ++ ) {
127
+ PetscCall (PetscSNPrintf (str ,sizeof (str ),"-nep_view_mat%" PetscInt_FMT ,i ));
128
+ PetscCall (MatViewFromOptions (nep -> A [i ],(PetscObject )nep ,str ));
129
+ PetscCall (PetscSNPrintf (str ,sizeof (str ),"-nep_view_fn%" PetscInt_FMT ,i ));
130
+ PetscCall (FNViewFromOptions (nep -> f [i ],(PetscObject )nep ,str ));
131
+ }
132
+ }
122
133
123
134
/* Remove the initial subspace */
124
135
nep -> nini = 0 ;
0 commit comments