diff --git a/src/EXTRA-MOLECULE/pair_hbond_dreiding_lj_angleoffset.cpp b/src/EXTRA-MOLECULE/pair_hbond_dreiding_lj_angleoffset.cpp index 390b72725d..02ac009773 100644 --- a/src/EXTRA-MOLECULE/pair_hbond_dreiding_lj_angleoffset.cpp +++ b/src/EXTRA-MOLECULE/pair_hbond_dreiding_lj_angleoffset.cpp @@ -46,23 +46,6 @@ PairHbondDreidingLJAngleoffset::PairHbondDreidingLJAngleoffset(LAMMPS *lmp) : PairHbondDreidingLJ(lmp) { angle_offset_flag = 1; - angle_offset_global = 0.0; -} - -/* ---------------------------------------------------------------------- - global settings -------------------------------------------------------------------------- */ - -void PairHbondDreidingLJAngleoffset::settings(int narg, char **arg) -{ - if (narg != 5) error->all(FLERR,"Illegal pair_style command"); - - // use first four settings args in parent method to update other variables - - PairHbondDreidingLJ::settings(4,arg); - - angle_offset_global = (180.0 - utils::numeric(FLERR, arg[4], false, lmp)) * MY_PI/180.0; - } /* ---------------------------------------------------------------------- diff --git a/src/EXTRA-MOLECULE/pair_hbond_dreiding_lj_angleoffset.h b/src/EXTRA-MOLECULE/pair_hbond_dreiding_lj_angleoffset.h index 8b1a93b1bc..5ae1fcba28 100644 --- a/src/EXTRA-MOLECULE/pair_hbond_dreiding_lj_angleoffset.h +++ b/src/EXTRA-MOLECULE/pair_hbond_dreiding_lj_angleoffset.h @@ -28,11 +28,8 @@ class PairHbondDreidingLJAngleoffset : public PairHbondDreidingLJ { public: PairHbondDreidingLJAngleoffset(class LAMMPS *); - void settings(int, char **) override; void coeff(int, char **) override; - protected: - double angle_offset_global; }; } // namespace LAMMPS_NS diff --git a/src/EXTRA-MOLECULE/pair_hbond_dreiding_morse_angleoffset.cpp b/src/EXTRA-MOLECULE/pair_hbond_dreiding_morse_angleoffset.cpp index 37bcdd7ee2..dedbbb8c9f 100644 --- a/src/EXTRA-MOLECULE/pair_hbond_dreiding_morse_angleoffset.cpp +++ b/src/EXTRA-MOLECULE/pair_hbond_dreiding_morse_angleoffset.cpp @@ -47,23 +47,6 @@ PairHbondDreidingMorseAngleoffset::PairHbondDreidingMorseAngleoffset(LAMMPS *lmp angle_offset_global = 0.0; } - -/* ---------------------------------------------------------------------- - global settings -------------------------------------------------------------------------- */ - -void PairHbondDreidingMorseAngleoffset::settings(int narg, char **arg) -{ - if (narg != 5) error->all(FLERR,"Illegal pair_style command"); - - // use first four settings args in parent method to update other variables - - PairHbondDreidingMorse::settings(4,arg); - - angle_offset_global = (180.0 - utils::numeric(FLERR, arg[4], false, lmp)) * MY_PI/180.0; - -} - // /* ---------------------------------------------------------------------- // set coeffs for one or more type pairs // ------------------------------------------------------------------------- */ diff --git a/src/EXTRA-MOLECULE/pair_hbond_dreiding_morse_angleoffset.h b/src/EXTRA-MOLECULE/pair_hbond_dreiding_morse_angleoffset.h index 82c5b3bd50..5eeb1796a2 100644 --- a/src/EXTRA-MOLECULE/pair_hbond_dreiding_morse_angleoffset.h +++ b/src/EXTRA-MOLECULE/pair_hbond_dreiding_morse_angleoffset.h @@ -28,11 +28,8 @@ class PairHbondDreidingMorseAngleoffset : public PairHbondDreidingMorse { public: PairHbondDreidingMorseAngleoffset(class LAMMPS *); - void settings(int, char **) override; void coeff(int, char **) override; - - protected: - double angle_offset_global; + }; } // namespace LAMMPS_NS diff --git a/src/MOLECULE/pair_hbond_dreiding_lj.cpp b/src/MOLECULE/pair_hbond_dreiding_lj.cpp index 65b333ba02..ebe7fdd123 100644 --- a/src/MOLECULE/pair_hbond_dreiding_lj.cpp +++ b/src/MOLECULE/pair_hbond_dreiding_lj.cpp @@ -57,6 +57,7 @@ PairHbondDreidingLJ::PairHbondDreidingLJ(LAMMPS *lmp) : Pair(lmp) pvector = new double[2]; angle_offset_flag = 0; + angle_offset_global = 0.0; } /* ---------------------------------------------------------------------- */ @@ -309,12 +310,19 @@ void PairHbondDreidingLJ::allocate() void PairHbondDreidingLJ::settings(int narg, char **arg) { - if (narg != 4) error->all(FLERR,"Illegal pair_style command"); + + // narg = 4 for standard form and narg = 5 if angleoffset variant (from EXTRA-MOLECULE) + if (narg != 4 && narg != 5) error->all(FLERR,"Illegal pair_style command"); ap_global = utils::inumeric(FLERR,arg[0],false,lmp); cut_inner_global = utils::numeric(FLERR,arg[1],false,lmp); cut_outer_global = utils::numeric(FLERR,arg[2],false,lmp); cut_angle_global = utils::numeric(FLERR,arg[3],false,lmp) * MY_PI/180.0; + + // update when using angleoffset variant + if (angle_offset_flag) { + angle_offset_global = (180.0 - utils::numeric(FLERR, arg[4], false, lmp)) * MY_PI/180.0; + } } /* ---------------------------------------------------------------------- diff --git a/src/MOLECULE/pair_hbond_dreiding_lj.h b/src/MOLECULE/pair_hbond_dreiding_lj.h index e5cde8da69..131f3946b3 100644 --- a/src/MOLECULE/pair_hbond_dreiding_lj.h +++ b/src/MOLECULE/pair_hbond_dreiding_lj.h @@ -40,6 +40,7 @@ class PairHbondDreidingLJ : public Pair { double cut_inner_global, cut_outer_global, cut_angle_global; int ap_global; int angle_offset_flag; // 1 if angle offset variant used + double angle_offset_global; // updated if angle offset variant used struct Param { double epsilon, sigma;