Reform enforced rotation working data
authorMark Abraham <mark.j.abraham@gmail.com>
Tue, 17 Jul 2018 21:46:31 +0000 (23:46 +0200)
committerMark Abraham <mark.j.abraham@gmail.com>
Sun, 5 Aug 2018 20:07:49 +0000 (22:07 +0200)
commit228b9d216040aeef8fefeba92cc82f21255807c5
tree00daa73ec46e28ecb56c6ee074cdcf109306524f
parent6f4582200097763bba9ba29a517ffe3a296f7bec
Reform enforced rotation working data

runner now holds responsibility for this object, not inputrec. We need
this separation as a precursor for various modularization efforts. The
input parameters are now referred to from that object, as a precursor
to forming a proper class and module.

The working data for each rotation group now contains a handle to the
const input data for each rotation group, rather than the other way
around. It also contains its index within the set of rotation
groups. These permit more const correctness, more range-based for
loops, and fewer parameters passed. This will let us evolve a class
to handle each group and/or type of rotation.

A vec field in the inputrec is now called inputVec. Formerly , it
handled both the user input and the normalized form used during the
work of the module, which no longer occurs. The name change makes it
clear that there are no remaining inadvertent uses of the field in the
input data.

The ind_loc field is now a proper deep copy of the ind field, because
they contain different data. This can be superseded by the
LocalAtomSet approach.

Some additional const correctness and reduced scope of iteration
variables.

Change-Id: Ic03919f68cc121eed9ebba58f887f18e5d1d8720
17 files changed:
src/gromacs/domdec/domdec.cpp
src/gromacs/domdec/domdec.h
src/gromacs/fileio/tpxio.cpp
src/gromacs/gmxpreprocess/readrot.cpp
src/gromacs/mdlib/force.h
src/gromacs/mdlib/shellfc.cpp
src/gromacs/mdlib/shellfc.h
src/gromacs/mdlib/sim_util.cpp
src/gromacs/mdrun/integrator.h
src/gromacs/mdrun/md.cpp
src/gromacs/mdrun/minimize.cpp
src/gromacs/mdrun/runner.cpp
src/gromacs/mdrun/tpi.cpp
src/gromacs/mdtypes/inputrec.cpp
src/gromacs/mdtypes/inputrec.h
src/gromacs/pulling/pull_rotation.cpp
src/gromacs/pulling/pull_rotation.h