From a67e46d7be43eb6e8eb3b250070eac92cc3c4c4f Mon Sep 17 00:00:00 2001 From: sjplimp Date: Tue, 4 Feb 2014 16:10:16 +0000 Subject: [PATCH] git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@11472 f3b2605a-c512-4ea7-a41b-209d697bcdaa --- src/variable.cpp | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/src/variable.cpp b/src/variable.cpp index 065d3605d2..61fe2a0ae5 100644 --- a/src/variable.cpp +++ b/src/variable.cpp @@ -3257,12 +3257,10 @@ int Variable::special_function(char *word, char *contents, Tree **tree, else if (method == XMIN) value = MIN(value,vec[j]); else if (method == XMAX) value = MAX(value,vec[j]); else if (method == AVE) value += vec[j]; - else if (method == TRAP) { - if (i > 0 && i < nvec-1) value += vec[j]; - else value += 0.5*vec[j]; - } + else if (method == TRAP) value += vec[j]; j += nstride; } + if (method == TRAP) value -= 0.5*vec[0] + 0.5*vec[nvec-1]; } if (fix) { @@ -3274,10 +3272,13 @@ int Variable::special_function(char *word, char *contents, Tree **tree, else if (method == XMIN) value = MIN(value,one); else if (method == XMAX) value = MAX(value,one); else if (method == AVE) value += one; - else if (method == TRAP) { - if (i > 0 && i < nvec-1) value += one; - else value += 0.5*one; - } + else if (method == TRAP) value += one; + } + if (method == TRAP) { + if (index) value -= 0.5*fix->compute_array(0,index-1) + + 0.5*fix->compute_array(nvec-1,index-1); + else value -= 0.5*fix->compute_vector(0) + + 0.5*fix->compute_vector(nvec-1); } }