Results 1 to 2 of 2

Thread: IVPRK: how to know if MXSTEPS

  1. #1
    Junior Member
    Join Date
    Jan 2012

    IVPRK: how to know if MXSTEPS

    I am using IVPRK in my software. I am doing a time history analysis where I have to call IVPRK for hundreds of times. After every few hundred calls to IVPRK the program crashes without showing any error. Upon investigation I have found the cause, whenever the limit of MXSTEP (param[4]) is reached the program crashes. So far, I have not updated this limit, so the limit is 500 (number of steps allowed), i.e. the default.
    My question is how can I handle this error so that my program do not crash?
    So, whenever the limit of MXSTEP (of 500 or 5000 or whatever) is reached and IVPRK is unable to solve that particular time step, I should be able to handle it gracefully.

  2. #2
    Senior Member mecej4's Avatar
    Join Date
    Dec 2009
    Error handling is a little complex in IMSL. Please see the section "Reference Material" in the IMSL manual, in particular the subroutine ERSET.

    If you find MXSTEP=500 to be insufficient, your problem may be stiff and, rather than increasing MXSTEP further by setting PARAM(4) to an even higher value and sticking to IVPRK, you should try the BDF integrator in IVPAG.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts