mirror of https://github.com/lammps/lammps.git
git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@7225 f3b2605a-c512-4ea7-a41b-209d697bcdaa
This commit is contained in:
parent
1963ce8783
commit
0be567a00a
|
@ -731,52 +731,50 @@ void FixAveHisto::end_of_step()
|
|||
// if ave = RUNNING, combine with all previous Nfreq timestep values
|
||||
// if ave = WINDOW, combine with nwindow most recent Nfreq timestep values
|
||||
|
||||
if (ntimestep >= startstep) {
|
||||
if (ave == ONE) {
|
||||
stats_total[0] = stats[0];
|
||||
stats_total[1] = stats[1];
|
||||
stats_total[2] = stats[2];
|
||||
stats_total[3] = stats[3];
|
||||
for (i = 0; i < nbins; i++) bin_total[i] = bin[i];
|
||||
|
||||
} else if (ave == RUNNING) {
|
||||
stats_total[0] += stats[0];
|
||||
stats_total[1] += stats[1];
|
||||
stats_total[2] = MIN(stats_total[2],stats[2]);
|
||||
stats_total[3] = MAX(stats_total[3],stats[3]);
|
||||
for (i = 0; i < nbins; i++) bin_total[i] += bin[i];
|
||||
|
||||
} else if (ave == WINDOW) {
|
||||
stats_total[0] += stats[0];
|
||||
if (window_limit) stats_total[0] -= stats_list[iwindow][0];
|
||||
stats_list[iwindow][0] = stats[0];
|
||||
stats_total[1] += stats[1];
|
||||
if (window_limit) stats_total[1] -= stats_list[iwindow][1];
|
||||
stats_list[iwindow][1] = stats[1];
|
||||
|
||||
if (window_limit) m = nwindow;
|
||||
else m = iwindow+1;
|
||||
|
||||
stats_list[iwindow][2] = stats[2];
|
||||
stats_total[2] = stats_list[0][2];
|
||||
for (i = 1; i < m; i++)
|
||||
stats_total[2] = MIN(stats_total[2],stats_list[i][2]);
|
||||
stats_list[iwindow][3] = stats[3];
|
||||
stats_total[3] = stats_list[0][3];
|
||||
for (i = 1; i < m; i++)
|
||||
stats_total[3] = MAX(stats_total[3],stats_list[i][3]);
|
||||
|
||||
for (i = 0; i < nbins; i++) {
|
||||
bin_total[i] += bin[i];
|
||||
if (window_limit) bin_total[i] -= bin_list[iwindow][i];
|
||||
bin_list[iwindow][i] = bin[i];
|
||||
}
|
||||
|
||||
iwindow++;
|
||||
if (iwindow == nwindow) {
|
||||
iwindow = 0;
|
||||
window_limit = 1;
|
||||
}
|
||||
if (ave == ONE) {
|
||||
stats_total[0] = stats[0];
|
||||
stats_total[1] = stats[1];
|
||||
stats_total[2] = stats[2];
|
||||
stats_total[3] = stats[3];
|
||||
for (i = 0; i < nbins; i++) bin_total[i] = bin[i];
|
||||
|
||||
} else if (ave == RUNNING) {
|
||||
stats_total[0] += stats[0];
|
||||
stats_total[1] += stats[1];
|
||||
stats_total[2] = MIN(stats_total[2],stats[2]);
|
||||
stats_total[3] = MAX(stats_total[3],stats[3]);
|
||||
for (i = 0; i < nbins; i++) bin_total[i] += bin[i];
|
||||
|
||||
} else if (ave == WINDOW) {
|
||||
stats_total[0] += stats[0];
|
||||
if (window_limit) stats_total[0] -= stats_list[iwindow][0];
|
||||
stats_list[iwindow][0] = stats[0];
|
||||
stats_total[1] += stats[1];
|
||||
if (window_limit) stats_total[1] -= stats_list[iwindow][1];
|
||||
stats_list[iwindow][1] = stats[1];
|
||||
|
||||
if (window_limit) m = nwindow;
|
||||
else m = iwindow+1;
|
||||
|
||||
stats_list[iwindow][2] = stats[2];
|
||||
stats_total[2] = stats_list[0][2];
|
||||
for (i = 1; i < m; i++)
|
||||
stats_total[2] = MIN(stats_total[2],stats_list[i][2]);
|
||||
stats_list[iwindow][3] = stats[3];
|
||||
stats_total[3] = stats_list[0][3];
|
||||
for (i = 1; i < m; i++)
|
||||
stats_total[3] = MAX(stats_total[3],stats_list[i][3]);
|
||||
|
||||
for (i = 0; i < nbins; i++) {
|
||||
bin_total[i] += bin[i];
|
||||
if (window_limit) bin_total[i] -= bin_list[iwindow][i];
|
||||
bin_list[iwindow][i] = bin[i];
|
||||
}
|
||||
|
||||
iwindow++;
|
||||
if (iwindow == nwindow) {
|
||||
iwindow = 0;
|
||||
window_limit = 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -979,11 +977,13 @@ void FixAveHisto::allocate_values(int n)
|
|||
calculate nvalid = next step on which end_of_step does something
|
||||
can be this timestep if multiple of nfreq and nrepeat = 1
|
||||
else backup from next multiple of nfreq
|
||||
startstep is lower bound on nfreq multiple
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
bigint FixAveHisto::nextvalid()
|
||||
{
|
||||
bigint nvalid = (update->ntimestep/nfreq)*nfreq + nfreq;
|
||||
while (nvalid < startstep) nvalid += nfreq;
|
||||
if (nvalid-nfreq == update->ntimestep && nrepeat == 1)
|
||||
nvalid = update->ntimestep;
|
||||
else
|
||||
|
|
|
@ -593,32 +593,30 @@ void FixAveTime::invoke_scalar(bigint ntimestep)
|
|||
// if ave = RUNNING, combine with all previous Nfreq timestep values
|
||||
// if ave = WINDOW, combine with nwindow most recent Nfreq timestep values
|
||||
|
||||
if (ntimestep >= startstep) {
|
||||
if (ave == ONE) {
|
||||
for (i = 0; i < nvalues; i++) vector_total[i] = vector[i];
|
||||
norm = 1;
|
||||
|
||||
} else if (ave == RUNNING) {
|
||||
for (i = 0; i < nvalues; i++) vector_total[i] += vector[i];
|
||||
norm++;
|
||||
|
||||
} else if (ave == WINDOW) {
|
||||
for (i = 0; i < nvalues; i++) {
|
||||
vector_total[i] += vector[i];
|
||||
if (window_limit) vector_total[i] -= vector_list[iwindow][i];
|
||||
vector_list[iwindow][i] = vector[i];
|
||||
}
|
||||
|
||||
iwindow++;
|
||||
if (iwindow == nwindow) {
|
||||
iwindow = 0;
|
||||
window_limit = 1;
|
||||
}
|
||||
if (window_limit) norm = nwindow;
|
||||
else norm = iwindow;
|
||||
if (ave == ONE) {
|
||||
for (i = 0; i < nvalues; i++) vector_total[i] = vector[i];
|
||||
norm = 1;
|
||||
|
||||
} else if (ave == RUNNING) {
|
||||
for (i = 0; i < nvalues; i++) vector_total[i] += vector[i];
|
||||
norm++;
|
||||
|
||||
} else if (ave == WINDOW) {
|
||||
for (i = 0; i < nvalues; i++) {
|
||||
vector_total[i] += vector[i];
|
||||
if (window_limit) vector_total[i] -= vector_list[iwindow][i];
|
||||
vector_list[iwindow][i] = vector[i];
|
||||
}
|
||||
|
||||
iwindow++;
|
||||
if (iwindow == nwindow) {
|
||||
iwindow = 0;
|
||||
window_limit = 1;
|
||||
}
|
||||
if (window_limit) norm = nwindow;
|
||||
else norm = iwindow;
|
||||
}
|
||||
|
||||
|
||||
// insure any columns with offcol set are effectively set to last value
|
||||
|
||||
for (i = 0; i < nvalues; i++)
|
||||
|
@ -729,33 +727,31 @@ void FixAveTime::invoke_vector(bigint ntimestep)
|
|||
// if ave = RUNNING, combine with all previous Nfreq timestep values
|
||||
// if ave = WINDOW, combine with nwindow most recent Nfreq timestep values
|
||||
|
||||
if (ntimestep >= startstep) {
|
||||
if (ave == ONE) {
|
||||
for (i = 0; i < nrows; i++)
|
||||
for (j = 0; j < nvalues; j++) array_total[i][j] = array[i][j];
|
||||
norm = 1;
|
||||
|
||||
} else if (ave == RUNNING) {
|
||||
for (i = 0; i < nrows; i++)
|
||||
for (j = 0; j < nvalues; j++) array_total[i][j] += array[i][j];
|
||||
norm++;
|
||||
|
||||
} else if (ave == WINDOW) {
|
||||
for (i = 0; i < nrows; i++)
|
||||
for (j = 0; j < nvalues; j++) {
|
||||
array_total[i][j] += array[i][j];
|
||||
if (window_limit) array_total[i][j] -= array_list[iwindow][i][j];
|
||||
array_list[iwindow][i][j] = array[i][j];
|
||||
}
|
||||
|
||||
iwindow++;
|
||||
if (iwindow == nwindow) {
|
||||
iwindow = 0;
|
||||
window_limit = 1;
|
||||
if (ave == ONE) {
|
||||
for (i = 0; i < nrows; i++)
|
||||
for (j = 0; j < nvalues; j++) array_total[i][j] = array[i][j];
|
||||
norm = 1;
|
||||
|
||||
} else if (ave == RUNNING) {
|
||||
for (i = 0; i < nrows; i++)
|
||||
for (j = 0; j < nvalues; j++) array_total[i][j] += array[i][j];
|
||||
norm++;
|
||||
|
||||
} else if (ave == WINDOW) {
|
||||
for (i = 0; i < nrows; i++)
|
||||
for (j = 0; j < nvalues; j++) {
|
||||
array_total[i][j] += array[i][j];
|
||||
if (window_limit) array_total[i][j] -= array_list[iwindow][i][j];
|
||||
array_list[iwindow][i][j] = array[i][j];
|
||||
}
|
||||
if (window_limit) norm = nwindow;
|
||||
else norm = iwindow;
|
||||
|
||||
iwindow++;
|
||||
if (iwindow == nwindow) {
|
||||
iwindow = 0;
|
||||
window_limit = 1;
|
||||
}
|
||||
if (window_limit) norm = nwindow;
|
||||
else norm = iwindow;
|
||||
}
|
||||
|
||||
// insure any columns with offcol set are effectively set to last value
|
||||
|
@ -913,11 +909,13 @@ void FixAveTime::allocate_values(int n)
|
|||
calculate nvalid = next step on which end_of_step does something
|
||||
can be this timestep if multiple of nfreq and nrepeat = 1
|
||||
else backup from next multiple of nfreq
|
||||
startstep is lower bound on nfreq multiple
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
bigint FixAveTime::nextvalid()
|
||||
{
|
||||
bigint nvalid = (update->ntimestep/nfreq)*nfreq + nfreq;
|
||||
while (nvalid < startstep) nvalid += nfreq;
|
||||
if (nvalid-nfreq == update->ntimestep && nrepeat == 1)
|
||||
nvalid = update->ntimestep;
|
||||
else
|
||||
|
|
Loading…
Reference in New Issue