diff options
author | Ian Hinder <ian.hinder@aei.mpg.de> | 2013-09-09 17:59:24 +0200 |
---|---|---|
committer | Ian Hinder <ian.hinder@aei.mpg.de> | 2013-09-09 17:59:24 +0200 |
commit | b5ceb9a9484777095620be4570f260804323b8a5 (patch) | |
tree | 8d98519092f584031a1f9b9201cdfe5b5b3fdede | |
parent | 589a4b326b02ebf5fb6dc3fc155a2554c1434ae6 (diff) |
Calculation.m: Move CalculationEvolvedVars into MoL.m as EvolvedVariables
-rw-r--r-- | Tools/CodeGen/Calculation.m | 9 | ||||
-rw-r--r-- | Tools/CodeGen/KrancThorn.m | 4 | ||||
-rw-r--r-- | Tools/CodeGen/MoL.m | 11 |
3 files changed, 12 insertions, 12 deletions
diff --git a/Tools/CodeGen/Calculation.m b/Tools/CodeGen/Calculation.m index 46f705b..2bcd293 100644 --- a/Tools/CodeGen/Calculation.m +++ b/Tools/CodeGen/Calculation.m @@ -44,7 +44,6 @@ RemoveUnusedShorthands; VerifyCalculation; CalculationSymbols; VerifyNewCalculation; -CalculationEvolvedVars; Begin["`Private`"]; @@ -468,14 +467,6 @@ VerifyNewCalculation[calc_] := VerifyListContent[lookup[calc, Equations], Rule," while checking the calculation called " <> ToString[calcName]], ThrowError["Invalid Calculation structure. Must contain Equations element: " <> ToString[calc]]]]; -CalculationEvolvedVars[calc_] := - Module[{eqs, evolved, lhss}, - VerifyNewCalculation[calc]; - eqs = lookup[calc, Equations]; - lhss = Map[First, eqs]; - evolved = Cases[lhss, dot[v_] -> v]; - Return[evolved]]; - End[]; EndPackage[]; diff --git a/Tools/CodeGen/KrancThorn.m b/Tools/CodeGen/KrancThorn.m index ece9df3..efe0292 100644 --- a/Tools/CodeGen/KrancThorn.m +++ b/Tools/CodeGen/KrancThorn.m @@ -337,7 +337,7 @@ extractEvolvedGroups[declaredGroups_, calcs_, groups_] := VerifyList[calcs]; Map[VerifyNewCalculation, calcs]; allVars = variablesFromGroups[declaredGroups, groups]; - evolvedVars = Apply[Join, Map[CalculationEvolvedVars, calcs]]; + evolvedVars = Apply[Join, Map[EvolvedVariables, calcs]]; evolvedVars = Intersection[allVars, evolvedVars]; evolvedGroups = containingGroups[evolvedVars, groups]; Return[evolvedGroups]]; @@ -350,7 +350,7 @@ extractNonevolvedGroups[declaredGroups_, calcs_, groups_] := Map[VerifyNewCalculation, calcs]; allVars = variablesFromGroups[declaredGroups, groups]; - evolvedVars = Apply[Join, Map[CalculationEvolvedVars, calcs]]; + evolvedVars = Apply[Join, Map[EvolvedVariables, calcs]]; evolvedGroups = containingGroups[evolvedVars, groups]; nonevolvedGroups = Complement[declaredGroups, evolvedGroups]; diff --git a/Tools/CodeGen/MoL.m b/Tools/CodeGen/MoL.m index 88bcbdb..caca9b8 100644 --- a/Tools/CodeGen/MoL.m +++ b/Tools/CodeGen/MoL.m @@ -21,12 +21,13 @@ BeginPackage[ "MoL`", {"Errors`", "Helpers`", "Kranc`", "CodeGenKranc`", "MapLookup`", "CodeGenCactus`", - "CodeGen`", "CodeGenC`", "KrancGroups`"}]; + "CodeGen`", "CodeGenC`", "KrancGroups`", "Calculation`"}]; CreateKrancMoLRegister; CreateMoLBoundariesSource::usage = ""; CreateMoLExcisionSource::usage = ""; MoLReplaceDots; +EvolvedVariables; Begin["`Private`"]; @@ -507,6 +508,14 @@ body DefFn[MoLReplaceDots[x_] := x /. (dot[y_] :> Symbol[ToString[y] <> "rhs"])]; +EvolvedVariables[calc_] := + Module[{eqs, evolved, lhss}, + VerifyNewCalculation[calc]; + eqs = GetEquations[calc]; + lhss = Map[First, eqs]; + evolved = Cases[lhss, dot[v_] -> v]; + Return[evolved]]; + End[]; EndPackage[]; |