summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2018-04-07 10:01:34 +0200
committerAnton Khirnov <anton@khirnov.net>2018-04-07 10:01:34 +0200
commit2472cd18a1485fe42ac6cfd4cd82fb3114248f00 (patch)
treeded3c70702e59fd069ca47ff2681262ec23d3bae
parent6e0eb75f40e1d8803bf69d7302096dcdac96ced8 (diff)
Make the location of the outermost point configurable.
-rw-r--r--param.ccl5
-rw-r--r--src/qms.c2
-rw-r--r--src/qms_solve.c4
-rw-r--r--src/qms_solve.h2
4 files changed, 9 insertions, 4 deletions
diff --git a/param.ccl b/param.ccl
index 63dc31c..49169aa 100644
--- a/param.ccl
+++ b/param.ccl
@@ -26,6 +26,11 @@ CCTK_REAL scale_power "" STEERABLE=recover
0: :: ""
} 64.0
+CCTK_REAL outer_bound "" STEERABLE=recover
+{
+ 0: :: ""
+} 64.0
+
CCTK_REAL switchoff_time "" STEERABLE=recover
{
0: :: ""
diff --git a/src/qms.c b/src/qms.c
index 1e61271..90e1f76 100644
--- a/src/qms.c
+++ b/src/qms.c
@@ -232,7 +232,7 @@ static int context_init(cGH *cctkGH)
qms->max_radius = 60.0;
ret = qms_solver_init(&qms->solver, cctkGH, basis_order_r, basis_order_z,
- scale_factor, filter_power, 0.0);
+ outer_bound, filter_power, 0.0);
if (ret < 0)
return ret;
diff --git a/src/qms_solve.c b/src/qms_solve.c
index 0d74300..f1e6ee8 100644
--- a/src/qms_solve.c
+++ b/src/qms_solve.c
@@ -1093,7 +1093,7 @@ fail:
int qms_solver_init(QMSSolver **pctx,
cGH *cctkGH,
int basis_order_r, int basis_order_z,
- double sf, double filter_power, double input_filter_power)
+ double outer_bound, double filter_power, double input_filter_power)
{
QMSSolver *ctx;
QMSSolverPriv *s;
@@ -1136,7 +1136,7 @@ int qms_solver_init(QMSSolver **pctx,
//FIXME
scale_factor = 1.0;
- scale_factor = (64.0 / ctx->basis[0]->colloc_point(s->colloc_grid_order[0], ctx->nb_colloc_points[0] - 1));
+ scale_factor = (outer_bound / ctx->basis[0]->colloc_point(s->colloc_grid_order[0], ctx->nb_colloc_points[0] - 1));
fprintf(stderr, "scale factor %16.16g\n", scale_factor);
init_opencl(ctx);
diff --git a/src/qms_solve.h b/src/qms_solve.h
index 18b2628..3e9ca49 100644
--- a/src/qms_solve.h
+++ b/src/qms_solve.h
@@ -41,7 +41,7 @@ typedef struct QMSSolver {
int qms_solver_init(QMSSolver **ctx,
cGH *cctkGH,
int basis_order_r, int basis_order_z,
- double sf, double filter_power, double input_filter_power);
+ double outer_bound, double filter_power, double input_filter_power);
void qms_solver_free(QMSSolver **ctx);