git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@937 f3b2605a-c512-4ea7-a41b-209d697bcdaa
This commit is contained in:
@ -65,9 +65,9 @@ void MinCG::init()
|
||||
// will delete it at end of run
|
||||
|
||||
char **fixarg = new char*[3];
|
||||
fixarg[0] = "MINIMIZE";
|
||||
fixarg[1] = "all";
|
||||
fixarg[2] = "MINIMIZE";
|
||||
fixarg[0] = (char *) "MINIMIZE";
|
||||
fixarg[1] = (char *) "all";
|
||||
fixarg[2] = (char *) "MINIMIZE";
|
||||
modify->add_fix(3,fixarg);
|
||||
delete [] fixarg;
|
||||
fix_minimize = (FixMinimize *) modify->fix[modify->nfix-1];
|
||||
@ -85,12 +85,9 @@ void MinCG::init()
|
||||
|
||||
// set flags for what arrays to clear in force_clear()
|
||||
// need to clear torques if array exists
|
||||
// don't need to clear f_pair if atom_style is only granular (no virial)
|
||||
|
||||
torqueflag = 0;
|
||||
if (atom->torque) torqueflag = 1;
|
||||
pairflag = 1;
|
||||
if (strcmp(atom->atom_style,"granular") == 0) pairflag = 0;
|
||||
|
||||
// orthogonal vs triclinic simulation box
|
||||
|
||||
@ -115,11 +112,6 @@ void MinCG::init()
|
||||
|
||||
if (linestyle == SCAN) linemin = &MinCG::linemin_scan;
|
||||
else if (linestyle == SECANT) linemin = &MinCG::linemin_secant;
|
||||
|
||||
// local versions of Update quantities
|
||||
|
||||
maxpair = update->maxpair;
|
||||
f_pair = update->f_pair;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
@ -233,6 +225,8 @@ void MinCG::setup()
|
||||
int vflag = virial_thermo;
|
||||
force_clear(vflag);
|
||||
|
||||
if (force->pair) force->pair->compute(eflag,vflag);
|
||||
|
||||
if (atom->molecular) {
|
||||
if (force->bond) force->bond->compute(eflag,vflag);
|
||||
if (force->angle) force->angle->compute(eflag,vflag);
|
||||
@ -240,8 +234,6 @@ void MinCG::setup()
|
||||
if (force->improper) force->improper->compute(eflag,vflag);
|
||||
}
|
||||
|
||||
if (force->pair) force->pair->compute(eflag,vflag);
|
||||
|
||||
if (force->kspace) {
|
||||
force->kspace->setup();
|
||||
force->kspace->compute(eflag,vflag);
|
||||
@ -391,6 +383,12 @@ void MinCG::eng_force(int *pndof, double **px, double **ph, double *peng)
|
||||
force_clear(vflag);
|
||||
|
||||
timer->stamp();
|
||||
|
||||
if (force->pair) {
|
||||
force->pair->compute(eflag,vflag);
|
||||
timer->stamp(TIME_PAIR);
|
||||
}
|
||||
|
||||
if (atom->molecular) {
|
||||
if (force->bond) force->bond->compute(eflag,vflag);
|
||||
if (force->angle) force->angle->compute(eflag,vflag);
|
||||
@ -399,11 +397,6 @@ void MinCG::eng_force(int *pndof, double **px, double **ph, double *peng)
|
||||
timer->stamp(TIME_BOND);
|
||||
}
|
||||
|
||||
if (force->pair) {
|
||||
force->pair->compute(eflag,vflag);
|
||||
timer->stamp(TIME_PAIR);
|
||||
}
|
||||
|
||||
if (force->kspace) {
|
||||
force->kspace->compute(eflag,vflag);
|
||||
timer->stamp(TIME_KSPACE);
|
||||
@ -462,23 +455,6 @@ void MinCG::force_clear(int vflag)
|
||||
torque[i][2] = 0.0;
|
||||
}
|
||||
}
|
||||
|
||||
// clear f_pair array if using it this timestep to compute virial
|
||||
|
||||
if (vflag == 2 && pairflag) {
|
||||
if (atom->nmax > maxpair) {
|
||||
maxpair = atom->nmax;
|
||||
memory->destroy_2d_double_array(f_pair);
|
||||
f_pair = memory->create_2d_double_array(maxpair,3,"min:f_pair");
|
||||
update->maxpair = maxpair;
|
||||
update->f_pair = f_pair;
|
||||
}
|
||||
for (i = 0; i < nall; i++) {
|
||||
f_pair[i][0] = 0.0;
|
||||
f_pair[i][1] = 0.0;
|
||||
f_pair[i][2] = 0.0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user