aboutsummaryrefslogtreecommitdiff
path: root/td_constraints.c
diff options
context:
space:
mode:
Diffstat (limited to 'td_constraints.c')
-rw-r--r--td_constraints.c25
1 files changed, 23 insertions, 2 deletions
diff --git a/td_constraints.c b/td_constraints.c
index 663b83a..dd62150 100644
--- a/td_constraints.c
+++ b/td_constraints.c
@@ -67,7 +67,27 @@ static const TDFamilyDef ae_time_antisym = {
.a_diverge = 0.0092078837427,
};
-#if 0
+static double k_rtheta_eval_simple_time_antisym(TDConstraintEvalContext *ctx,
+ double r, double theta)
+{
+ const double r2 = SQR(r);
+ return ctx->amplitude * r * exp(-r2) * sin(2.0 * theta);
+}
+
+static double k_rtheta_eval_dr_simple_time_antisym(TDConstraintEvalContext *ctx,
+ double r, double theta)
+{
+ const double r2 = SQR(r);
+ return ctx->amplitude * (1.0 - 2.0 * r2) * exp(-r2) * sin(2.0 * theta);
+}
+
+static double k_rtheta_eval_dt_simple_time_antisym(TDConstraintEvalContext *ctx,
+ double r, double theta)
+{
+ const double r2 = SQR(r);
+ return 2.0 * ctx->amplitude * r * exp(-r2) * cos(2.0 * theta);
+}
+
static const TDFamilyDef simple_time_antisym = {
.eval_krt = k_rtheta_eval_simple_time_antisym,
.eval_krt_dr = k_rtheta_eval_dr_simple_time_antisym,
@@ -75,10 +95,10 @@ static const TDFamilyDef simple_time_antisym = {
.a_converge = 1.018918628476058,
.a_diverge = 1.018918628476968,
};
-#endif
static const TDFamilyDef *td_families[] = {
[TD_FAMILY_AE_TIME_ANTISYM] = &ae_time_antisym,
+ [TD_FAMILY_SIMPLE_TIME_ANTISYM] = &simple_time_antisym,
};
static void
@@ -292,4 +312,5 @@ int tdi_constraint_eval(TDConstraintEvalContext *ctx, enum TDConstraintEq eq,
double *out)
{
constraint_funcs[eq](ctx, vars, out);
+ return 0;
}