The Parareal driver has been redesigned in order to allows "windowing", i.e. splitting the time-integration into several time interval. This feature can be useful if a very large number of timesteps is required. In addition, the Parareal driver has been redesigned in prevision to the introduction of the PFASST driver. For the purpose of considering various Parareal-like parallel-in-time algorithms, a base class
DriverParallelInTime has been created, while the
DriverParareal has been refactored as a derived class of the former. Additionally, the
DriverParareal class has been refactored for better readability.
Please suggest any people who would be appropriate to review your code.