From 17853aef202c668b4abd976e6fa1d82e74629836 Mon Sep 17 00:00:00 2001 From: Axel Kohlmeyer <akohlmey@gmail.com> Date: Fri, 5 Oct 2018 09:47:47 +0200 Subject: [PATCH] modify restart changes, so it stays backward compatible and does not result in unexpected behavior when reading old restarts. also use consistent naming conventions for enum entries --- src/read_restart.cpp | 6 ++++-- src/write_restart.cpp | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/read_restart.cpp b/src/read_restart.cpp index a57831a5b2..252c48d251 100644 --- a/src/read_restart.cpp +++ b/src/read_restart.cpp @@ -64,7 +64,7 @@ enum{VERSION,SMALLINT,TAGINT,BIGINT, ATOM_ID,ATOM_MAP_STYLE,ATOM_MAP_USER,ATOM_SORTFREQ,ATOM_SORTBIN, COMM_MODE,COMM_CUTOFF,COMM_VEL,NO_PAIR, EXTRA_BOND_PER_ATOM,EXTRA_ANGLE_PER_ATOM,EXTRA_DIHEDRAL_PER_ATOM, - EXTRA_IMPROPER_PER_ATOM,MAXSPECIAL}; + EXTRA_IMPROPER_PER_ATOM,EXTRA_SPECIAL_PER_ATOM,ATOM_MAXSPECIAL}; #define LB_FACTOR 1.1 @@ -924,7 +924,9 @@ void ReadRestart::header(int incompatible) atom->extra_dihedral_per_atom = read_int(); } else if (flag == EXTRA_IMPROPER_PER_ATOM) { atom->extra_improper_per_atom = read_int(); - } else if (flag == MAXSPECIAL) { + } else if (flag == EXTRA_SPECIAL_PER_ATOM) { + force->special_extra = read_int(); + } else if (flag == ATOM_MAXSPECIAL) { atom->maxspecial = read_int(); } else error->all(FLERR,"Invalid flag in header section of restart file"); diff --git a/src/write_restart.cpp b/src/write_restart.cpp index 6e01ab2997..e0e17cd292 100644 --- a/src/write_restart.cpp +++ b/src/write_restart.cpp @@ -63,7 +63,7 @@ enum{VERSION,SMALLINT,TAGINT,BIGINT, ATOM_ID,ATOM_MAP_STYLE,ATOM_MAP_USER,ATOM_SORTFREQ,ATOM_SORTBIN, COMM_MODE,COMM_CUTOFF,COMM_VEL,NO_PAIR, EXTRA_BOND_PER_ATOM,EXTRA_ANGLE_PER_ATOM,EXTRA_DIHEDRAL_PER_ATOM, - EXTRA_IMPROPER_PER_ATOM,MAXSPECIAL}; + EXTRA_IMPROPER_PER_ATOM,EXTRA_SPECIAL_PER_ATOM,ATOM_MAXSPECIAL}; /* ---------------------------------------------------------------------- */ @@ -533,7 +533,7 @@ void WriteRestart::header() write_int(EXTRA_ANGLE_PER_ATOM,atom->extra_angle_per_atom); write_int(EXTRA_DIHEDRAL_PER_ATOM,atom->extra_dihedral_per_atom); write_int(EXTRA_IMPROPER_PER_ATOM,atom->extra_improper_per_atom); - write_int(MAXSPECIAL,atom->maxspecial); + write_int(ATOM_MAXSPECIAL,atom->maxspecial); // -1 flag signals end of header -- GitLab