In pair_peri_pmb.cpp, the critical strain is calculated according to (line 259)
if (stretch > MIN(s0[i], s0[j])) partner[i][jj] = 0;
// update s0 for next timestep
s0_new[i] = s00[itype][jtype] - (alpha[itype][jtype] * stretch);
s0_new[i] = MAX(s0_new[i], s00[itype][jtype] - (alpha[itype][jtype] * stretch));
first = false;
s0_new is eventually stored as the new critical strain:
// store new s0
for (i = 0; i < nlocal; i++) s0[i] = s0_new[i];
My question is why is MAX being used to compare the critical strains? In the paper “Implementing peridynamics within a molecular dynamics code”, page 6, s0 is defined as:
s0 = s00 - alpha*s_min, where s_min is the MIN bond strain is all bonds to the current particle. So shouldn’t MAX be MIN?
Thanks for the input.