git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@11328 f3b2605a-c512-4ea7-a41b-209d697bcdaa
This commit is contained in:
@ -103,9 +103,14 @@ FixDeposit::FixDeposit(LAMMPS *lmp, int narg, char **arg) :
|
||||
error->all(FLERR,"Fix deposit molecule must have coordinates");
|
||||
if (onemol->typeflag == 0)
|
||||
error->all(FLERR,"Fix deposit molecule must have atom types");
|
||||
if (ntype+onemol->maxtype <= 0 || ntype+onemol->maxtype > atom->ntypes)
|
||||
if (ntype+onemol->ntypes <= 0 || ntype+onemol->ntypes > atom->ntypes)
|
||||
error->all(FLERR,"Invalid atom type in fix deposit mol command");
|
||||
|
||||
if (atom->molecular == 2 && onemol != atom->avec->onemols[0])
|
||||
error->all(FLERR,"Fix deposit molecule template ID must be same "
|
||||
"as atom style template ID");
|
||||
onemol->check_attributes(0);
|
||||
|
||||
// fix deposit uses geoemetric center of molecule for insertion
|
||||
|
||||
onemol->compute_center();
|
||||
@ -216,7 +221,8 @@ void FixDeposit::init()
|
||||
int tmp;
|
||||
if (onemol != (Molecule *) fixrigid->extract("onemol",tmp))
|
||||
error->all(FLERR,
|
||||
"Fix deposit and fix rigid/small not using same molecule ID");
|
||||
"Fix deposit and fix rigid/small not using "
|
||||
"same molecule template ID");
|
||||
}
|
||||
|
||||
// if shakeflag defined, check for SHAKE fix
|
||||
@ -229,7 +235,8 @@ void FixDeposit::init()
|
||||
fixshake = modify->fix[ifix];
|
||||
int tmp;
|
||||
if (onemol != (Molecule *) fixshake->extract("onemol",tmp))
|
||||
error->all(FLERR,"Fix deposit and fix shake not using same molecule ID");
|
||||
error->all(FLERR,"Fix deposit and fix shake not using "
|
||||
"same molecule template ID");
|
||||
}
|
||||
}
|
||||
|
||||
@ -442,8 +449,13 @@ void FixDeposit::pre_exchange()
|
||||
else atom->avec->create_atom(ntype+onemol->type[m],coords[m]);
|
||||
n = atom->nlocal - 1;
|
||||
atom->tag[n] = maxtag_all + m+1;
|
||||
if (mode == MOLECULE && atom->molecule_flag)
|
||||
atom->molecule[n] = maxmol_all+1;
|
||||
if (mode == MOLECULE) {
|
||||
if (atom->molecular) atom->molecule[n] = maxmol_all+1;
|
||||
if (atom->molecular == 2) {
|
||||
atom->molindex[n] = 0;
|
||||
atom->molatom[n] = m;
|
||||
}
|
||||
}
|
||||
atom->mask[n] = 1 | groupbit;
|
||||
atom->image[n] = imageflags[m];
|
||||
atom->v[n][0] = vnew[0];
|
||||
|
||||
Reference in New Issue
Block a user