include 'debug.h' ndigit = -3 logfil = 6 msgets = 0 msaitr = 0 msapps = 0 msaupd = 1 msaup2 = 0 mseigt = 0 mseupd = 0 |
ARPACK provides a means to trace the progress of the computation as it proceeds. Various levels of output may be specified from no output (level = 0 ) to voluminous (level = 3) . The code segment listed in Figure 2.5 gives an example of the statements that may be used within the calling program to initiate and request this output.
The include statement sets up the storage declarations that are solely associated with this trace debugging feature. The parameter ndigit specifies the number of decimal digits and the width of the output lines. A positive or negative value of ndigit specifies that 132 or 80 columns, respectively, are used during output. The parameter logfil specifies the logical unit number of the output file. The values of the remaining parameters indicate the output levels from the indicated routines. For example, msaitr indicates the level of output requested from the subroutine dsaitr. The above configuration will give a breakdown of the number of matrix vector products required, the total number of iterations, the number of re-orthogonalization steps and an estimate of the time spent in each routine and phase of the computation. Figure 2.6 displays the output produced by the above settings. The user is encouraged to experiment with the other settings once some familiarity has been gained with the routines. See Appendix B for a detailed discussion of the Trace Debugging Capabilities.
==========================================
= Symmetric implicit Arnoldi update code =
= Version Number: 2.1 =
= Version Date: 11/15/95 =
==========================================
= Summary of timing statistics =
==========================================
Total number update iterations = 8
Total number of OP*x operations = 125
Total number of B*x operations = 0
Total number of reorthogonalization steps = 125
Total number of iterative refinement steps = 0
Total number of restart steps = 0
Total time in user OP*x operation = 0.020002
Total time in user B*x operation = 0.000000
Total time in Arnoldi update routine = 0.210021
Total time in ssaup2 routine = 0.190019
Total time in basic Arnoldi iteration loop = 0.110011
Total time in reorthogonalization phase = 0.070007
Total time in (re)start vector generation = 0.000000
Total time in trid eigenvalue subproblem = 0.040004
Total time in getting the shifts = 0.000000
Total time in applying the shifts = 0.040004
Total time in convergence testing = 0.000000