From b145d7f4d6325baadfb5fc4800ff832200adfde7 Mon Sep 17 00:00:00 2001 From: sjplimp Date: Thu, 23 Dec 2010 16:18:19 +0000 Subject: [PATCH] git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@5434 f3b2605a-c512-4ea7-a41b-209d697bcdaa --- src/KSPACE/pair_lj_charmm_coul_long.cpp | 15 +++++++++------ src/MOLECULE/pair_lj_charmm_coul_charmm.cpp | 15 +++++++++------ 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/src/KSPACE/pair_lj_charmm_coul_long.cpp b/src/KSPACE/pair_lj_charmm_coul_long.cpp index 856743100f..66f84440f2 100644 --- a/src/KSPACE/pair_lj_charmm_coul_long.cpp +++ b/src/KSPACE/pair_lj_charmm_coul_long.cpp @@ -35,6 +35,8 @@ using namespace LAMMPS_NS; +enum{GEOMETRIC,ARITHMETIC,SIXTHPOWER}; // same as in pair.cpp + #define MIN(a,b) ((a) < (b) ? (a) : (b)) #define MAX(a,b) ((a) > (b) ? (a) : (b)) @@ -53,6 +55,7 @@ PairLJCharmmCoulLong::PairLJCharmmCoulLong(LAMMPS *lmp) : Pair(lmp) respa_enable = 1; ftable = NULL; implicit = 0; + mix_flag = ARITHMETIC; } /* ---------------------------------------------------------------------- */ @@ -817,13 +820,13 @@ void PairLJCharmmCoulLong::init_list(int id, NeighList *ptr) double PairLJCharmmCoulLong::init_one(int i, int j) { - // always mix arithmetically - if (setflag[i][j] == 0) { - epsilon[i][j] = sqrt(epsilon[i][i]*epsilon[j][j]); - sigma[i][j] = 0.5 * (sigma[i][i] + sigma[j][j]); - eps14[i][j] = sqrt(eps14[i][i]*eps14[j][j]); - sigma14[i][j] = 0.5 * (sigma14[i][i] + sigma14[j][j]); + epsilon[i][j] = mix_energy(epsilon[i][i],epsilon[j][j], + sigma[i][i],sigma[j][j]); + sigma[i][j] = mix_distance(sigma[i][i],sigma[j][j]); + eps14[i][j] = mix_energy(eps14[i][i],eps14[j][j], + sigma14[i][i],sigma14[j][j]); + sigma14[i][j] = mix_distance(sigma14[i][i],sigma14[j][j]); } double cut = MAX(cut_lj,cut_coul); diff --git a/src/MOLECULE/pair_lj_charmm_coul_charmm.cpp b/src/MOLECULE/pair_lj_charmm_coul_charmm.cpp index 670bc3c53c..1326d3ecd3 100644 --- a/src/MOLECULE/pair_lj_charmm_coul_charmm.cpp +++ b/src/MOLECULE/pair_lj_charmm_coul_charmm.cpp @@ -30,6 +30,8 @@ using namespace LAMMPS_NS; +enum{GEOMETRIC,ARITHMETIC,SIXTHPOWER}; // same as in pair.cpp + #define MIN(a,b) ((a) < (b) ? (a) : (b)) #define MAX(a,b) ((a) > (b) ? (a) : (b)) @@ -38,6 +40,7 @@ using namespace LAMMPS_NS; PairLJCharmmCoulCharmm::PairLJCharmmCoulCharmm(LAMMPS *lmp) : Pair(lmp) { implicit = 0; + mix_flag = ARITHMETIC; } /* ---------------------------------------------------------------------- */ @@ -314,13 +317,13 @@ void PairLJCharmmCoulCharmm::init_style() double PairLJCharmmCoulCharmm::init_one(int i, int j) { - // always mix arithmetically - if (setflag[i][j] == 0) { - epsilon[i][j] = sqrt(epsilon[i][i]*epsilon[j][j]); - sigma[i][j] = 0.5 * (sigma[i][i] + sigma[j][j]); - eps14[i][j] = sqrt(eps14[i][i]*eps14[j][j]); - sigma14[i][j] = 0.5 * (sigma14[i][i] + sigma14[j][j]); + epsilon[i][j] = mix_energy(epsilon[i][i],epsilon[j][j], + sigma[i][i],sigma[j][j]); + sigma[i][j] = mix_distance(sigma[i][i],sigma[j][j]); + eps14[i][j] = mix_energy(eps14[i][i],eps14[j][j], + sigma14[i][i],sigma14[j][j]); + sigma14[i][j] = mix_distance(sigma14[i][i],sigma14[j][j]); } double cut = MAX(cut_lj,cut_coul);