Compare compact gravity applications against full FEM blocks
This commit is contained in:
@@ -21,6 +21,7 @@ import mean_field;
|
||||
#include "plateau_pressure_obstruction_diagnostics.hpp"
|
||||
#include "plateau_shape_curvature_diagnostics.hpp"
|
||||
#include "plateau_numerical_strategy_diagnostics.hpp"
|
||||
#include "plateau_gravity_application_diagnostics.hpp"
|
||||
#include "plateau_positivity_strategy_diagnostics.hpp"
|
||||
|
||||
using namespace mean_field;
|
||||
@@ -250,8 +251,15 @@ void FocusedProbes(State &s, const fem::FEM &f, const Options &o, const mfem::Ve
|
||||
for (const auto &[key, value] : experiment::plateau_diagnostics::MeasureEnthalpyStep(s, f, o.n, &physicalBase))
|
||||
bounds << key << ',' << value << '\n';
|
||||
bounds.flush();
|
||||
if (o.strategyProbe)
|
||||
if (o.strategyProbe) {
|
||||
s.physicalInverse->Refresh();
|
||||
using Form = typename std::remove_cvref_t<decltype(s.Problem())>::FormType;
|
||||
solver::PreparedGravitySubsystem gravity(*s.normalizedOperator, *s.normalizedInverse,
|
||||
solver::MakeGravityBlockPartition<Form>(s.Problem().GetManifest().layout()),
|
||||
s.Problem().GetCommunicator());
|
||||
plateau_diagnostics::ProbeGravityApplications(gravity, o.output);
|
||||
experiment::plateau_diagnostics::ProbeNumericalStrategies(s, f, base, direction, o.output);
|
||||
}
|
||||
if (o.positivityProbe)
|
||||
experiment::plateau_diagnostics::ProbePolynomialEnthalpy(s, f, base, direction, o.output);
|
||||
if (o.surfaceTrace)
|
||||
|
||||
Reference in New Issue
Block a user