aboutsummaryrefslogtreecommitdiff
path: root/td_constraints.c
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2020-01-30 13:36:41 +0100
committerAnton Khirnov <anton@khirnov.net>2020-01-30 13:42:15 +0100
commite2745670894cac8ca73c6bee5c1b4cc2c8c94a3e (patch)
treeccffb5b4f4bb192e28b6865616b4662e1e550262 /td_constraints.c
parent80b9f98f2316b1d36f6409861cab6bcdddf23174 (diff)
teukolsky_data: change TD_FAMILY_AE_TIME_ANTISYM
This is obviously not the data that A&E were using in their paper (though the reason is unknown, as the free functions should be the same), so stop referring to it as such. Also drop the constant multiplier of 60 * \sqrt{2/pi}, since it has no other purpose than being consistent with their data. Name the resulting family TD_FAMILY_TIME_ANTISYM_CUBIC. This is an API break.
Diffstat (limited to 'td_constraints.c')
-rw-r--r--td_constraints.c30
1 files changed, 15 insertions, 15 deletions
diff --git a/td_constraints.c b/td_constraints.c
index 5618cb3..73d48a7 100644
--- a/td_constraints.c
+++ b/td_constraints.c
@@ -158,36 +158,36 @@ static const ConstraintEvalCB constraint_funcs_confflat[TD_CONSTRAINT_EQ_NB] = {
[TD_CONSTRAINT_EQ_MOM_1] = constraint_eval_mom_t_confflat,
};
-static double k_rtheta_eval_ae_time_antisym(TDConstraintEvalContext *ctx,
- double r, double theta)
+static double k_rtheta_eval_time_antisym_cubic(TDConstraintEvalContext *ctx,
+ double r, double theta)
{
const double r2 = SQR(r);
const double r3 = r * r2;
- return -60.0 * sqrt(2) * (3.0 * r - 2.0 * r3) * exp(-r2) * sin(2.0 * theta) * ctx->amplitude / sqrt(M_PI);
+ return (3.0 * r - 2.0 * r3) * exp(-r2) * sin(2.0 * theta) * ctx->amplitude;
}
-static double k_rtheta_eval_dr_ae_time_antisym(TDConstraintEvalContext *ctx,
+static double k_rtheta_eval_dr_time_antisym_cubic(TDConstraintEvalContext *ctx,
double r, double theta)
{
const double r2 = SQR(r);
const double r4 = SQR(r2);
- return -60.0 * sqrt(2) * (3.0 - 12.0 * r2 + 4.0 * r4) * exp(-r2) * sin(2.0 * theta) * ctx->amplitude / sqrt(M_PI);
+ return (3.0 - 12.0 * r2 + 4.0 * r4) * exp(-r2) * sin(2.0 * theta) * ctx->amplitude;
}
-static double k_rtheta_eval_dt_ae_time_antisym(TDConstraintEvalContext *ctx,
- double r, double theta)
+static double k_rtheta_eval_dt_time_antisym_cubic(TDConstraintEvalContext *ctx,
+ double r, double theta)
{
const double r2 = SQR(r);
const double r3 = r * r2;
- return -120.0 * sqrt(2) * (3.0 * r - 2.0 * r3) * exp(-r2) * cos(2.0 * theta) * ctx->amplitude / sqrt(M_PI);
+ return 2.0 * (3.0 * r - 2.0 * r3) * exp(-r2) * cos(2.0 * theta) * ctx->amplitude;
}
-static const TDFamilyDef ae_time_antisym = {
- .eval_krt = k_rtheta_eval_ae_time_antisym,
- .eval_krt_dr = k_rtheta_eval_dr_ae_time_antisym,
- .eval_krt_dt = k_rtheta_eval_dt_ae_time_antisym,
- .a_converge = 0.0092078837420,
- .a_diverge = 0.0092078837427,
+static const TDFamilyDef time_antisym_cubic = {
+ .eval_krt = k_rtheta_eval_time_antisym_cubic,
+ .eval_krt_dr = k_rtheta_eval_dr_time_antisym_cubic,
+ .eval_krt_dt = k_rtheta_eval_dt_time_antisym_cubic,
+ .a_converge = 0.440809326171875,
+ .a_diverge = 0.4408099365234375,
.constraint_eval = constraint_funcs_confflat,
};
@@ -223,7 +223,7 @@ static const TDFamilyDef simple_time_antisym = {
};
static const TDFamilyDef *td_families[] = {
- [TD_FAMILY_AE_TIME_ANTISYM] = &ae_time_antisym,
+ [TD_FAMILY_TIME_ANTISYM_CUBIC] = &time_antisym_cubic,
[TD_FAMILY_SIMPLE_TIME_ANTISYM] = &simple_time_antisym,
};