the same 2 tests fail (on current master) with all sundials versions>=4.x (out of tested versions 2.7.0, 3.2.0, 4.1.0, 5.8.0, 6.5.0):
IDAError: 'The solver took max internal steps but could not reach tout. At time 0.000087.'
assert_equal(imp_sim.statistics["nfcnjacs"], 0) (got value 28)
here is the test output:
======================================================================
ERROR: This tests the class Mechanical_system together with ind3 and ida
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/nose/case.py", line 197, in runTest
self.test(*self.arg)
File "/home/runner/work/Assimulo/Assimulo/tests/test_examples.py", line 195, in test_mech_system_pendulum3
mech_system_pendulum.run_example('ind3',with_plots=False,with_test=True)
File "/home/runner/.local/lib/python3.10/site-packages/Assimulo-trunk-py3.10-linux-x86_64.egg/assimulo/examples/mech_system_pendulum.py", line 60, in run_example
t,y,yd=dae_pend.simulate(10.,100)
File "assimulo/ode.pyx", line 185, in assimulo.ode.ODE.simulate
File "assimulo/ode.pyx", line 308, in assimulo.ode.ODE.simulate
File "assimulo/implicit_ode.pyx", line 129, in assimulo.implicit_ode.Implicit_ODE._simulate
File "assimulo/implicit_ode.pyx", line 206, in assimulo.implicit_ode.Implicit_ODE._simulate
File "assimulo/solvers/sundials.pyx", line 523, in assimulo.solvers.sundials.IDA.integrate
File "assimulo/solvers/sundials.pyx", line 592, in assimulo.solvers.sundials.IDA.integrate
assimulo.solvers.sundials.IDAError: 'The solver took max internal steps but could not reach tout. At time 0.000087.'
======================================================================
FAIL: This tests the functionality of the property usejac.
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/nose/case.py", line 197, in runTest
self.test(*self.arg)
File "/home/runner/work/Assimulo/Assimulo/tests/solvers/test_sundials.py", line 1055, in test_usejac
nose.tools.assert_equal(imp_sim.statistics["nfcnjacs"], 0)
AssertionError: 28 != 0
-------------------- >> begin captured stdout << ---------------------
Final Run Statistics: ---
Number of steps : 27
Number of function evaluations : 28
Number of Jacobian evaluations : 25
Number of function eval. due to Jacobian eval. : 28
Number of error test failures : 0
Number of nonlinear iterations : 28
Number of nonlinear convergence failures : 0
Solver options:
Solver : IDA (BDF)
Maximal order : 5
Suppressed algebr. variables : False
Tolerances (absolute) : 1e-06
Tolerances (relative) : 1e-06
Simulation interval : 0.0 - 3.0 seconds.
Elapsed simulation time: 0.0005052060000139136 seconds.
--------------------- >> end captured stdout << ----------------------
the same 2 tests fail (on current master) with all sundials versions>=4.x (out of tested versions 2.7.0, 3.2.0, 4.1.0, 5.8.0, 6.5.0):
here is the test output:
the nfcnjacs error does not seem that bad, the sundials 4.x changelog mention changes to the IDA internals: https://github.com/LLNL/sundials/blob/main/CHANGELOG.md#changes-to-sundials-in-release-400 so the first assert can probably be removed (when usejac=True)
the ida error is more worrying