From 03496443003f6d1f9645b6dfe1d0baccb0fbd6b9 Mon Sep 17 00:00:00 2001 From: Ian Hinder Date: Thu, 12 Sep 2013 22:19:52 +0200 Subject: KrancThorn.m: Localise remaining MoL variables --- Tools/CodeGen/KrancThorn.m | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/Tools/CodeGen/KrancThorn.m b/Tools/CodeGen/KrancThorn.m index ac6746e..b9b6147 100644 --- a/Tools/CodeGen/KrancThorn.m +++ b/Tools/CodeGen/KrancThorn.m @@ -231,6 +231,11 @@ CreateKrancThorn[groupsOrig_, parentDirectory_, thornName_, opts:OptionsPattern[ MoL ------------------------------------------------------------------------ *) + Module[ + {evolvedGroups, nonevolvedGroups, evolvedODEGroups, + nonevolvedODEGroups, rhsGroupDefinitions, + rhsODEGroupDefinitions, rhsGroups, rhsODEGroups}, + groups = MoLProcessGroups[declaredGroups, calcs, groups, evolutionTimelevels]; @@ -244,15 +249,17 @@ CreateKrancThorn[groupsOrig_, parentDirectory_, thornName_, opts:OptionsPattern[ (* Replace the dots in the calculation *) calcs = MoLReplaceDots[calcs]; - Module[ - {rhsGroupDefinitions = MoLRHSGroupDefinitions[groups, evolvedGroups], - rhsODEGroupDefinitions = MoLRHSODEGroupDefinitions[groups, evolvedODEGroups]}, + rhsGroupDefinitions = MoLRHSGroupDefinitions[groups, evolvedGroups]; + rhsODEGroupDefinitions = MoLRHSODEGroupDefinitions[groups, evolvedODEGroups]; - (* Add the RHS groups *) - groups = Join[groups, rhsGroupDefinitions, rhsODEGroupDefinitions]; + (* Add the RHS groups *) + groups = Join[groups, rhsGroupDefinitions, rhsODEGroupDefinitions]; - rhsGroups = Map[groupName, rhsGroupDefinitions]; - rhsODEGroups = Map[groupName, rhsODEGroupDefinitions]]; + rhsGroups = Map[groupName, rhsGroupDefinitions]; + rhsODEGroups = Map[groupName, rhsODEGroupDefinitions]; + + (* This possibly shouldn't be in MoL but under ODEs instead *) + calcs = Map[Append[#, ODEGroups -> Join[odeGroups, rhsODEGroups]] &, calcs]; declaredGroups = Join[declaredGroups, rhsGroups, odeGroups, rhsODEGroups]; @@ -264,7 +271,7 @@ CreateKrancThorn[groupsOrig_, parentDirectory_, thornName_, opts:OptionsPattern[ {Filename -> "RegisterMoL.cc", Contents -> CreateKrancMoLRegister[ evolvedGroups, nonevolvedGroups, evolvedODEGroups, - nonevolvedODEGroups, groups, implementation, thornName]}]; + nonevolvedODEGroups, groups, implementation, thornName]}]]; (* ------------------------------------------------------------------------ Add options to calculations @@ -272,8 +279,6 @@ CreateKrancThorn[groupsOrig_, parentDirectory_, thornName_, opts:OptionsPattern[ calcs = Map[Join[#, {Groups -> groups}] &, calcs]; - calcs = Map[Append[#, ODEGroups -> Join[odeGroups, rhsODEGroups]] &, calcs]; - calcs = Map[Append[#, Parameters -> AllNumericParameters[parameters]] &, calcs]; (* ------------------------------------------------------------------------ -- cgit v1.2.3