PROFASI  Version 1.5
PROFASI trajectory files

A "trajectory" in PROFASI is a sequence of snapshots stored at regular intervals during a Monte Carlo run. Trajectory files are generated by PROFASI simulation programs such as BasicMCRun, SimTempRun and ParTempRun.

Multi-segment trajectories

On modern computing systems, the run time for a single job is normally limited, quite often to one or a few days. This is not enough for a production run of a decent protein system. So, one needs several restarts. This is how PROFASI handles such multi-part runs:

When you start a run, tell the program how much time it has. For instance, if you request 24 hours for a parallel job on 64 cores from a PBS queue manager, put the following line in the PROFASI settings file for the job:

  available_time 23:45:0

A lot of things need to be saved when the job ends. So, it is normally better to leave a bit of time at the end of job: if you have 24 hours, tell PROFASI that you have 23 hours 45 minutes. If the job is not finished when the available time expires, the simulation "suspends". To restart from where it left, just start the same job again in the same directory. PROFASI detects that there was an unfinished run and continues the run instead of starting a new one. Imagine you had to restart a run 17 times to finish 10 million MC sweeps for a system. These 18 stages of the run will be called segments.

To extract a particular snapshot with the extract_snapshot program or analyze properties of the trajectory with the extract_props program, the "traj" files are used as input. But the "traj" files alone are useless since they don't contain the actual data.

It is not enough to copy the tiny "traj" files back from the cluster or supercomputer running the simulations. All conf.data... files must be copied.

The prf_traj::Trajectory class parses the "traj" files and provides an interface as if it was one smooth series of snapshots. Only one file handle is kept open corresponding to the segment of the snapshot last accessed. This is called the "active" segment. If access is attempted to a snapshot on a different segment of the run than the active segment, the active segment is closed, and the necessary segment is opened and the correct snapshot returned. To the outside function, all these details are hidden. They iterate over the trajectory and access elements when they want to.

See Also
PROFASI trajectory module, extract_snapshot, extract_props, Generating trajectory files

PROFASI: Protein Folding and Aggregation Simulator, Version 1.5
© (2005-2016) Anders Irbäck and Sandipan Mohanty
Documentation generated on Mon Jul 18 2016 using Doxygen version 1.8.2