Closed ds283 closed 9 years ago
Thanks for the helpful comments. The most recent commit should have the changes you suggested.
Thanks for the contribution! Did you by any chance check if a similar change needs to be done in any of the other integrate routines?
I haven't checked in the sense of getting code to compile, but I believe only integrate_times() expects a range delimited by TimeIterator - so I hope the other functions are OK.
I wondered whether the iterator interface might also expect an underlying random-access TimeIterator, but I didn't spot anything on quickly looking through this part of the library.
The dense-output stepper version of integrate_times() uses
to deduce the last time in the range it is given, but this works only if the range is delimited by random access steppers which support addition and subtraction of integers.
For my purposes I'd like to use integrate_times with a range inherited from
std::map
, which supports only bidirectional iterators. This doesn't seem a big change; it can be done just by copying the end-point iterator and decrementing it.