Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

question about dodesol statistics

Brian_Murphy
New Contributor II
612 Views

Do calls to dodesol return any information about the number of steps and function calls?  Perhaps in the ipar array?

0 Kudos
5 Replies
Steve_Lionel
Honored Contributor III
612 Views

Sounds like more of an MKL question than Fortran...

0 Kudos
Brian_Murphy
New Contributor II
612 Views

I agree, Steve, but I thought I'd have better luck getting an answer here than in the MKL forum.  This forum is tops.

0 Kudos
Brian_Murphy
New Contributor II
612 Views

I asked the question on the MKL forum, and they haven't heard of it.  mecej4 is who I got the ODE solvers from, so he might be the only one that can answer this.

0 Kudos
mecej4
Honored Contributor III
612 Views

That library is no longer supported, so you have to be content with whatever the included documentation says. As far as I can see, the information that you ask for is not available, nor of much use, and the use of IPAR() to control the algorithm is discouraged.

You can easily add counters of the number of function calls to the RHS and JACMAT subprograms yourself. Create a module containing variables nRHS and nJAC, both initialized to zero, and USE that module in your RHS and JACMAT subroutines and in the main program. In RHS, add "nrhs = nrhs+1". Similarly, in JACMAT add "njac=njac+1", and in the main program PRINT nrhs, njac.

0 Kudos
Brian_Murphy
New Contributor II
612 Views

Thanks, mecej4.  I have no intention of controlling the algorithm.  The integrator routines I'm replacing (IMSL) pass back counters for the things I mentioned.  That led me to ask if these routines did the same.  Counting the number times RHS and RHSJ are called I think I can do, but the actual number of intermediate steps would be nice to have.  I suppose I can take the passed back final time step size, and divide that into (tend-tstart) for each call.  That's not perfect, but it will be good enough.

0 Kudos
Reply