From 2683d014360dbf97694869ddc3e9db8b11aad912 Mon Sep 17 00:00:00 2001 From: sjplimp <sjplimp@f3b2605a-c512-4ea7-a41b-209d697bcdaa> Date: Mon, 14 Mar 2011 15:14:53 +0000 Subject: [PATCH] git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@5784 f3b2605a-c512-4ea7-a41b-209d697bcdaa --- src/fix_addforce.cpp | 8 ++++---- src/fix_ave_atom.cpp | 2 +- src/fix_efield.cpp | 6 +++--- src/fix_move.cpp | 18 ++++++++++++------ src/fix_setforce.cpp | 6 +++--- src/velocity.cpp | 6 +++--- 6 files changed, 26 insertions(+), 20 deletions(-) diff --git a/src/fix_addforce.cpp b/src/fix_addforce.cpp index 03445312a2..b51b2dcc0d 100644 --- a/src/fix_addforce.cpp +++ b/src/fix_addforce.cpp @@ -258,15 +258,15 @@ void FixAddForce::post_force(int vflag) modify->clearstep_compute(); if (xstyle == EQUAL) xvalue = input->variable->compute_equal(xvar); - else if (xstyle == ATOM) + else if (xstyle == ATOM && sforce) input->variable->compute_atom(xvar,igroup,&sforce[0][0],4,0); if (ystyle == EQUAL) yvalue = input->variable->compute_equal(yvar); - else if (ystyle == ATOM) + else if (ystyle == ATOM && sforce) input->variable->compute_atom(yvar,igroup,&sforce[0][1],4,0); if (zstyle == EQUAL) zvalue = input->variable->compute_equal(zvar); - else if (zstyle == ATOM) + else if (zstyle == ATOM && sforce) input->variable->compute_atom(zvar,igroup,&sforce[0][2],4,0); - if (estyle == ATOM) + if (estyle == ATOM && sforce) input->variable->compute_atom(evar,igroup,&sforce[0][3],4,0); modify->addstep_compute(update->ntimestep + 1); diff --git a/src/fix_ave_atom.cpp b/src/fix_ave_atom.cpp index ee2cf2b2d0..a6f81a72b3 100644 --- a/src/fix_ave_atom.cpp +++ b/src/fix_ave_atom.cpp @@ -351,7 +351,7 @@ void FixAveAtom::end_of_step() // evaluate atom-style variable - } else if (which[m] == VARIABLE) + } else if (which[m] == VARIABLE && array) input->variable->compute_atom(n,igroup,&array[0][m],nvalues,1); } diff --git a/src/fix_efield.cpp b/src/fix_efield.cpp index f60522b56f..5a5048a871 100644 --- a/src/fix_efield.cpp +++ b/src/fix_efield.cpp @@ -184,13 +184,13 @@ void FixEfield::post_force(int vflag) modify->clearstep_compute(); if (xstyle == EQUAL) ex = qe2f * input->variable->compute_equal(xvar); - else if (xstyle == ATOM) + else if (xstyle == ATOM && efield) input->variable->compute_atom(xvar,igroup,&efield[0][0],3,0); if (ystyle == EQUAL) ey = qe2f * input->variable->compute_equal(yvar); - else if (ystyle == ATOM) + else if (ystyle == ATOM && efield) input->variable->compute_atom(yvar,igroup,&efield[0][1],3,0); if (zstyle == EQUAL) ez = qe2f * input->variable->compute_equal(zvar); - else if (zstyle == ATOM) + else if (zstyle == ATOM && efield) input->variable->compute_atom(zvar,igroup,&efield[0][2],3,0); modify->addstep_compute(update->ntimestep + 1); diff --git a/src/fix_move.cpp b/src/fix_move.cpp index d14908d9c2..43f5df7d24 100644 --- a/src/fix_move.cpp +++ b/src/fix_move.cpp @@ -576,27 +576,33 @@ void FixMove::initial_integrate(int vflag) if (xvarstr) { if (xvarstyle == EQUAL) dx = input->variable->compute_equal(xvar); - else input->variable->compute_atom(xvar,igroup,&displace[0][0],3,0); + else if (displace) + input->variable->compute_atom(xvar,igroup,&displace[0][0],3,0); } if (yvarstr) { if (yvarstyle == EQUAL) dy = input->variable->compute_equal(yvar); - else input->variable->compute_atom(yvar,igroup,&displace[0][1],3,0); + else if (displace) + input->variable->compute_atom(yvar,igroup,&displace[0][1],3,0); } if (zvarstr) { if (zvarstyle == EQUAL) dz = input->variable->compute_equal(zvar); - else input->variable->compute_atom(zvar,igroup,&displace[0][2],3,0); + else if (displace) + input->variable->compute_atom(zvar,igroup,&displace[0][2],3,0); } if (vxvarstr) { if (vxvarstyle == EQUAL) vx = input->variable->compute_equal(vxvar); - else input->variable->compute_atom(vxvar,igroup,&velocity[0][0],3,0); + else if (velocity) + input->variable->compute_atom(vxvar,igroup,&velocity[0][0],3,0); } if (vyvarstr) { if (vyvarstyle == EQUAL) vy = input->variable->compute_equal(vyvar); - else input->variable->compute_atom(vyvar,igroup,&velocity[0][1],3,0); + else if (velocity) + input->variable->compute_atom(vyvar,igroup,&velocity[0][1],3,0); } if (vzvarstr) { if (vzvarstyle == EQUAL) vz = input->variable->compute_equal(vzvar); - else input->variable->compute_atom(vzvar,igroup,&velocity[0][2],3,0); + else if (velocity) + input->variable->compute_atom(vzvar,igroup,&velocity[0][2],3,0); } modify->addstep_compute(update->ntimestep + 1); diff --git a/src/fix_setforce.cpp b/src/fix_setforce.cpp index d32c8145f2..0f137e87db 100644 --- a/src/fix_setforce.cpp +++ b/src/fix_setforce.cpp @@ -245,13 +245,13 @@ void FixSetForce::post_force(int vflag) modify->clearstep_compute(); if (xstyle == EQUAL) xvalue = input->variable->compute_equal(xvar); - else if (xstyle == ATOM) + else if (xstyle == ATOM && sforce) input->variable->compute_atom(xvar,igroup,&sforce[0][0],3,0); if (ystyle == EQUAL) yvalue = input->variable->compute_equal(yvar); - else if (ystyle == ATOM) + else if (ystyle == ATOM && sforce) input->variable->compute_atom(yvar,igroup,&sforce[0][1],3,0); if (zstyle == EQUAL) zvalue = input->variable->compute_equal(zvar); - else if (zstyle == ATOM) + else if (zstyle == ATOM && sforce) input->variable->compute_atom(zvar,igroup,&sforce[0][2],3,0); modify->addstep_compute(update->ntimestep + 1); diff --git a/src/velocity.cpp b/src/velocity.cpp index 77545a86fc..efef0c9653 100644 --- a/src/velocity.cpp +++ b/src/velocity.cpp @@ -465,13 +465,13 @@ void Velocity::set(int narg, char **arg) } else { if (xstyle == EQUAL) vx = input->variable->compute_equal(xvar); - else if (xstyle == ATOM) + else if (xstyle == ATOM && vfield) input->variable->compute_atom(xvar,igroup,&vfield[0][0],3,0); if (ystyle == EQUAL) vy = input->variable->compute_equal(yvar); - else if (ystyle == ATOM) + else if (ystyle == ATOM && vfield) input->variable->compute_atom(yvar,igroup,&vfield[0][1],3,0); if (zstyle == EQUAL) vz = input->variable->compute_equal(zvar); - else if (zstyle == ATOM) + else if (zstyle == ATOM && vfield) input->variable->compute_atom(zvar,igroup,&vfield[0][2],3,0); for (int i = 0; i < nlocal; i++) -- GitLab