diff --git a/src/USER-MISC/dihedral_nharmonic.cpp b/src/USER-MISC/dihedral_nharmonic.cpp index ba8af7e65b3b08e94507527c1390c0a39d14adfd..25049b8ec255b2308b17dd2427e7983b283ce29b 100644 --- a/src/USER-MISC/dihedral_nharmonic.cpp +++ b/src/USER-MISC/dihedral_nharmonic.cpp @@ -35,7 +35,9 @@ using namespace LAMMPS_NS; /* ---------------------------------------------------------------------- */ -DihedralNHarmonic::DihedralNHarmonic(LAMMPS *lmp) : Dihedral(lmp) {} +DihedralNHarmonic::DihedralNHarmonic(LAMMPS *lmp) : Dihedral(lmp) { + writedata = 1; +} /* ---------------------------------------------------------------------- */ @@ -334,3 +336,19 @@ void DihedralNHarmonic::read_restart(FILE *fp) for (int i = 1; i <= atom->ndihedraltypes; i++) setflag[i] = 1; } +/* ---------------------------------------------------------------------- + proc 0 writes to data file +------------------------------------------------------------------------- */ + +void DihedralNHarmonic::write_data(FILE *fp) +{ + fwrite(&nterms[1],sizeof(int),atom->ndihedraltypes,fp); + for (int i = 1; i <= atom->ndihedraltypes; i++) { + fprintf(fp, "%d %d ", i, nterms[i]); + for (int j = 0; j < nterms[i]; j++ ) { + fprintf(fp, "%f ", a[i][j]); + } + fprintf(fp, "\n"); + } + +} diff --git a/src/USER-MISC/dihedral_nharmonic.h b/src/USER-MISC/dihedral_nharmonic.h index c347f37cbd04c894c4775f3dc0dc76117024515e..2e8050feb9348307b0c21edaf5aa3a10aeaf44f1 100644 --- a/src/USER-MISC/dihedral_nharmonic.h +++ b/src/USER-MISC/dihedral_nharmonic.h @@ -33,6 +33,7 @@ class DihedralNHarmonic : public Dihedral { void coeff(int, char **); void write_restart(FILE *); void read_restart(FILE *); + void write_data(FILE *); protected: int *nterms;