diff options
-rw-r--r-- | Tools/CodeGen/Kranc.m | 2 | ||||
-rw-r--r-- | Tools/CodeGen/Schedule.m | 7 |
2 files changed, 6 insertions, 3 deletions
diff --git a/Tools/CodeGen/Kranc.m b/Tools/CodeGen/Kranc.m index fd07c53..0c82731 100644 --- a/Tools/CodeGen/Kranc.m +++ b/Tools/CodeGen/Kranc.m @@ -38,7 +38,7 @@ exp, dx, dy, dz, idx, idy, idz} {ConditionalOnKeyword, ConditionalOnKeywords, CollectList, Interior, InteriorNoSync, Boundary, BoundaryWithGhosts, Where, PreDefinitions, -AllowedSymbols, Parameters, ConditionalOnTextuals}; +AllowedSymbols, Parameters, ConditionalOnTextuals, ApplyBCs}; (* Differencing.m *) diff --git a/Tools/CodeGen/Schedule.m b/Tools/CodeGen/Schedule.m index a2d5027..c805a07 100644 --- a/Tools/CodeGen/Schedule.m +++ b/Tools/CodeGen/Schedule.m @@ -93,8 +93,11 @@ scheduleCalc[calc_, groups_] := groupsSetInCalc[calc, groups], {}]; + applyBCs = lookupDefault[calc, ApplyBCs, False]; + Print["applyBCs = ", applyBCs]; userSchedule = lookupDefault[calc, Schedule, Automatic]; - If[userSchedule =!= Automatic, + + If[userSchedule =!= Automatic && !applyBCs, Return[Map[ Join[ { @@ -131,7 +134,7 @@ scheduleCalc[calc_, groups_] := groupSched = { Name -> "group " <> groupName, - SchedulePoint -> "in MoL_PseudoEvolution", + SchedulePoint -> If[applyBCs, First[userSchedule], "in MoL_PseudoEvolution"], SynchronizedGroups -> {}, Language -> "None", Comment -> lookup[calc, Name] |