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

Reply via email to