diff --git a/src/one-body-sample.cc b/src/one-body-sample.cc index 95af7c49ecb5647b8197983c2f59868d88b8d57a..e4a3abc9ff13617920deb03c8a220dd664386c40 100644 --- a/src/one-body-sample.cc +++ b/src/one-body-sample.cc @@ -425,24 +425,26 @@ int main(int argc, char *argv[]) { solver_tolerance, &energyNorm, verbosity); overallSolver.solve(); - if (parset.get<bool>("state.enable")) { - for (size_t i = 0; i < frictionalNodes.size(); ++i) - if (frictionalNodes[i][0]) { - double const L = 1e-4; // FIXME: magic value - double const unorm = u4_diff[i].two_norm(); - - double ret1 = - compute_state_update_bisection(h, unorm, L, s4_old[i][0]); - assert(abs(1.0 / h * ret1 - (s4_old[i] - unorm / L) / h - - exp(-ret1)) < 1e-12); - double ret2 = - compute_state_update_lambert(h, unorm, L, s4_old[i][0]); - assert(abs(1.0 / h * ret2 - (s4_old[i] - unorm / L) / h - - exp(-ret2)) < 1e-12); - assert(abs(ret2 - ret1) < 1e-14); - - (*s4_new)[i][0] = ret1; - } + if (!parset.get<bool>("state.enable")) + continue; + + for (size_t i = 0; i < frictionalNodes.size(); ++i) { + if (frictionalNodes[i][0]) { + double const L = 1e-4; // FIXME: magic value + double const unorm = u4_diff[i].two_norm(); + + double ret1 = + compute_state_update_bisection(h, unorm, L, s4_old[i][0]); + assert(abs(1.0 / h * ret1 - (s4_old[i] - unorm / L) / h - + exp(-ret1)) < 1e-12); + double ret2 = + compute_state_update_lambert(h, unorm, L, s4_old[i][0]); + assert(abs(1.0 / h * ret2 - (s4_old[i] - unorm / L) / h - + exp(-ret2)) < 1e-12); + assert(abs(ret2 - ret1) < 1e-14); + + (*s4_new)[i][0] = ret1; + } } } }