sybila / parasim

Tool for paralell simulations and verification
GNU General Public License v3.0
3 stars 1 forks source link

Insufficient trajectory length #119

Closed tomvej closed 11 years ago

tomvej commented 11 years ago

When one of the SIR models "test" experiments is executed, it never finishes -- the cause seems to be (in the hierarchy of Exceptions)

Caused by: java.lang.IllegalArgumentException: The formula needs the trajectory simulated at least to time 75.0, 74.99943 given.
    at org.sybila.parasim.computation.verification.stl.cpu.STLMonitorFactory.createMonitor(STLMonitorFactory.java:46)
    at org.sybila.parasim.computation.verification.stl.cpu.STLMonitorFactory.createMonitor(STLMonitorFactory.java:35)
    at org.sybila.parasim.computation.verification.cpu.SimpleVerifier.monitor(SimpleVerifier.java:141)
    at org.sybila.parasim.computation.verification.cpu.SimpleVerifier.verify(SimpleVerifier.java:130)
    at org.sybila.parasim.computation.verification.cpu.SimpleVerifier.verify(SimpleVerifier.java:125)
    at org.sybila.parasim.computation.verification.cpu.SimpleVerifier.verify(SimpleVerifier.java:53)

i.e. the trajectory is not simulated for sufficient time (only 74.99943 s of 75 s -- may be a problem of open/closed intervals and floating point comparison). N.b. the simulation limit (in simulation space) is set to 100 s.

papousek commented 11 years ago

The problem is different float addition on Octave and Java side. I've introduced a quick fix for this, but I don't know how to solve it systemically.