You do not want to use TSTrajectory for that. The trajectory object is meant to be used for sensitivity analysis to store _all_ the intermediate time steps and the perform backward integration.
You should code a TSMonitor that dumps every n time steps and then use the last one to restart the simulation. > On May 9, 2020, at 10:30 PM, Mohammed Ashour <[email protected]> wrote: > > Dear All, > I'm using PETSc in conjunction wit PetIGA to solve a 3D phase-field problem > on HPC cluster. > Given the computational load of the code, I'm running it on 15 nodes with a > multithreaded job. Now there is a wall time for the current partition set to > 24 hours, afterward, the job will be killed. > > I have been searching for the possibility of using the Trajectory to resume > the run after it being terminated by reloading the dumped binary files from > TSSetSaveTrajectory once again into the TS, i.e., state vector and it's time > derivative, timestep and time. > > I have tried using TSTrajectoryGet but I ended up with the following error: > [0]PETSC ERROR: Object is in wrong state > [0]PETSC ERROR: TS solver did not save trajectory > > So, I would like to ask if in theory that would be possible? if so, how can I > reload the trajectory from a previously terminated job into a new one? > > Yours Sincerely. > > -- > Mohammed Ashour, M.Sc. > PhD Scholar > Bauhaus-Universität Weimar > Institute of Structural Mechanics (ISM) > Marienstraße 7 > 99423 Weimar, Germany > Mobile: +(49) 176 58834667
