[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Bug-gsl] Bug in odeiv integrator
From: |
Brian Gough |
Subject: |
Re: [Bug-gsl] Bug in odeiv integrator |
Date: |
Mon, 20 Apr 2009 22:45:09 +0100 |
User-agent: |
Wanderlust/2.14.0 (Africa) Emacs/22.2 Mule/5.0 (SAKAKI) |
At Wed, 15 Apr 2009 22:47:08 +0300,
Taneli Kalvas wrote:
> The y values are restored, but the t value is not. This happens in case,
> where the control function has first rejected a step because of too
> large error and when taking a new step, the user function returns an
> error.
I'm going to add the patch below to ode-initval/evolve.c. I believe
it should fix this problem (I've also extended the test program to
catch this case). Thanks for reporting it.
--
Brian Gough
(GSL Maintainer)
Support freedom by joining the FSF!
http://www.fsf.org/associate/support_freedom/join_fsf?referrer=37
index 06961e8..8a4218e 100644
--- a/ode-initval/evolve.c
+++ b/ode-initval/evolve.c
@@ -181,6 +181,7 @@ try_step:
if (step_status != GSL_SUCCESS)
{
*h = h0; /* notify user of step-size which caused the failure */
+ *t = t0; /* restore original t value */
return step_status;
}