summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2019-06-23 15:02:43 +0200
committerAnton Khirnov <anton@khirnov.net>2019-06-23 15:23:13 +0200
commit7c2737faa45cc68ea9059be525a14d2613573909 (patch)
tree6e02123069ae24d217f01666df7438271b2aef6a
parentb025c446f18d1c6d1e2b9782f6cc7b8079fd92fe (diff)
Add an option to extrapolate on the finest level as well.
-rw-r--r--param.ccl6
-rw-r--r--src/maximal_slicing_axi_mg.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/param.ccl b/param.ccl
index 55b52a6..03bf6b6 100644
--- a/param.ccl
+++ b/param.ccl
@@ -8,6 +8,12 @@ EXTENDS KEYWORD lapse_evolution_method
}
RESTRICTED:
+CCTK_INT fine_solve "Whether to solve on each sub-step of the finest level evolution"
+{
+ 0:1 :: ""
+} 1
+
+RESTRICTED:
CCTK_INT fd_stencil "finite differencing stencil"
{
1: :: ""
diff --git a/src/maximal_slicing_axi_mg.c b/src/maximal_slicing_axi_mg.c
index 11770d5..9d32120 100644
--- a/src/maximal_slicing_axi_mg.c
+++ b/src/maximal_slicing_axi_mg.c
@@ -960,7 +960,7 @@ void msa_mg_eval(CCTK_ARGUMENTS)
fact1 = (t - lapse_prev0_time[reflevel]) / time_interp_step;
}
- if (reflevel < ms->nb_levels - 1) {
+ if (!fine_solve || reflevel < ms->nb_levels - 1) {
/* on coarse levels use extrapolated past solutions */
int64_t extrap_start = gettime();