diff --git a/src/atom_vec_ellipsoid.cpp b/src/atom_vec_ellipsoid.cpp index 90f4738462..dc2760c5f9 100644 --- a/src/atom_vec_ellipsoid.cpp +++ b/src/atom_vec_ellipsoid.cpp @@ -61,7 +61,7 @@ AtomVecEllipsoid::AtomVecEllipsoid(LAMMPS *lmp) : AtomVec(lmp) fields_border = (char *) "rmass"; fields_border_vel = (char *) "rmass angmom"; fields_exchange = (char *) "rmass angmom"; - fields_restart = (char *) "rmass angmom ellipsoid"; + fields_restart = (char *) "rmass angmom"; fields_create = (char *) "rmass angmom ellipsoid"; fields_data_atom = (char *) "id type ellipsoid rmass x"; fields_data_vel = (char *) "id v angmom"; diff --git a/src/lmprestart.h b/src/lmprestart.h index f0d43e70a5..ecdd272d81 100644 --- a/src/lmprestart.h +++ b/src/lmprestart.h @@ -17,7 +17,7 @@ #define MAGIC_STRING "LammpS RestartT" #define ENDIAN 0x0001 #define ENDIANSWAP 0x1000 -#define FORMAT_REVISION 1 +#define FORMAT_REVISION 2 enum{VERSION,SMALLINT,TAGINT,BIGINT, UNITS,NTIMESTEP,DIMENSION,NPROCS,PROCGRID, @@ -36,7 +36,8 @@ 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,EXTRA_SPECIAL_PER_ATOM,ATOM_MAXSPECIAL}; + EXTRA_IMPROPER_PER_ATOM,EXTRA_SPECIAL_PER_ATOM,ATOM_MAXSPECIAL, + NELLIPSOIDS,NLINES,NTRIS,NBODIES}; #define LB_FACTOR 1.1 diff --git a/src/read_restart.cpp b/src/read_restart.cpp index c4631619e1..3bbae596d1 100644 --- a/src/read_restart.cpp +++ b/src/read_restart.cpp @@ -884,6 +884,14 @@ void ReadRestart::header() atom->extra_improper_per_atom = read_int(); } else if (flag == ATOM_MAXSPECIAL) { atom->maxspecial = read_int(); + } else if (flag == NELLIPSOIDS) { + atom->nellipsoids = read_bigint(); + } else if (flag == NLINES) { + atom->nlines = read_bigint(); + } else if (flag == NTRIS) { + atom->ntris = read_bigint(); + } else if (flag == NBODIES) { + atom->nbodies = read_bigint(); // for backward compatibility } else if (flag == EXTRA_SPECIAL_PER_ATOM) { diff --git a/src/write_restart.cpp b/src/write_restart.cpp index 3c793e5f6a..f551ec96f3 100644 --- a/src/write_restart.cpp +++ b/src/write_restart.cpp @@ -504,6 +504,11 @@ void WriteRestart::header() write_int(EXTRA_IMPROPER_PER_ATOM,atom->extra_improper_per_atom); write_int(ATOM_MAXSPECIAL,atom->maxspecial); + write_bigint(NELLIPSOIDS,atom->nellipsoids); + write_bigint(NLINES,atom->nlines); + write_bigint(NTRIS,atom->ntris); + write_bigint(NBODIES,atom->nbodies); + // -1 flag signals end of header int flag = -1;