From 67d474df2a5d97e4905bcd61355229af33bd0e76 Mon Sep 17 00:00:00 2001 From: Abdo Date: Wed, 5 Jul 2017 14:39:37 +0900 Subject: [PATCH] deleteing USER-EES --- src/USER-EES/README | 10 - src/USER-EES/fix_wall_ees.cpp | 207 -------------- src/USER-EES/fix_wall_ees.h | 51 ---- src/USER-EES/fix_wall_region_ees.cpp | 405 --------------------------- src/USER-EES/fix_wall_region_ees.h | 94 ------- src/USER-EES/install.sh | 34 --- 6 files changed, 801 deletions(-) delete mode 100644 src/USER-EES/README delete mode 100644 src/USER-EES/fix_wall_ees.cpp delete mode 100644 src/USER-EES/fix_wall_ees.h delete mode 100644 src/USER-EES/fix_wall_region_ees.cpp delete mode 100644 src/USER-EES/fix_wall_region_ees.h delete mode 100644 src/USER-EES/install.sh diff --git a/src/USER-EES/README b/src/USER-EES/README deleted file mode 100644 index 220c7fa203..0000000000 --- a/src/USER-EES/README +++ /dev/null @@ -1,10 +0,0 @@ -This package implements the EES potential between ellipsoidal particles and a semi finite LJ wall introduced by Babadi and Ejtehadi. - -This potential has fixes in both "fix wall" style and "fix wall/region" style so can be used as a boundary of simulation box or on the sides of a region inside the simulation box. - -The ASPHERE package is required for using this fixes. - -For more details please refer to documentation of LAMMPS under "fix wall/ees" entry. -There are also some example of using this code in /examples/usr/EES. - -This implementation is done by Abdoreza Ershadinia at Sharif University of Technology--Tehran (a.ershdinia@physics.sahrif.edu). diff --git a/src/USER-EES/fix_wall_ees.cpp b/src/USER-EES/fix_wall_ees.cpp deleted file mode 100644 index 8ccadf274a..0000000000 --- a/src/USER-EES/fix_wall_ees.cpp +++ /dev/null @@ -1,207 +0,0 @@ -/* ---------------------------------------------------------------------- - LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator - http://lammps.sandia.gov, Sandia National Laboratories - Steve Plimpton, sjplimp@sandia.gov - - Copyright (2003) Sandia Corporation. Under the terms of Contract - DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains - certain rights in this software. This software is distributed under - the GNU General Public License. - - See the README file in the top-level LAMMPS directory. -------------------------------------------------------------------------- */ - -#include "math.h" -#include "math_extra.h" -#include "fix_wall_ees.h" -#include "atom.h" -#include "atom_vec.h" -#include "atom_vec_ellipsoid.h" -#include "error.h" - -using namespace LAMMPS_NS; -using namespace FixConst; - -/* ---------------------------------------------------------------------- */ - -FixWallEES::FixWallEES(LAMMPS *lmp, int narg, char **arg) : - FixWall(lmp, narg, arg) {} - -/* ---------------------------------------------------------------------- */ - -void FixWallEES::precompute(int m) -{ - coeff1[m] = ( 2. / 4725. ) * epsilon[m] * pow(sigma[m],12.0); - coeff2[m] = ( 1. / 24. ) * epsilon[m] * pow(sigma[m],6.0); - - coeff3[m] = ( 2. / 315. ) * epsilon[m] * pow(sigma[m],12.0); - coeff4[m] = ( 1. / 3. ) * epsilon[m] * pow(sigma[m],6.0); - - coeff5[m] = ( 4. / 315. ) * epsilon[m] * pow(sigma[m],12.0); - coeff6[m] = ( 1. / 12. ) * epsilon[m] * pow(sigma[m],6.0); -} - -/* ---------------------------------------------------------------------- */ -void FixWallEES::init() -{ - avec = (AtomVecEllipsoid *) atom->style_match("ellipsoid"); - if (!avec) - error->all(FLERR,"Fix wall/ees requires atom style ellipsoid"); - - // check that all particles are finite-size ellipsoids - // no point particles allowed, spherical is OK - - int *ellipsoid = atom->ellipsoid; - int *mask = atom->mask; - int nlocal = atom->nlocal; - - for (int i = 0; i < nlocal; i++) - if (mask[i] & groupbit) - if (ellipsoid[i] < 0) - error->one(FLERR,"Fix wall/ees requires extended particles"); - - FixWall::init(); -} - - -/* ---------------------------------------------------------------------- - interaction of all particles in group with a wall - m = index of wall coeffs - which = xlo,xhi,ylo,yhi,zlo,zhi - error if any particle is on or behind wall -------------------------------------------------------------------------- */ - -void FixWallEES::wall_particle(int m, int which, double coord) -{ - double delta; - - double **x = atom->x; - double **f = atom->f; - double **tor = atom->torque; - - - avec = (AtomVecEllipsoid *) atom->style_match("ellipsoid"); - AtomVecEllipsoid::Bonus *bonus = avec->bonus; - int *ellipsoid = atom->ellipsoid; - int *mask = atom->mask; - int nlocal = atom->nlocal; - - - int dim = which / 2; - int side = which % 2; - if (side == 0) side = -1; - - int onflag = 0; - - for (int i = 0; i < nlocal; i++) - if (mask[i] & groupbit) { - - if (side < 0) - delta = x[i][dim] - coord; - else - delta = coord - x[i][dim]; - - if (delta >= cutoff[m]) - continue; - - double A[3][3] = {{0,0,0},{0,0,0},{0,0,0}}; - double tempvec[3]= {0,0,0}; - double sigman = 0.0, sigman2 = 0.0; - double nhat[3] = {0,0,0}; - - nhat[dim]=-1*side; - nhat[(dim+1)%3] = 0 ; - nhat[(dim+2)%3] = 0 ; - - - double* shape = bonus[ellipsoid[i]].shape;; - MathExtra::quat_to_mat(bonus[ellipsoid[i]].quat,A); - MathExtra::transpose_matvec(A,nhat,tempvec); - for(int k = 0; k<3; k++) tempvec[k] *= shape[k]; - for(int k = 0; k<3 ; k++) sigman2 += tempvec[k]*tempvec[k]; - sigman = sqrt(sigman2); - - if (delta <= sigman) { - onflag = 1; - continue; - } - - - double fwall = 0.0, twall = 0.0; - double delta2 = 0.0, delta3 = 0.0, delta4 = 0.0, delta5 = 0.0, delta6 = 0.0; - double sigman3 = 0.0, sigman4 = 0.0, sigman5 = 0.0, sigman6 = 0.0; - double hhss = 0.0, hhss2 = 0.0, hhss4 = 0.0, hhss7 = 0.0, hhss8 = 0.0; - double hps = 0.0; - double hms = 0.0; - - double tempvec2[3]= {0,0,0}; - - double SAn[3] = {0,0,0}; - double that[3] = {0,0,0}; - - double Lx[3][3] = {{0,0,0},{0,0,-1},{0,1,0}}; - double Ly[3][3] = {{0,0,1},{0,0,0},{-1,0,0}}; - double Lz[3][3] = {{0,-1,0},{1,0,0},{0,0,0}}; - - - for(int k = 0; k<3; k++) SAn[k] = tempvec[k]; - - sigman3 = sigman2 * sigman; - sigman4 = sigman2 * sigman2; - sigman5 = sigman4 * sigman; - sigman6 = sigman3 * sigman3; - - - delta2 = delta * delta; - delta3 = delta2 * delta; - delta4 = delta2 * delta2; - delta5 = delta3 * delta2; - delta6 = delta3 * delta3; - - hhss = delta2 - sigman2; - hhss2 = hhss * hhss; - hhss4 = hhss2 * hhss2; - hhss8 = hhss4 * hhss4; - hhss7 = hhss4 * hhss2 * hhss; - - hps = delta + sigman; - hms = delta - sigman; - - fwall = side*( - -1*coeff4[m]/hhss2 + - coeff3[m] * ( 21*delta6 + 63*delta4*sigman2 + 27*delta2*sigman4 + sigman6 ) / hhss8 - ); - f[i][dim] -= fwall; - - ewall[0] += -1*coeff2[m] * ( 4*delta/sigman2/hhss + 2*log(hms/hps)/sigman3 ) + - coeff1[m] * ( 35*delta5 + 70*delta3*sigman2 + 15*delta*sigman4 ) / hhss7; - - ewall[m+1] += fwall; - - twall = coeff6[m] * ( 6.*delta3/sigman4/hhss2 - 10.*delta/sigman2/hhss2 + 3.*log(hms/hps)/sigman5 ) + - coeff5[m] * ( 21.*delta5 + 30.*delta3*sigman2 + 5.*delta*sigman4 ) / hhss8 ; - - - MathExtra::matvec(Lx,nhat,tempvec); - MathExtra::transpose_matvec(A,tempvec,tempvec2); - for(int k = 0; k<3; k++) tempvec2[k] *= shape[k]; - that[0] = MathExtra::dot3(SAn,tempvec2); - - MathExtra::matvec(Ly,nhat,tempvec); - MathExtra::transpose_matvec(A,tempvec,tempvec2); - for(int k = 0; k<3; k++) tempvec2[k] *= shape[k]; - that[1] = MathExtra::dot3(SAn,tempvec2); - - MathExtra::matvec(Lz,nhat,tempvec); - MathExtra::transpose_matvec(A,tempvec,tempvec2); - for(int k = 0; k < 3; k++) tempvec2[k] *= shape[k]; - that[2] = MathExtra::dot3(SAn,tempvec2); - - - for(int j = 0; j<3 ; j++) - tor[i][j] += twall * that[j]; - - } - - if (onflag) error->one(FLERR,"Particle on or inside fix wall surface"); -} diff --git a/src/USER-EES/fix_wall_ees.h b/src/USER-EES/fix_wall_ees.h deleted file mode 100644 index 17246c094f..0000000000 --- a/src/USER-EES/fix_wall_ees.h +++ /dev/null @@ -1,51 +0,0 @@ -/* -*- c++ -*- ---------------------------------------------------------- - LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator - http://lammps.sandia.gov, Sandia National Laboratories - Steve Plimpton, sjplimp@sandia.gov - - Copyright (2003) Sandia Corporation. Under the terms of Contract - DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains - certain rights in this software. This software is distributed under - the GNU General Public License. - - See the README file in the top-level LAMMPS directory. -------------------------------------------------------------------------- */ - -#ifdef FIX_CLASS - -FixStyle(wall/ees,FixWallEES) - -#else - -#ifndef LMP_FIX_WALL_EES_H -#define LMP_FIX_WALL_EES_H - -#include "fix_wall.h" - -namespace LAMMPS_NS { - -class FixWallEES : public FixWall { - public: - FixWallEES(class LAMMPS *, int, char **); - void precompute(int); - void init(); - void wall_particle(int, int, double); - - private: - double coeff1[6],coeff2[6],coeff3[6],coeff4[6],coeff5[6],coeff6[6]; - class AtomVecEllipsoid *avec; -}; - -} - -#endif -#endif - -/* ERROR/WARNING messages: - -E: Particle on or inside fix wall surface - -Particles must be "exterior" to the wall in order for energy/force to -be calculated. - -*/ diff --git a/src/USER-EES/fix_wall_region_ees.cpp b/src/USER-EES/fix_wall_region_ees.cpp deleted file mode 100644 index 20a5f74c15..0000000000 --- a/src/USER-EES/fix_wall_region_ees.cpp +++ /dev/null @@ -1,405 +0,0 @@ -/* -*- c++ -*- ---------------------------------------------------------- - LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator - http://lammps.sandia.gov, Sandia National Laboratories - Steve Plimpton, sjplimp@sandia.gov - - Copyright (2003) Sandia Corporation. Under the terms of Contract - DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains - certain rights in this software. This software is distributed under - the GNU General Public License. - - See the README file in the top-level LAMMPS directory. -------------------------------------------------------------------------- */ -#include -#include "math.h" -#include "stdlib.h" -#include "string.h" -#include "fix_wall_region_ees.h" -#include "atom.h" -#include "atom_vec.h" -#include "atom_vec_ellipsoid.h" -#include "domain.h" -#include "region.h" -#include "force.h" -#include "lattice.h" -#include "update.h" -#include "output.h" -#include "respa.h" -#include "error.h" -#include "math_extra.h" - -using namespace LAMMPS_NS; -using namespace FixConst; - -enum{LJ93,LJ126,COLLOID,HARMONIC,EES};//me - -/* ---------------------------------------------------------------------- */ -/// USAGE: -/// fix ID group-ID wall/region/ees region-ID epsilon sigma cutoff -/// -FixWallRegionEES::FixWallRegionEES(LAMMPS *lmp, int narg, char **arg) : - Fix(lmp, narg, arg) -{ - if (narg != 7) error->all(FLERR,"Illegal fix wall/region/ees command"); - scalar_flag = 1; - vector_flag = 1; - size_vector = 3; - global_freq = 1; - extscalar = 1; - extvector = 1; - - // parse args - - iregion = domain->find_region(arg[3]); - if (iregion == -1) - error->all(FLERR,"Region ID for fix wall/region/ees does not exist"); - int n = strlen(arg[3]) + 1; - idregion = new char[n]; - strcpy(idregion,arg[3]); - - - - epsilon = force->numeric(FLERR,arg[4]); - sigma = force->numeric(FLERR,arg[5]); - cutoff = force->numeric(FLERR,arg[6]); - - if (cutoff <= 0.0) error->all(FLERR,"Fix wall/region/ees cutoff <= 0.0"); - - eflag = 0; - ewall[0] = ewall[1] = ewall[2] = ewall[3] = 0.0; -} - -/* ---------------------------------------------------------------------- */ - -FixWallRegionEES::~FixWallRegionEES() -{ - delete [] idregion; -} - -/* ---------------------------------------------------------------------- */ - -int FixWallRegionEES::setmask() -{ - int mask = 0; - mask |= POST_FORCE; - mask |= THERMO_ENERGY; - mask |= POST_FORCE_RESPA; - mask |= MIN_POST_FORCE; - return mask; -} - -/* ---------------------------------------------------------------------- */ - -void FixWallRegionEES::init() -{ - // set index and check validity of region - - iregion = domain->find_region(idregion); - if (iregion == -1) - error->all(FLERR,"Region ID for fix wall/region/ees does not exist"); - - - avec = (AtomVecEllipsoid *) atom->style_match("ellipsoid"); - if (!avec) - error->all(FLERR,"Fix wall/region/ees requires atom style ellipsoid"); - - // check that all particles are finite-size ellipsoids - // no point particles allowed, spherical is OK - - int *ellipsoid = atom->ellipsoid; - int *mask = atom->mask; - int nlocal = atom->nlocal; - - for (int i = 0; i < nlocal; i++) - if (mask[i] & groupbit) - if (ellipsoid[i] < 0) - error->one(FLERR,"Fix wall/region/ees requires extended particles"); - - - // setup coefficients for each style - - coeff1 = ( 2. / 4725. ) * epsilon * pow(sigma,12.0); - coeff2 = ( 1. / 24. ) * epsilon * pow(sigma,6.0); - coeff3 = ( 2. / 315. ) * epsilon * pow(sigma,12.0); - coeff4 = ( 1. / 3. ) * epsilon * pow(sigma,6.0); - coeff5 = ( 4. / 315. ) * epsilon * pow(sigma,12.0); - coeff6 = ( 1. / 12. ) * epsilon * pow(sigma,6.0); - offset = 0; - - - if (strstr(update->integrate_style,"respa")) - nlevels_respa = ((Respa *) update->integrate)->nlevels; -} - -/* ---------------------------------------------------------------------- */ - -void FixWallRegionEES::setup(int vflag) -{ - if (strstr(update->integrate_style,"verlet")) - post_force(vflag); - else { - ((Respa *) update->integrate)->copy_flevel_f(nlevels_respa-1); - post_force_respa(vflag,nlevels_respa-1,0); - ((Respa *) update->integrate)->copy_f_flevel(nlevels_respa-1); - } -} - -/* ---------------------------------------------------------------------- */ - -void FixWallRegionEES::min_setup(int vflag) -{ - post_force(vflag); -} - -/* ---------------------------------------------------------------------- */ - -void FixWallRegionEES::post_force(int vflag) -{ - //me - //sth is needed here, but I dont know what - //that is calculation of sn - - int i,m,n; - double rinv,fx,fy,fz,tooclose[3];//me - double sn;//me - - eflag = 0; - ewall[0] = ewall[1] = ewall[2] = ewall[3] = 0.0; - - double **x = atom->x; - double **f = atom->f; - double *radius = atom->radius; - - double **tor = atom->torque; //me - - //avec = (AtomVecEllipsoid *) atom->style_match("ellipsoid");//me - AtomVecEllipsoid::Bonus *bonus = avec->bonus;//me - int *ellipsoid = atom->ellipsoid;//me - - int *mask = atom->mask; - int nlocal = atom->nlocal; - - Region *region = domain->regions[iregion]; - region->prematch(); - - int onflag = 0; - - // region->match() insures particle is in region or on surface, else error - // if returned contact dist r = 0, is on surface, also an error - // in COLLOID case, r <= radius is an error - - for (i = 0; i < nlocal; i++) - if (mask[i] & groupbit) { - if (!region->match(x[i][0],x[i][1],x[i][2])) { - onflag = 1; - continue; - } - - double A[3][3] = {{0,0,0},{0,0,0},{0,0,0}}; - double tempvec[3]= {0,0,0}; - double sn2 = 0.0; - double nhat[3] = {0,0,0}; - double* shape = bonus[ellipsoid[i]].shape;; - MathExtra::quat_to_mat(bonus[ellipsoid[i]].quat,A); - - for(int which = 0 ; which < 3; which ++){//me - nhat[which]=1; - nhat[(which+1)%3] = 0 ; - nhat[(which+2)%3] = 0 ; - sn2 = 0 ; - MathExtra::transpose_matvec(A,nhat,tempvec); - for(int k = 0; k<3; k++) tempvec[k] *= shape[k]; - for(int k = 0; k<3 ; k++) sn2 += tempvec[k]*tempvec[k]; - sn = sqrt(sn2); - tooclose[which] = sn; - } - - - - n = region->surface(x[i][0],x[i][1],x[i][2],cutoff); - - for (m = 0; m < n; m++) { - - if(region->contact[m].delx != 0 && region->contact[m].r <= tooclose[0] ){ - onflag = 1; - continue; - - }else if (region->contact[m].dely != 0 && region->contact[m].r <= tooclose[1]){ - onflag = 1; - continue; - }else if (region->contact[m].delz !=0 && region->contact[m].r <= tooclose[2]){ - onflag = 1; - continue; - } - else rinv = 1.0/region->contact[m].r; - - ees(m,i);//me - - ewall[0] += eng; - fx = fwall * region->contact[m].delx * rinv; - fy = fwall * region->contact[m].dely * rinv; - fz = fwall * region->contact[m].delz * rinv; - f[i][0] += fx; - f[i][1] += fy; - f[i][2] += fz; - - ewall[1] -= fx; - ewall[2] -= fy; - ewall[3] -= fz; - - tor[i][0] += torque[0]; - tor[i][1] += torque[1]; - tor[i][2] += torque[2]; - - } - } - - if (onflag) error->one(FLERR,"Particle on or inside surface of region " - "used in fix wall/region/ees"); -} - -/* ---------------------------------------------------------------------- */ - -void FixWallRegionEES::post_force_respa(int vflag, int ilevel, int iloop) -{ - if (ilevel == nlevels_respa-1) post_force(vflag); -} - -/* ---------------------------------------------------------------------- */ - -void FixWallRegionEES::min_post_force(int vflag) -{ - post_force(vflag); -} - -/* ---------------------------------------------------------------------- - energy of wall interaction -------------------------------------------------------------------------- */ - -double FixWallRegionEES::compute_scalar() -{ - // only sum across procs one time - - if (eflag == 0) { - MPI_Allreduce(ewall,ewall_all,4,MPI_DOUBLE,MPI_SUM,world); - eflag = 1; - } - return ewall_all[0]; -} - -/* ---------------------------------------------------------------------- - components of force on wall -------------------------------------------------------------------------- */ - -double FixWallRegionEES::compute_vector(int n) -{ - // only sum across procs one time - - if (eflag == 0) { - MPI_Allreduce(ewall,ewall_all,4,MPI_DOUBLE,MPI_SUM,world); - eflag = 1; - } - return ewall_all[n+1]; -} - - - -//me -/* ---------------------------------------------------------------------- - EES interaction for ellipsoid particle with wall - compute eng and fwall and twall = magnitude of wall force and torque -------------------------------------------------------------------------- */ - -void FixWallRegionEES::ees(int m, int i) -{ - Region *region = domain->regions[iregion]; - region->prematch(); - - double delta = 0.0, delta2 = 0.0, delta3 = 0.0, delta4 = 0.0, delta5 = 0.0, delta6 = 0.0; - double sigman = 0.0, sigman2 = 0.0 , sigman3 = 0.0, sigman4 = 0.0, sigman5 = 0.0, sigman6 = 0.0; - double hhss = 0.0, hhss2 = 0.0, hhss4 = 0.0, hhss7 = 0.0, hhss8 = 0.0; //h^2 - s_n^2 - double hps = 0.0; //h+s_n - double hms = 0.0; //h-s_n - double twall = 0.0; - double tempvec[3]={0,0,0}; - double tempvec2[3]= {0,0,0}; - - double SAn[3] = {0,0,0}; - double that[3] = {0,0,0}; - - double Lx[3][3] = {{0,0,0},{0,0,-1},{0,1,0}}; - double Ly[3][3] = {{0,0,1},{0,0,0},{-1,0,0}}; - double Lz[3][3] = {{0,-1,0},{1,0,0},{0,0,0}}; - - double A[3][3] = {{0,0,0},{0,0,0},{0,0,0}}; - double nhat[3] = {0,0,0}; - - nhat[0] = region->contact[m].delx / region->contact[m].r; - nhat[1] = region->contact[m].dely / region->contact[m].r; - nhat[2] = region->contact[m].delz / region->contact[m].r; - - //avec = (AtomVecEllipsoid *) atom->style_match("ellipsoid"); - AtomVecEllipsoid::Bonus *bonus = avec->bonus; - int *ellipsoid = atom->ellipsoid;//me - - double* shape = bonus[ellipsoid[i]].shape;; - MathExtra::quat_to_mat(bonus[ellipsoid[i]].quat,A); - - MathExtra::transpose_matvec(A,nhat,tempvec); - for(int k = 0; k<3; k++) tempvec[k] *= shape[k]; - for(int k = 0; k<3 ; k++) sigman2 += tempvec[k]*tempvec[k]; - for(int k = 0; k<3; k++) SAn[k] = tempvec[k]; - - - sigman = sqrt(sigman2); - delta = fabs(region->contact[m].r); - - sigman3 = sigman2 * sigman; - sigman4 = sigman2 * sigman2; - sigman5 = sigman4 * sigman; - sigman6 = sigman3 * sigman3; - - delta2 = delta * delta; - delta3 = delta2 * delta; - delta4 = delta2 * delta2; - delta5 = delta3 * delta2; - delta6 = delta3 * delta3; - - hhss = delta2 - sigman2; - hhss2 = hhss * hhss; - hhss4 = hhss2 * hhss2; - hhss8 = hhss4 * hhss4; - hhss7 = hhss4 * hhss2 * hhss; - - hps = delta + sigman; - hms = delta - sigman; - - fwall = -1*coeff4/hhss2 + - coeff3 * ( 21*delta6 + 63*delta4*sigman2 + 27*delta2*sigman4 + sigman6 ) / hhss8 - ; - - eng = -1*coeff2 * ( 4*delta/sigman2/hhss + 2*log(hms/hps)/sigman3 ) + - coeff1 * ( 35*delta5 + 70*delta3*sigman2 + 15*delta*sigman4 ) / hhss7; - - twall = coeff6 * ( 6.*delta3/sigman4/hhss2 - 10.*delta/sigman2/hhss2 + 3.*log(hms/hps)/sigman5 ) + - coeff5 * ( 21.*delta5 + 30.*delta3*sigman2 + 5.*delta*sigman4 ) / hhss8 ; - - MathExtra::matvec(Lx,nhat,tempvec); - MathExtra::transpose_matvec(A,tempvec,tempvec2); - for(int k = 0; k<3; k++) tempvec2[k] *= shape[k]; - that[0] = MathExtra::dot3(SAn,tempvec2); - - MathExtra::matvec(Ly,nhat,tempvec); - MathExtra::transpose_matvec(A,tempvec,tempvec2); - for(int k = 0; k<3; k++) tempvec2[k] *= shape[k]; - that[1] = MathExtra::dot3(SAn,tempvec2); - - MathExtra::matvec(Lz,nhat,tempvec); - MathExtra::transpose_matvec(A,tempvec,tempvec2); - for(int k = 0; k < 3; k++) tempvec2[k] *= shape[k]; - that[2] = MathExtra::dot3(SAn,tempvec2); - - for(int j = 0; j<3 ; j++) - torque[j] = twall * that[j]; - -} diff --git a/src/USER-EES/fix_wall_region_ees.h b/src/USER-EES/fix_wall_region_ees.h deleted file mode 100644 index 59679a0b41..0000000000 --- a/src/USER-EES/fix_wall_region_ees.h +++ /dev/null @@ -1,94 +0,0 @@ -/* -*- c++ -*- ---------------------------------------------------------- - LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator - http://lammps.sandia.gov, Sandia National Laboratories - Steve Plimpton, sjplimp@sandia.gov - - Copyright (2003) Sandia Corporation. Under the terms of Contract - DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains - certain rights in this software. This software is distributed under - the GNU General Public License. - - See the README file in the top-level LAMMPS directory. -------------------------------------------------------------------------- */ - -#ifdef FIX_CLASS - -FixStyle(wall/region/ees,FixWallRegionEES) - -#else - -#ifndef LMP_FIX_WALL_REGION_EES_H -#define LMP_FIX_WALL_REGION_EES_H - -#include "fix.h" - - -namespace LAMMPS_NS { - -class FixWallRegionEES : public Fix { - public: - FixWallRegionEES(class LAMMPS *, int, char **); - ~FixWallRegionEES(); - int setmask(); - void init(); - void setup(int); - void min_setup(int); - void post_force(int); - void post_force_respa(int, int, int); - void min_post_force(int); - double compute_scalar(); - double compute_vector(int); - - private: - class AtomVecEllipsoid *avec;//me - - int iregion; - double epsilon,sigma,cutoff; - int eflag; - double ewall[4],ewall_all[4]; - int nlevels_respa; - char *idregion; - - double coeff1,coeff2,coeff3,coeff4,offset; - double coeff5, coeff6;//me - double eng,fwall; - double torque[3];//me - - void ees(int, int);//me -}; - -} - -#endif -#endif - -/* ERROR/WARNING messages: - -E: Illegal ... command - -Self-explanatory. Check the input script syntax and compare to the -documentation for the command. You can use -echo screen as a -command-line option when running LAMMPS to see the offending line. - -E: Region ID for fix wall/region/ees does not exist - -Self-explanatory. - -E: Fix wall/region/ees cutoff <= 0.0 - -Self-explanatory. - -E: Fix wall/region/ees colloid requires atom style sphere - -Self-explanatory. - -E: Fix wall/region/ees colloid requires extended particles - -One of the particles has radius 0.0. - -E: Particle on or inside surface of region used in fix wall/region - -Particles must be "exterior" to the region surface in order for -energy/force to be calculated. - -*/ diff --git a/src/USER-EES/install.sh b/src/USER-EES/install.sh deleted file mode 100644 index 6163d56ad4..0000000000 --- a/src/USER-EES/install.sh +++ /dev/null @@ -1,34 +0,0 @@ -# Install/unInstall package files in LAMMPS -# mode = 0/1/2 for uninstall/install/update - -mode=$1 - -# enforce using portable C locale -LC_ALL=C -export LC_ALL - -# arg1 = file, arg2 = file it depends on - -action () { - if (test $mode = 0) then - rm -f ../$1 - elif (! cmp -s $1 ../$1) then - if (test -z "$2" || test -e ../$2) then - cp $1 .. - if (test $mode = 2) then - echo " updating src/$1" - fi - fi - elif (test -n "$2") then - if (test ! -e ../$2) then - rm -f ../$1 - fi - fi -} - -# all package files with dependencies - -action fix_wall_ees.cpp -action fix_wall_ees.h -action fix_wall_region_ees.cpp -action fix_wall_region_ees.h