My problem involves a multi-particle system, with complicated inter-
particle
forces, but the issue I am having can be seen in a simple
overdamped spring
calculation (the derivatives function simply returns dydt[i] = -y
[i] * 9.0).
I use the RK45 stepper, and error control gsl_odeiv_control_y_new
(1e-2, 0).
I think you really should use relative tolerance as well. Also, you
probably want to try tighter tolerances, like 1e-6 or 1e-8 for both.
You can try to compare the resulting y with different abstol and
reltol to see what is "tight enough".
The reason I was wary of using relative tolerances is because in
practice the real system does not converge to zero at large times, it
converges to some nonzero coordinate which is not known in advance.
Because of this it seemed best to set the relative tolerance to 0
since there is no obvious value to measure it relative _to_.
I suggest bsimp as the stepper if your problem is stiff.
Unfortunately in my real problem I can't calculate the Jacobian, only
the first-order time derivatives (velocity)...
_______________________________________________
Help-gsl mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-gsl