diff --git a/src/BODY/body_nparticle.cpp b/src/BODY/body_nparticle.cpp index 57d963cf59..a39a1c4c59 100644 --- a/src/BODY/body_nparticle.cpp +++ b/src/BODY/body_nparticle.cpp @@ -39,8 +39,8 @@ BodyNparticle::BodyNparticle(LAMMPS *lmp, int narg, char **arg) : // NOTE: need to set appropriate nnbin param for dcp - icp = new MyPool(1,1); - dcp = new MyPool(3*nmin,3*nmax); + icp = new MyPoolChunk(1,1); + dcp = new MyPoolChunk(3*nmin,3*nmax); } /* ---------------------------------------------------------------------- */ diff --git a/src/CLASS2/angle_class2.cpp b/src/CLASS2/angle_class2.cpp index 8b0ba3c232..7aabc352b6 100644 --- a/src/CLASS2/angle_class2.cpp +++ b/src/CLASS2/angle_class2.cpp @@ -403,6 +403,25 @@ void AngleClass2::read_restart(FILE *fp) for (int i = 1; i <= atom->nangletypes; i++) setflag[i] = 1; } +/* ---------------------------------------------------------------------- + proc 0 writes to data file +------------------------------------------------------------------------- */ + +void AngleClass2::write_data(FILE *fp) +{ + for (int i = 1; i <= atom->nangletypes; i++) + fprintf(fp,"%d %g %g %g %g\n", + i,theta0[i]/MY_PI*180.0,k2[i],k3[i],k4[i]); + + fprintf(fp,"\nBondBond Coeffs\n\n"); + for (int i = 1; i <= atom->nangletypes; i++) + fprintf(fp,"%d %g %g %g\n",i,bb_k[i],bb_r1[i],bb_r2[i]); + + fprintf(fp,"\nBondAngle Coeffs\n\n"); + for (int i = 1; i <= atom->nangletypes; i++) + fprintf(fp,"%d %g %g %g %gx\n",i,ba_k1[i],ba_k2[i],ba_r1[i],ba_r2[i]); +} + /* ---------------------------------------------------------------------- */ double AngleClass2::single(int type, int i1, int i2, int i3) diff --git a/src/CLASS2/angle_class2.h b/src/CLASS2/angle_class2.h index 7f862f628d..a8c709851c 100644 --- a/src/CLASS2/angle_class2.h +++ b/src/CLASS2/angle_class2.h @@ -34,6 +34,7 @@ class AngleClass2 : public Angle { double equilibrium_angle(int); void write_restart(FILE *); void read_restart(FILE *); + void write_data(FILE *); double single(int, int, int, int); protected: diff --git a/src/MOLECULE/angle_charmm.cpp b/src/MOLECULE/angle_charmm.cpp index 9c9a86179d..9717fcffa2 100644 --- a/src/MOLECULE/angle_charmm.cpp +++ b/src/MOLECULE/angle_charmm.cpp @@ -259,6 +259,17 @@ void AngleCharmm::read_restart(FILE *fp) for (int i = 1; i <= atom->nangletypes; i++) setflag[i] = 1; } +/* ---------------------------------------------------------------------- + proc 0 writes to data file +------------------------------------------------------------------------- */ + +void AngleCharmm::write_data(FILE *fp) +{ + for (int i = 1; i <= atom->nangletypes; i++) + fprintf(fp,"%d %g %g %g %g\n", + i,k[i],theta0[i]/MY_PI*180.0,k_ub[i],r_ub[i]); +} + /* ---------------------------------------------------------------------- */ double AngleCharmm::single(int type, int i1, int i2, int i3) diff --git a/src/MOLECULE/angle_charmm.h b/src/MOLECULE/angle_charmm.h index b55e7eb9f8..8d165d1dcf 100644 --- a/src/MOLECULE/angle_charmm.h +++ b/src/MOLECULE/angle_charmm.h @@ -34,6 +34,7 @@ class AngleCharmm : public Angle { double equilibrium_angle(int); void write_restart(FILE *); void read_restart(FILE *); + void write_data(FILE *); double single(int, int, int, int); protected: diff --git a/src/MOLECULE/angle_cosine.cpp b/src/MOLECULE/angle_cosine.cpp index 6ff6985277..24eccb2a69 100644 --- a/src/MOLECULE/angle_cosine.cpp +++ b/src/MOLECULE/angle_cosine.cpp @@ -200,6 +200,16 @@ void AngleCosine::read_restart(FILE *fp) for (int i = 1; i <= atom->nangletypes; i++) setflag[i] = 1; } +/* ---------------------------------------------------------------------- + proc 0 writes to data file +------------------------------------------------------------------------- */ + +void AngleCosine::write_data(FILE *fp) +{ + for (int i = 1; i <= atom->nangletypes; i++) + fprintf(fp,"%d %g\n",i,k[i]); +} + /* ---------------------------------------------------------------------- */ double AngleCosine::single(int type, int i1, int i2, int i3) diff --git a/src/MOLECULE/angle_cosine.h b/src/MOLECULE/angle_cosine.h index 903794c8b4..766966e830 100644 --- a/src/MOLECULE/angle_cosine.h +++ b/src/MOLECULE/angle_cosine.h @@ -34,6 +34,7 @@ class AngleCosine : public Angle { double equilibrium_angle(int); void write_restart(FILE *); void read_restart(FILE *); + void write_data(FILE *); double single(int, int, int, int); protected: diff --git a/src/MOLECULE/angle_cosine_periodic.cpp b/src/MOLECULE/angle_cosine_periodic.cpp index 2d10052e33..4c02ec7bc5 100644 --- a/src/MOLECULE/angle_cosine_periodic.cpp +++ b/src/MOLECULE/angle_cosine_periodic.cpp @@ -262,6 +262,17 @@ void AngleCosinePeriodic::read_restart(FILE *fp) for (int i = 1; i <= atom->nangletypes; i++) setflag[i] = 1; } + +/* ---------------------------------------------------------------------- + proc 0 writes to data file +------------------------------------------------------------------------- */ + +void AngleCosinePeriodic::write_data(FILE *fp) +{ + for (int i = 1; i <= atom->nangletypes; i++) + fprintf(fp,"%d %g %d %d\n",i,k[i],b[i],multiplicity[i]); +} + /* ---------------------------------------------------------------------- */ double AngleCosinePeriodic::single(int type, int i1, int i2, int i3) diff --git a/src/MOLECULE/angle_cosine_periodic.h b/src/MOLECULE/angle_cosine_periodic.h index 0b9ce09385..d050a80ccc 100644 --- a/src/MOLECULE/angle_cosine_periodic.h +++ b/src/MOLECULE/angle_cosine_periodic.h @@ -34,6 +34,7 @@ class AngleCosinePeriodic : public Angle { double equilibrium_angle(int); void write_restart(FILE *); void read_restart(FILE *); + void write_data(FILE *); double single(int, int, int, int); protected: diff --git a/src/MOLECULE/angle_cosine_squared.cpp b/src/MOLECULE/angle_cosine_squared.cpp index 9eaa4c31af..a198a2c498 100644 --- a/src/MOLECULE/angle_cosine_squared.cpp +++ b/src/MOLECULE/angle_cosine_squared.cpp @@ -221,6 +221,16 @@ void AngleCosineSquared::read_restart(FILE *fp) for (int i = 1; i <= atom->nangletypes; i++) setflag[i] = 1; } +/* ---------------------------------------------------------------------- + proc 0 writes to data file +------------------------------------------------------------------------- */ + +void AngleCosineSquared::write_data(FILE *fp) +{ + for (int i = 1; i <= atom->nangletypes; i++) + fprintf(fp,"%d %g %g\n",i,k[i],theta0[i]/MY_PI*180.0); +} + /* ---------------------------------------------------------------------- */ double AngleCosineSquared::single(int type, int i1, int i2, int i3) diff --git a/src/MOLECULE/angle_cosine_squared.h b/src/MOLECULE/angle_cosine_squared.h index 3b8b3114ef..0bdfa17f16 100644 --- a/src/MOLECULE/angle_cosine_squared.h +++ b/src/MOLECULE/angle_cosine_squared.h @@ -34,6 +34,7 @@ class AngleCosineSquared : public Angle { double equilibrium_angle(int); void write_restart(FILE *); void read_restart(FILE *); + void write_data(FILE *); virtual double single(int, int, int, int); protected: diff --git a/src/MOLECULE/angle_harmonic.cpp b/src/MOLECULE/angle_harmonic.cpp index 5bf1664e63..c996c4e866 100644 --- a/src/MOLECULE/angle_harmonic.cpp +++ b/src/MOLECULE/angle_harmonic.cpp @@ -30,10 +30,7 @@ using namespace MathConst; /* ---------------------------------------------------------------------- */ -AngleHarmonic::AngleHarmonic(LAMMPS *lmp) : Angle(lmp) -{ - writedata = 1; -} +AngleHarmonic::AngleHarmonic(LAMMPS *lmp) : Angle(lmp) {} /* ---------------------------------------------------------------------- */ diff --git a/src/MOLECULE/angle_table.cpp b/src/MOLECULE/angle_table.cpp index 88b1f97ac6..96e0c37a02 100644 --- a/src/MOLECULE/angle_table.cpp +++ b/src/MOLECULE/angle_table.cpp @@ -41,6 +41,7 @@ enum{LINEAR,SPLINE}; AngleTable::AngleTable(LAMMPS *lmp) : Angle(lmp) { + writedata = 0; ntables = 0; tables = NULL; }