aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Hinder <ian.hinder@aei.mpg.de>2013-09-10 17:09:26 +0200
committerIan Hinder <ian.hinder@aei.mpg.de>2013-09-10 17:09:26 +0200
commit368992634b4e01319ca1cf5b05114f4afb7ef513 (patch)
tree9a2d75b0d9731a34e952c6bb13104bee865657ce
parent6e9cbe2d44db44045455672372e938755fbff13b (diff)
KrancThorn.m: Add group options to indicate that a group is an ODE group
-rw-r--r--Tools/CodeGen/KrancThorn.m10
1 files changed, 10 insertions, 0 deletions
diff --git a/Tools/CodeGen/KrancThorn.m b/Tools/CodeGen/KrancThorn.m
index 33cf599..aca6d46 100644
--- a/Tools/CodeGen/KrancThorn.m
+++ b/Tools/CodeGen/KrancThorn.m
@@ -48,6 +48,13 @@ Module[{used, unrecognized},
If[Length[unrecognized] > 0,
ThrowError["Unrecognized named arguments: ", unrecognized]]];
+DefFn[
+ processODEGroups[odeGroups_List, groups_List] :=
+ Map[If[MemberQ[odeGroups, groupName[#]],
+ (* Print["Adding grid type array to ", groupName[#]]; *)
+ Append[#, GridType -> "array"],
+ #] &, groups]];
+
(* --------------------------------------------------------------------------
Thorn generation (main entry point for non-tensorial thorns)
-------------------------------------------------------------------------- *)
@@ -161,6 +168,9 @@ CreateKrancThorn[groupsOrig_, parentDirectory_, thornName_, opts:OptionsPattern[
Map[ConservationCalculationDeclaredGroups, consCalcsIn],1];
groups = Join[groups, consGroups];
+
+ groups = processODEGroups[odeGroups, groups];
+
declaredGroups = Join[declaredGroups, Map[groupName, consGroups]];
declaredGroups = DeleteDuplicates[Join[declaredGroups, Flatten[Map[Map[groupName,lookup[#,LocalGroups,{}]] &, calcs],1]]];