commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dennis Hendriks <D.Hendr...@tue.nl>
Subject [Math] How to force integration past the state event?
Date Thu, 09 Jun 2011 12:03:11 GMT
Hi all,

I have the following (simplified) ODE problem:

   V(0) = 10.000000645817822
   V' = -sqrt(V)

and the following state event:

   V <= 2.0

Using:

   t = 6.6845103160078425
   GraggBulirschStoerIntegrator(1e-10, 100.0, 1e-10, 1e-10)
   integrator.addEventHandler(event, 100.0, 1e-10, 999)

I obtain the last time point as:

   t = 10.180638128882343
   V = 2.000000830098894
   V' = -1.414213855857346

For this last time point, V <= 2.0 does not hold. In my previous 
experiences with DDASRT (DAE solver written in Fortran, see 
http://www.netlib.org/ode/ddasrt.f), it was actually guaranteed that 
integration would go PAST the state event.

So, my question is: Is there any way to force integration PAST the state 
event, to make sure that afterwards the V <= 2.0 condition actually holds? 
In other words, is it possible to make sure it stops PAST the state event, 
instead of sometimes PAST it and sometimes BEFORE it?

Any help would be greatly appreciated.

Thanks,
Dennis

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
For additional commands, e-mail: user-help@commons.apache.org


Mime
View raw message