The numpy module has an excellent testing module: http://docs.scipy.org/doc/numpy-dev/reference/routines.testing.html

You could replace this line with
```python
np.testing.assert_allclose(tout, 24.0357, rtol=1e-6, atol=0)
```
and when the assertion fails, numpy gives very descriptive details about what aspect of the assertion failed, i.e. was it off by ten or a fraction. The failure message may even give a hint as to what the issue is.