Record gravity relift work before descent rejection
This commit is contained in:
@@ -440,6 +440,9 @@ namespace mean_field::solver::detail {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
// A successful gravity relift still belongs in the work report if
|
||||
// the following full-merit check rejects the repaired direction.
|
||||
m_gravity.CopyDiagnostics(diagnostics);
|
||||
if constexpr (altersDirection && std::same_as<Gravity, nonlinear::EliminatedGravity>) {
|
||||
mfem::Vector action(state.Problem().EquationSize());
|
||||
state.normalizedOperator->Mult(state.normalizedCorrection, action);
|
||||
@@ -448,7 +451,6 @@ namespace mean_field::solver::detail {
|
||||
if (!std::isfinite(diagnostics.lastMeritDirectionalDerivative) ||
|
||||
diagnostics.lastMeritDirectionalDerivative >= 0.0) { return false; }
|
||||
}
|
||||
m_gravity.CopyDiagnostics(diagnostics);
|
||||
return true;
|
||||
}
|
||||
auto PrepareTrial(State &state, const double alpha, nonlinear::NumericalStrategyDiagnostics &diagnostics) {
|
||||
|
||||
Reference in New Issue
Block a user