forked from lijiext/lammps
git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@3077 f3b2605a-c512-4ea7-a41b-209d697bcdaa
This commit is contained in:
parent
e8ca365422
commit
d0b360b79f
|
@ -50,15 +50,16 @@ Velocity::Velocity(LAMMPS *lmp) : Pointers(lmp) {}
|
||||||
|
|
||||||
void Velocity::command(int narg, char **arg)
|
void Velocity::command(int narg, char **arg)
|
||||||
{
|
{
|
||||||
// require atom masses to all be set
|
if (narg < 2) error->all("Illegal velocity command");
|
||||||
|
|
||||||
if (domain->box_exist == 0)
|
if (domain->box_exist == 0)
|
||||||
error->all("Velocity command before simulation box is defined");
|
error->all("Velocity command before simulation box is defined");
|
||||||
if (atom->natoms == 0)
|
if (atom->natoms == 0)
|
||||||
error->all("Velocity command with no atoms existing");
|
error->all("Velocity command with no atoms existing");
|
||||||
atom->check_mass();
|
|
||||||
|
|
||||||
if (narg < 2) error->all("Illegal velocity command");
|
// atom masses must all be set
|
||||||
|
|
||||||
|
atom->check_mass();
|
||||||
|
|
||||||
// identify group
|
// identify group
|
||||||
|
|
||||||
|
@ -109,23 +110,44 @@ void Velocity::command(int narg, char **arg)
|
||||||
}
|
}
|
||||||
|
|
||||||
// initialize velocities based on style
|
// initialize velocities based on style
|
||||||
|
// create called differently, so can be called externally
|
||||||
|
|
||||||
if (style == CREATE) create(narg-2,&arg[2]);
|
if (style == CREATE) {
|
||||||
|
double t_desired = atof(arg[2]);
|
||||||
|
int seed = atoi(arg[3]);
|
||||||
|
create(t_desired,seed);
|
||||||
|
}
|
||||||
else if (style == SET) set(narg-2,&arg[2]);
|
else if (style == SET) set(narg-2,&arg[2]);
|
||||||
else if (style == SCALE) scale(narg-2,&arg[2]);
|
else if (style == SCALE) scale(narg-2,&arg[2]);
|
||||||
else if (style == RAMP) ramp(narg-2,&arg[2]);
|
else if (style == RAMP) ramp(narg-2,&arg[2]);
|
||||||
else if (style == ZERO) zero(narg-2,&arg[2]);
|
else if (style == ZERO) zero(narg-2,&arg[2]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* ----------------------------------------------------------------------
|
||||||
|
initialization of defaults before calling velocity methods externaly
|
||||||
|
------------------------------------------------------------------------- */
|
||||||
|
|
||||||
|
void Velocity::init_external(char *extgroup)
|
||||||
|
{
|
||||||
|
igroup = group->find(extgroup);
|
||||||
|
if (igroup == -1) error->all("Could not find velocity group ID");
|
||||||
|
groupbit = group->bitmask[igroup];
|
||||||
|
|
||||||
|
temperature = NULL;
|
||||||
|
dist_flag = 0;
|
||||||
|
sum_flag = 0;
|
||||||
|
momentum_flag = 1;
|
||||||
|
rotation_flag = 0;
|
||||||
|
loop_flag = ALL;
|
||||||
|
scale_flag = 1;
|
||||||
|
}
|
||||||
|
|
||||||
/* ---------------------------------------------------------------------- */
|
/* ---------------------------------------------------------------------- */
|
||||||
|
|
||||||
void Velocity::create(int narg, char **arg)
|
void Velocity::create(double t_desired, int seed)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
double t_desired = atof(arg[0]);
|
|
||||||
int seed = atoi(arg[1]);
|
|
||||||
|
|
||||||
if (seed <= 0) error->all("Illegal velocity create command");
|
if (seed <= 0) error->all("Illegal velocity create command");
|
||||||
|
|
||||||
// if temperature = NULL, create a new ComputeTemp with the velocity group
|
// if temperature = NULL, create a new ComputeTemp with the velocity group
|
||||||
|
|
Loading…
Reference in New Issue