git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@13127 f3b2605a-c512-4ea7-a41b-209d697bcdaa

This commit is contained in:
sjplimp 2015-02-19 18:23:31 +00:00
parent 067833cf07
commit 00834f6d84
25 changed files with 44 additions and 66 deletions

View File

@ -370,7 +370,7 @@ void FixPour::init()
void FixPour::pre_exchange()
{
int i,j,m,flag,nlocalprev,imol,natom;
int i,m,flag,nlocalprev,imol,natom;
double r[3],rotmat[3][3],quat[4],vnew[3];
double *newcoord;

View File

@ -558,7 +558,6 @@ int FixAtomSwap::pick_j_swap_atom()
void FixAtomSwap::update_semi_grand_atoms_list()
{
int nlocal = atom->nlocal;
int *type = atom->type;
double **x = atom->x;
if (nlocal > atom_swap_nmax) {

View File

@ -1077,9 +1077,6 @@ void FixGCMC::attempt_molecule_insertion()
tagint maxtag_all;
MPI_Allreduce(&maxtag,&maxtag_all,1,MPI_LMP_TAGINT,MPI_MAX,world);
int nfix = modify->nfix;
Fix **fix = modify->fix;
int nlocalprev = atom->nlocal;
double vnew[3];
@ -1634,9 +1631,6 @@ void FixGCMC::attempt_molecule_insertion_full()
tagint maxtag_all;
MPI_Allreduce(&maxtag,&maxtag_all,1,MPI_LMP_TAGINT,MPI_MAX,world);
int nfix = modify->nfix;
Fix **fix = modify->fix;
int nlocalprev = atom->nlocal;
double com_coord[3];

View File

@ -257,7 +257,7 @@ void FixDeposit::init()
void FixDeposit::pre_exchange()
{
int i,j,m,n,nlocalprev,imol,natom,flag,flagall;
int i,m,n,nlocalprev,imol,natom,flag,flagall;
double coord[3],lamda[3],delx,dely,delz,rsq;
double r[3],vnew[3],rotmat[3][3],quat[4];
double *newcoord;

View File

@ -580,13 +580,14 @@ double FixQEq::parallel_norm( double *v, int n )
ilist = list->ilist;
my_sum = 0.0;
for( ii = 0; ii < n; ++ii ) {
i = ilist[ii];
if (atom->mask[i] & groupbit)
my_sum += v[i]*v[i];
}
MPI_Allreduce( &my_sum, &norm_sqr, 1, MPI_DOUBLE, MPI_SUM, world );
MPI_Allreduce(&my_sum, &norm_sqr, 1, MPI_DOUBLE, MPI_SUM, world);
return sqrt( norm_sqr );
}

View File

@ -933,7 +933,6 @@ void FixRigidSmall::pre_neighbor()
void FixRigidSmall::image_shift()
{
int ibody;
imageint tdim,bdim,xdim[3];
imageint *image = atom->image;

View File

@ -571,7 +571,7 @@ void Cuda::checkResize()
cu_atom->mass_host = atom->mass;
if(atom->map_style == 1) {
if((cu_map_array == NULL)) {
if(cu_map_array == NULL) {
cu_map_array = new cCudaData<int, int, x > (atom->get_map_array() , & cu_atom->map_array , atom->get_map_size());
} else if(cu_map_array->dev_size() / sizeof(int) < atom->get_map_size()) {
delete cu_map_array;

View File

@ -57,7 +57,6 @@ class FixAveForceCuda : public Fix {
double foriginal_all[4];
double foriginal[4];
cCudaData<double , F_CFLOAT , x>* cu_foriginal;
int nlevels_respa;
int varflag;
int xvar,yvar,zvar,xstyle,ystyle,zstyle;

View File

@ -96,9 +96,7 @@ class FixShakeCuda : public Fix {
cCudaData<double , X_CFLOAT , xy >* cu_xshake;
cCudaData<int , int , xx >* cu_list;
cCudaData<double , ENERGY_CFLOAT , xx >* cu_virial;
int* countoccur;
int vflag; // virial flag
double dtv,dtfsq; // timesteps for trial move
double dtf_inner,dtf_innerhalf; // timesteps for rRESPA trial move

View File

@ -17,6 +17,7 @@
#include "math.h"
#include "string.h"
#include "stdlib.h"
#include "compute_ke_atom_eff.h"
#include "atom.h"
#include "update.h"
@ -98,7 +99,7 @@ void ComputeKEAtomEff::compute_peratom()
if (mask[i] & groupbit) {
ke[i] = 0.5 * mvv2e * mass[type[i]] *
(v[i][0]*v[i][0] + v[i][1]*v[i][1] + v[i][2]*v[i][2]);
if (fabs(spin[i])==1)
if (abs(spin[i])==1)
ke[i] += 0.5 * mvv2e * mefactor * mass[type[i]] * ervel[i]*ervel[i];
} else ke[i] = 0.0;
}

View File

@ -17,6 +17,7 @@
#include "mpi.h"
#include "math.h"
#include "stdlib.h"
#include "compute_ke_eff.h"
#include "atom.h"
#include "update.h"
@ -72,7 +73,7 @@ double ComputeKEEff::compute_scalar()
if (mask[i] & groupbit) {
ke += mass[type[i]]*(v[i][0]*v[i][0] + v[i][1]*v[i][1] +
v[i][2]*v[i][2]);
if (fabs(spin[i])==1) ke += mefactor*mass[type[i]]*ervel[i]*ervel[i];
if (abs(spin[i])==1) ke += mefactor*mass[type[i]]*ervel[i]*ervel[i];
}
}

View File

@ -18,6 +18,7 @@
#include "mpi.h"
#include "math.h"
#include "string.h"
#include "stdlib.h"
#include "compute_temp_deform_eff.h"
#include "domain.h"
#include "atom.h"
@ -113,7 +114,7 @@ void ComputeTempDeformEff::dof_compute()
int one = 0;
for (int i = 0; i < nlocal; i++)
if (mask[i] & groupbit) {
if (fabs(spin[i]) == 1) one++;
if (abs(spin[i]) == 1) one++;
}
int nelectrons;
MPI_Allreduce(&one,&nelectrons,1,MPI_INT,MPI_SUM,world);
@ -166,7 +167,7 @@ double ComputeTempDeformEff::compute_scalar()
if (mass) {
t += (vthermal[0]*vthermal[0] + vthermal[1]*vthermal[1] +
vthermal[2]*vthermal[2])* mass[type[i]];
if (fabs(spin[i])==1) t += mefactor*mass[type[i]]*ervel[i]*ervel[i];
if (abs(spin[i])==1) t += mefactor*mass[type[i]]*ervel[i]*ervel[i];
}
}
@ -218,7 +219,7 @@ void ComputeTempDeformEff::compute_vector()
t[3] += massone * vthermal[0]*vthermal[1];
t[4] += massone * vthermal[0]*vthermal[2];
t[5] += massone * vthermal[1]*vthermal[2];
if (fabs(spin[i])==1) {
if (abs(spin[i])==1) {
t[0] += mefactor * massone * ervel[i]*ervel[i];
t[1] += mefactor * massone * ervel[i]*ervel[i];
t[2] += mefactor * massone * ervel[i]*ervel[i];

View File

@ -18,6 +18,7 @@
#include "mpi.h"
#include "math.h"
#include "string.h"
#include "stdlib.h"
#include "compute_temp_eff.h"
#include "atom.h"
#include "update.h"
@ -78,7 +79,7 @@ void ComputeTempEff::dof_compute()
int one = 0;
for (int i = 0; i < nlocal; i++)
if (mask[i] & groupbit) {
if (fabs(spin[i])==1) one++;
if (abs(spin[i])==1) one++;
}
int nelectrons;
MPI_Allreduce(&one,&nelectrons,1,MPI_INT,MPI_SUM,world);
@ -113,7 +114,7 @@ double ComputeTempEff::compute_scalar()
if (mask[i] & groupbit) {
t += (v[i][0]*v[i][0] + v[i][1]*v[i][1] + v[i][2]*v[i][2]) *
mass[type[i]];
if (fabs(spin[i])==1) t += mefactor*mass[type[i]]*ervel[i]*ervel[i];
if (abs(spin[i])==1) t += mefactor*mass[type[i]]*ervel[i]*ervel[i];
}
}
}
@ -153,7 +154,7 @@ void ComputeTempEff::compute_vector()
t[3] += massone * v[i][0]*v[i][1];
t[4] += massone * v[i][0]*v[i][2];
t[5] += massone * v[i][1]*v[i][2];
if (fabs(spin[i])==1) {
if (abs(spin[i])==1) {
t[0] += mefactor*massone*ervel[i]*ervel[i];
t[1] += mefactor*massone*ervel[i]*ervel[i];
t[2] += mefactor*massone*ervel[i]*ervel[i];

View File

@ -18,6 +18,7 @@
#include "mpi.h"
#include "math.h"
#include "string.h"
#include "stdlib.h"
#include "compute_temp_region_eff.h"
#include "atom.h"
#include "update.h"
@ -134,7 +135,7 @@ double ComputeTempRegionEff::compute_scalar()
count++;
t += (v[i][0]*v[i][0] + v[i][1]*v[i][1] + v[i][2]*v[i][2]) *
mass[type[i]];
if (fabs(spin[i])==1) {
if (abs(spin[i])==1) {
t += mefactor*mass[type[i]]*ervel[i]*ervel[i];
ecount++;
}
@ -151,7 +152,7 @@ double ComputeTempRegionEff::compute_scalar()
int one = 0;
for (int i = 0; i < nlocal; i++)
if (mask[i] & groupbit && region->match(x[i][0],x[i][1],x[i][2])) {
if (fabs(spin[i])==1) one++;
if (abs(spin[i])==1) one++;
}
if (dof > 0) scalar = force->mvv2e * tarray_all[1] / (dof * force->boltz);
@ -194,7 +195,7 @@ void ComputeTempRegionEff::compute_vector()
t[4] += massone * v[i][0]*v[i][2];
t[5] += massone * v[i][1]*v[i][2];
if (fabs(spin[i])==1) {
if (abs(spin[i])==1) {
t[0] += mefactor * massone * ervel[i]*ervel[i];
t[1] += mefactor * massone * ervel[i]*ervel[i];
t[2] += mefactor * massone * ervel[i]*ervel[i];

View File

@ -151,7 +151,7 @@ void FixLangevinEff::post_force_no_tally()
int one = 0;
for (int i = 0; i < nlocal; i++)
if (mask[i] & groupbit) {
if (fabs(spin[i])==1) one++;
if (abs(spin[i])==1) one++;
}
int nelectrons, dofelectrons, dofnuclei;
MPI_Allreduce(&one,&nelectrons,1,MPI_INT,MPI_SUM,world);
@ -177,7 +177,7 @@ void FixLangevinEff::post_force_no_tally()
fsum[0] += fran[0];
fsum[1] += fran[1];
fsum[2] += fran[2];
if (fabs(spin[i])==1) {
if (abs(spin[i])==1) {
fran[3] = sqrtmefactor*gamma2*(random->uniform()-0.5);
erforce[i] += mefactor*gamma1*ervel[i]+fran[3];
fsum[3] += fran[3];
@ -204,7 +204,7 @@ void FixLangevinEff::post_force_no_tally()
fsum[0] += fran[0];
fsum[1] += fran[1];
fsum[2] += fran[2];
if (fabs(spin[i])==1) {
if (abs(spin[i])==1) {
fran[3] = sqrtmefactor*gamma2*(random->uniform()-0.5);
if (ervel[i] != 0.0) erforce[i] += mefactor*gamma1*ervel[i]+fran[3];
fsum[3] += fran[3];
@ -227,7 +227,7 @@ void FixLangevinEff::post_force_no_tally()
f[i][0] -= fsumall[0];
f[i][1] -= fsumall[1];
f[i][2] -= fsumall[2];
if (fabs(spin[i])==1) erforce[i] -= fsumall[3];
if (abs(spin[i])==1) erforce[i] -= fsumall[3];
}
}
}
@ -320,7 +320,7 @@ void FixLangevinEff::post_force_tally()
int one = 0;
for (int i = 0; i < nlocal; i++)
if (mask[i] & groupbit) {
if (fabs(spin[i])==1) one++;
if (abs(spin[i])==1) one++;
}
int nelectrons, dofelectrons, dofnuclei;
MPI_Allreduce(&one,&nelectrons,1,MPI_INT,MPI_SUM,world);
@ -343,7 +343,7 @@ void FixLangevinEff::post_force_tally()
f[i][0] += flangevin[i][0];
f[i][1] += flangevin[i][1];
f[i][2] += flangevin[i][2];
if (fabs(spin[i])==1) {
if (abs(spin[i])==1) {
erforcelangevin[i] = mefactor*gamma1*ervel[i]+sqrtmefactor*gamma2*(random->uniform()-0.5);
erforce[i] += erforcelangevin[i];
}
@ -366,7 +366,7 @@ void FixLangevinEff::post_force_tally()
else flangevin[i][1] = 0.0;
if (v[i][2] != 0.0) f[i][2] += flangevin[i][2];
else flangevin[i][2] = 0.0;
if (fabs(spin[i])==1) {
if (abs(spin[i])==1) {
erforcelangevin[i] = mefactor*gamma1*ervel[i]+sqrtmefactor*gamma2*(random->uniform()-0.5);
if (ervel[i] != 0.0) erforce[i] += erforcelangevin[i];
else erforcelangevin[i] = 0.0;
@ -396,7 +396,7 @@ void FixLangevinEff::end_of_step()
if (mask[i] & groupbit) {
energy_onestep += flangevin[i][0]*v[i][0] + flangevin[i][1]*v[i][1] +
flangevin[i][2]*v[i][2];
if (fabs(spin[i])==1) energy_onestep += erforcelangevin[i];
if (abs(spin[i])==1) energy_onestep += erforcelangevin[i];
}
energy += energy_onestep*update->dt;
}
@ -420,7 +420,7 @@ double FixLangevinEff::compute_scalar()
if (mask[i] & groupbit) {
energy_onestep += flangevin[i][0]*v[i][0] + flangevin[i][1]*v[i][1] +
flangevin[i][2]*v[i][2];
if (fabs(spin[i])==1) energy_onestep += erforcelangevin[i];
if (abs(spin[i])==1) energy_onestep += erforcelangevin[i];
}
energy = 0.5*energy_onestep*update->dt;
}

View File

@ -16,6 +16,7 @@
------------------------------------------------------------------------- */
#include "math.h"
#include "stdlib.h"
#include "fix_nh_eff.h"
#include "atom.h"
#include "atom_vec.h"
@ -60,7 +61,7 @@ void FixNHEff::nve_v()
for (int i = 0; i < nlocal; i++) {
if (mask[i] & groupbit) {
if (fabs(spin[i])==1) {
if (abs(spin[i])==1) {
dtfm = dtf / mass[type[i]];
ervel[i] = dtfm * erforce[i] / mefactor;
}
@ -87,7 +88,7 @@ void FixNHEff::nve_x()
for (int i = 0; i < nlocal; i++)
if (mask[i] & groupbit)
if (fabs(spin[i])==1) eradius[i] += dtv * ervel[i];
if (abs(spin[i])==1) eradius[i] += dtv * ervel[i];
}
/* ----------------------------------------------------------------------
@ -108,5 +109,5 @@ void FixNHEff::nh_v_temp()
for (int i = 0; i < nlocal; i++)
if (mask[i] & groupbit)
if (fabs(spin[i])==1) ervel[i] *= factor_eta;
if (abs(spin[i])==1) ervel[i] *= factor_eta;
}

View File

@ -18,6 +18,7 @@
#include "math.h"
#include "stdio.h"
#include "string.h"
#include "stdlib.h"
#include "fix_nve_eff.h"
#include "atom.h"
#include "force.h"
@ -100,7 +101,7 @@ void FixNVEEff::initial_integrate(int vflag)
x[i][0] += dtv * v[i][0];
x[i][1] += dtv * v[i][1];
x[i][2] += dtv * v[i][2];
if (fabs(spin[i])==1) {
if (abs(spin[i])==1) {
ervel[i] += dtfm * erforce[i] / mefactor;
eradius[i] += dtv * ervel[i];
}
@ -136,7 +137,7 @@ void FixNVEEff::final_integrate()
v[i][0] += dtfm * f[i][0];
v[i][1] += dtfm * f[i][1];
v[i][2] += dtfm * f[i][2];
if (fabs(spin[i])==1)
if (abs(spin[i])==1)
ervel[i] += dtfm * erforce[i] / mefactor;
}
}

View File

@ -12,6 +12,7 @@
------------------------------------------------------------------------- */
#include "math.h"
#include "stdlib.h"
#include "fix_nvt_sllod_eff.h"
#include "math_extra.h"
#include "atom.h"
@ -122,7 +123,7 @@ void FixNVTSllodEff::nh_v_temp()
v[i][1] = v[i][1]*factor_eta - dthalf*vdelu[1];
v[i][2] = v[i][2]*factor_eta - dthalf*vdelu[2];
temperature->restore_bias(i,v[i]);
if (fabs(spin[i])==1)
if (abs(spin[i])==1)
ervel[i] = ervel[i]*factor_eta -
dthalf*sqrt(vdelu[0]*vdelu[0]+vdelu[1]*vdelu[1]+vdelu[2]*vdelu[2]);
}

View File

@ -380,12 +380,10 @@ void FixTTMMod::post_force(int vflag)
if (left_ynode == -1) left_ynode = nynodes - 1;
if (left_znode == -1) left_znode = nznodes - 1;
double T_i = T_electron[ixnode][iynode][iznode];
double T_il = T_electron[left_xnode][iynode][iznode];
double T_ir = T_electron[right_xnode][iynode][iznode];
double T_iu = T_electron[ixnode][right_ynode][iznode];
double T_if = T_electron[ixnode][iynode][right_znode];
double C_i = el_properties(T_electron[ixnode][iynode][iznode]).el_heat_capacity;
double C_il = el_properties(T_electron[left_xnode][iynode][iznode]).el_heat_capacity;
double C_ir = el_properties(T_electron[right_xnode][iynode][iznode]).el_heat_capacity;
double C_iu = el_properties(T_electron[ixnode][right_ynode][iznode]).el_heat_capacity;
double C_if = el_properties(T_electron[ixnode][iynode][right_znode]).el_heat_capacity;

View File

@ -629,7 +629,6 @@ void ComputeChunkAtom::compute_ichunk()
if (binflag) {
for (i = 0; i < nlocal; i++) {
if (exclude[i]) continue;
int old = ichunk[i];
if (hash->find(ichunk[i]) == hash->end()) exclude[i] = 1;
else ichunk[i] = hash->find(ichunk[i])->second;
}
@ -672,7 +671,6 @@ void ComputeChunkAtom::compute_ichunk()
// if newly calculated IDs need to persist, store them in fixstore
// yes if idsflag = ONCE or idsflag = NFREQ and lock is in place
int save = 0;
if (idsflag == ONCE || (idsflag == NFREQ && lockfix)) {
double *vstore = fixstore->vstore;
int nlocal = atom->nlocal;
@ -867,7 +865,6 @@ void ComputeChunkAtom::assign_chunk_ids()
if (argindex == 0) {
double *vec = fchunk->vector_atom;
int n = nlocal;
for (i = 0; i < nlocal; i++) {
if (exclude[i]) continue;
ichunk[i] = static_cast<int> (vec[i]);
@ -1201,10 +1198,8 @@ void ComputeChunkAtom::atom2bin1d()
int i,ibin;
double *boxlo,*boxhi,*prd;
double xremap;
double lamda[3];
double **x = atom->x;
int *mask = atom->mask;
int nlocal = atom->nlocal;
int idim = dim[0];
@ -1275,10 +1270,8 @@ void ComputeChunkAtom::atom2bin2d()
int i,ibin,i1bin,i2bin;
double *boxlo,*boxhi,*prd;
double xremap,yremap;
double lamda[3];
double **x = atom->x;
int *mask = atom->mask;
int nlocal = atom->nlocal;
int idim = dim[0];
@ -1380,10 +1373,8 @@ void ComputeChunkAtom::atom2bin3d()
int i,ibin,i1bin,i2bin,i3bin;
double *boxlo,*boxhi,*prd;
double xremap,yremap,zremap;
double lamda[3];
double **x = atom->x;
int *mask = atom->mask;
int nlocal = atom->nlocal;
int idim = dim[0];

View File

@ -384,8 +384,6 @@ void ComputeTempChunk::compute_vector()
void ComputeTempChunk::compute_array()
{
int index;
invoked_array = update->ntimestep;
// compute chunk/atom assigns atoms to chunk IDs
@ -394,7 +392,6 @@ void ComputeTempChunk::compute_array()
nchunk = cchunk->setup_chunks();
cchunk->compute_ichunk();
int *ichunk = cchunk->ichunk;
if (nchunk > maxchunk) allocate();
size_array_rows = nchunk;
@ -573,7 +570,7 @@ void ComputeTempChunk::temperature(int icol)
void ComputeTempChunk::kecom(int icol)
{
int i,index;
int index;
int *ichunk = cchunk->ichunk;
// zero local per-chunk values
@ -582,7 +579,6 @@ void ComputeTempChunk::kecom(int icol)
// per-chunk COM KE
double **v = atom->v;
double *mass = atom->mass;
double *rmass = atom->rmass;
int *mask = atom->mask;
@ -629,7 +625,7 @@ void ComputeTempChunk::kecom(int icol)
void ComputeTempChunk::internal(int icol)
{
int i,index;
int index;
int *ichunk = cchunk->ichunk;
// zero local per-chunk values

View File

@ -84,7 +84,7 @@ void ComputeTorqueChunk::init()
void ComputeTorqueChunk::compute_array()
{
int i,j,index;
int i,index;
double dx,dy,dz,massone;
double unwrap[3];

View File

@ -140,7 +140,6 @@ void CreateBonds::command(int narg, char **arg)
int i,j,ii,jj,inum,jnum,flag;
double xtmp,ytmp,ztmp,delx,dely,delz,rsq;
int *ilist,*jlist,*numneigh,**firstneigh;
double factor_lj,factor_coul;
inum = list->inum;
ilist = list->ilist;

View File

@ -25,6 +25,8 @@
#include "special.h"
#include "error.h"
#include <stdlib.h>
using namespace LAMMPS_NS;
enum{MULTI,ATOM,BOND,ANGLE,DIHEDRAL,IMPROPER,STATS};

View File

@ -382,12 +382,6 @@ The number of nlocal + nghost atoms on a processor
is limited by the size of a 32-bit integer with 2 bits
removed for masking 1-2, 1-3, 1-4 neighbors.
W: Building an occasional neighobr list when atoms may have moved too far
This can cause LAMMPS to crash when the neighbor list is built.
The solution is to check for building the regular neighbor lists
more frequently.
E: Domain too large for neighbor bins
The domain has become extremely large so that neighbor bins cannot be