Ignore:
Timestamp:
Jul 3, 2017, 3:07:28 PM (8 years ago)
Author:
Frederik Heber <frederik.heber@…>
Branches:
ForceAnnealing_oldresults, IndependentFragmentGrids_IntegrationTest
Children:
67e885
Parents:
efc80e
git-author:
Frederik Heber <frederik.heber@…> (06/17/17 23:09:19)
git-committer:
Frederik Heber <frederik.heber@…> (07/03/17 15:07:28)
Message:

Extracted getMinMaxTrajectories() into FormatParser_common.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/Parser/XyzParser.cpp

    refc80e ref8667  
    169169
    170170  // get max and min trajectories
    171   size_t min_trajectories = std::numeric_limits<size_t>::max();
    172   size_t max_trajectories = std::numeric_limits<size_t>::min();
    173   for (std::vector<const atom *>::const_iterator iter = atoms.begin();
    174       iter != atoms.end();
    175       ++iter) {
    176     if (max_trajectories < (*iter)->getTrajectorySize())
    177       max_trajectories = (*iter)->getTrajectorySize();
    178     if (min_trajectories > (*iter)->getTrajectorySize())
    179       min_trajectories = (*iter)->getTrajectorySize();
    180   }
    181   // no atoms? Then, they all have same amount
    182   if (atoms.size() == 0)
    183     min_trajectories = max_trajectories = 1;
    184   ASSERT(min_trajectories == max_trajectories,
    185       "FormatParser< xyz >::save() - not all atoms have same number of trajectories: "
    186       +toString(min_trajectories)+" != "+toString(max_trajectories)+".");
    187   LOG(2, "INFO: There are " << max_trajectories << " steps to save.");
     171  std::pair<size_t, size_t> minmax_trajectories =
     172      getMinMaxTrajectories(atoms);
     173  LOG(2, "INFO: There are " << minmax_trajectories.second << " steps to save.");
    188174
    189175  // always store at least one step
    190   for (size_t step = 0; (step < max_trajectories) || (step == 0); ++step) {
     176  for (size_t step = 0; (step < minmax_trajectories.second) || (step == 0); ++step) {
    191177    if (step != 0)
    192178      *file << "\n";
Note: See TracChangeset for help on using the changeset viewer.