From d5f93e9e2c146855cc4ed33f778ceedea758fe1a Mon Sep 17 00:00:00 2001 From: sjplimp Date: Wed, 5 Jun 2013 13:55:19 +0000 Subject: [PATCH] git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@10025 f3b2605a-c512-4ea7-a41b-209d697bcdaa --- src/pair_hybrid.cpp | 10 +++++++--- src/pair_hybrid.h | 2 ++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/pair_hybrid.cpp b/src/pair_hybrid.cpp index 2d16d6b39f..63f92c5db6 100644 --- a/src/pair_hybrid.cpp +++ b/src/pair_hybrid.cpp @@ -37,6 +37,8 @@ PairHybrid::PairHybrid(LAMMPS *lmp) : Pair(lmp) styles = NULL; keywords = NULL; multiple = NULL; + + outerflag = 0; } /* ---------------------------------------------------------------------- */ @@ -98,7 +100,8 @@ void PairHybrid::compute(int eflag, int vflag) else vflag_substyle = vflag; for (m = 0; m < nstyles; m++) { - styles[m]->compute(eflag,vflag_substyle); + if (outerflag) styles[m]->compute(eflag,vflag_substyle); + else styles[m]->compute_outer(eflag,vflag_substyle); if (eflag_global) { eng_vdwl += styles[m]->eng_vdwl; @@ -146,8 +149,9 @@ void PairHybrid::compute_middle() void PairHybrid::compute_outer(int eflag, int vflag) { - for (int m = 0; m < nstyles; m++) - if (styles[m]->respa_enable) styles[m]->compute_outer(eflag,vflag); + outerflag = 1; + compute(eflag,vflag); + outerflag = 0; } /* ---------------------------------------------------------------------- diff --git a/src/pair_hybrid.h b/src/pair_hybrid.h index 56a20638a6..4f3e61c4a6 100644 --- a/src/pair_hybrid.h +++ b/src/pair_hybrid.h @@ -54,6 +54,8 @@ class PairHybrid : public Pair { int check_ijtype(int, int, char *); protected: + int outerflag; // toggle compute() when invoked by outer() + int **nmap; // # of sub-styles itype,jtype points to int ***map; // list of sub-styles itype,jtype points to