Add TNG writing and reading support
TNG is never read or written by default, but is available as
a trajectory format. The TNG repo is bundled in the GROMACS
source (commit
35827d2c19db8ad86690be32f33da7470abddf3d).
Tools such as trjconv, trjcat, gmxcheck and gmxdump have partial
support for TNG available. Full support for these tools (even only for
the subset of TNG features that GROMACS might want to use right now)
is currently difficult, because the code and data for existing
trajectory writing is a mess of excess functionality. This will need
to be revisited when (at least) trjconv is broken up into more parts.
Writing with mdrun -x works (tests included)
Reading with mdrun -rerun works (tests included)
Reading and writing with trjconv works (tests included)
trjconv -n subsets work (tests included)
Reading works from e.g. dump, check, trjconv trjcat.
Writing works from e.g. mdrun trjconv, trjcat.
Some other tools seem to work as well, e.g., g_rms.
Reworked some integration test machinery to do more value-paramterized
tests.
Renamed status variable in gmx_trjconv.c to better reflect its usage
as an opaque trajectory-reading-management object.
Encapsulated gmx_mdoutf_t
Moved content of trajectory_writing_low_level.c to mdoutf.c
The Windows build with GMX_USE_TNG=ON is known to be broken with TNG
files.
Changed .mdp field and code variable names that were specific to XTC
to be more generic, now that there is more than one way to write a
trajectory file with lossy compression. Other associated documentation
updates also.
Change-Id: Ied156d8ad728711e08a0c61db5ee3472b0df39d5