From cf78f88818d86cb32cce6eabb7b0fb7fcb2414d5 Mon Sep 17 00:00:00 2001 From: Ian Hinder Date: Fri, 13 Sep 2013 18:34:56 +0200 Subject: Move Jacobian checking call from KrancThorn.m to Jacobian.m --- Tools/CodeGen/Jacobian.m | 13 ++++++++++++- Tools/CodeGen/KrancThorn.m | 4 ++-- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/Tools/CodeGen/Jacobian.m b/Tools/CodeGen/Jacobian.m index ea74e05..db787b6 100644 --- a/Tools/CodeGen/Jacobian.m +++ b/Tools/CodeGen/Jacobian.m @@ -19,7 +19,7 @@ *) BeginPackage["Jacobian`", {"Errors`", "Helpers`", "Kranc`", "Differencing`", "MapLookup`", - "CodeGen`", "CodeGenC`", "KrancGroups`"}]; + "CodeGen`", "CodeGenC`", "KrancGroups`", "Code`", "Object`"}]; JacobianQ; InsertJacobian; @@ -29,6 +29,7 @@ JacobianSymbols; JacobianGroups; JacobianCheckGroups; JacobianConditionalGridFunctions; +JacobianProcessCode; Begin["`Private`"]; @@ -194,6 +195,16 @@ JacobianConditionalGridFunctions[] := "use_jacobian", None}; +Options[JacobianProcessCode] = ThornOptions; + +DefFn[ + JacobianProcessCode[c_Code, opts:OptionsPattern[]] := + Module[ + {}, + If[OptionValue[UseJacobian], + JacobianCheckGroups[GetObjectField[c, "Groups"]]]; + c]]; + End[]; EndPackage[]; diff --git a/Tools/CodeGen/KrancThorn.m b/Tools/CodeGen/KrancThorn.m index 5125290..0011e37 100644 --- a/Tools/CodeGen/KrancThorn.m +++ b/Tools/CodeGen/KrancThorn.m @@ -190,10 +190,10 @@ CreateKrancThorn[groupsOrig_, parentDirectory_, thornName_, opts:OptionsPattern[ GetObjectField[c, "Calculations"]],1]]]]; (* ------------------------------------------------------------------------ - Check input parameters + Jacobian ------------------------------------------------------------------------ *) - If[OptionValue[UseJacobian], JacobianCheckGroups[GetObjectField[c, "Groups"]]]; + c = JacobianProcessCode[c, opts]; (* ------------------------------------------------------------------------ Conservation Calculations -- cgit v1.2.3