From 843a26476e5527025c99f6070222c0449c2ea919 Mon Sep 17 00:00:00 2001 From: Luke Roberts Date: Tue, 24 Sep 2024 18:14:57 -0600 Subject: [PATCH] make defaults consistent with older versions --- example/poisson_gmg/poisson_equation.hpp | 5 ++++- example/poisson_gmg/poisson_package.cpp | 6 ++---- src/solvers/mg_solver.hpp | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/example/poisson_gmg/poisson_equation.hpp b/example/poisson_gmg/poisson_equation.hpp index 6c94c530e0dd..9f85bb604831 100644 --- a/example/poisson_gmg/poisson_equation.hpp +++ b/example/poisson_gmg/poisson_equation.hpp @@ -35,6 +35,7 @@ namespace poisson_package { class PoissonEquation { public: bool do_flux_cor = false; + bool set_flux_boundary = false; // Add tasks to calculate the result of the matrix A (which is implicitly defined by // this class) being applied to x_t and store it in field out_t @@ -42,7 +43,9 @@ class PoissonEquation { parthenon::TaskID Ax(TL_t &tl, parthenon::TaskID depends_on, std::shared_ptr> &md) { auto flux_res = tl.AddTask(depends_on, CalculateFluxes, md); - flux_res = tl.AddTask(flux_res, SetFluxBoundaries, md); + if (set_flux_boundary) { + flux_res = tl.AddTask(flux_res, SetFluxBoundaries, md); + } if (do_flux_cor && !(md->grid.type == parthenon::GridType::two_level_composite)) { auto start_flxcor = tl.AddTask(flux_res, parthenon::StartReceiveFluxCorrections, md); diff --git a/example/poisson_gmg/poisson_package.cpp b/example/poisson_gmg/poisson_package.cpp index 611915097071..02c74c68ed16 100644 --- a/example/poisson_gmg/poisson_package.cpp +++ b/example/poisson_gmg/poisson_package.cpp @@ -87,9 +87,6 @@ std::shared_ptr Initialize(ParameterInput *pin) { std::string solver = pin->GetOrAddString("poisson", "solver", "MG"); pkg->AddParam<>("solver", solver); - bool flux_correct = pin->GetOrAddBoolean("poisson", "flux_correct", false); - pkg->AddParam<>("flux_correct", flux_correct); - Real err_tol = pin->GetOrAddReal("poisson", "error_tolerance", 1.e-8); pkg->AddParam<>("error_tolerance", err_tol); @@ -97,7 +94,8 @@ std::shared_ptr Initialize(ParameterInput *pin) { pkg->AddParam<>("use_exact_rhs", use_exact_rhs); PoissonEquation eq; - eq.do_flux_cor = flux_correct; + eq.do_flux_cor = pin->GetOrAddBoolean("poisson", "flux_correct", false); + eq.set_flux_boundary = pin->GetOrAddBoolean("poisson", "set_flux_boundary", false); parthenon::solvers::MGParams mg_params(pin, "poisson/solver_params"); parthenon::solvers::MGSolver mg_solver(pkg.get(), mg_params, diff --git a/src/solvers/mg_solver.hpp b/src/solvers/mg_solver.hpp index 8a648fbc51c3..3ea25eae441f 100644 --- a/src/solvers/mg_solver.hpp +++ b/src/solvers/mg_solver.hpp @@ -41,7 +41,7 @@ struct MGParams { std::string smoother = "SRJ2"; bool two_by_two_diagonal = false; int max_coarsenings = std::numeric_limits::max(); - std::string prolongation = "Linear"; + std::string prolongation = "OldLinear"; MGParams() = default; MGParams(ParameterInput *pin, const std::string &input_block) {