aboutsummaryrefslogtreecommitdiff
path: root/Tools/CodeGen
diff options
context:
space:
mode:
authorIan Hinder <ian.hinder@aei.mpg.de>2010-10-01 16:20:28 +0200
committerIan Hinder <ian.hinder@aei.mpg.de>2010-10-01 16:20:28 +0200
commit8af3cd57c84f80f3318e13ecde98e1aa16b88bab (patch)
tree454cc5f5aba28c9c80c8df1a029e56f5a5cda6ff /Tools/CodeGen
parent0e5608fe175896710a602aa1944fc4b96e3408dd (diff)
ConservationCalculation.m: Fix a couple of serious bugs
Diffstat (limited to 'Tools/CodeGen')
-rw-r--r--Tools/CodeGen/ConservationCalculation.m4
1 files changed, 2 insertions, 2 deletions
diff --git a/Tools/CodeGen/ConservationCalculation.m b/Tools/CodeGen/ConservationCalculation.m
index f939940..dc740de 100644
--- a/Tools/CodeGen/ConservationCalculation.m
+++ b/Tools/CodeGen/ConservationCalculation.m
@@ -85,7 +85,7 @@ fluxSymbol[v_] :=
(* Return the list of conserved variables in a calculation *)
consVars[calc_] :=
- (Map[First, lookup[calc, Equations]] /. {flux[v_, rest___] :> v})
+ Union[(Map[First, lookup[calc, Equations]] /. {flux[v_, rest___] :> v})]
(* Return the list of variables to reconstruct in a calculation *)
primitiveVars[calc_] :=
@@ -129,7 +129,7 @@ hlle[flux[q_, j_] -> frhs_, vars_] :=
Module[{},
{
leftSymbol[fluxSymbol[q]] -> replaceVars[frhs, vars, leftSymbol],
- rightSymbol[fluxSymbol[q]] -> replaceVars[frhs, vars, rightSymbol],
+ rightSymbol[fluxSymbol[q]] -> replaceVars[frhs, vars, Function[v,ShiftMinus[rightSymbol[v],j]]],
fluxSymbol[q] ->
1/2(leftSymbol[fluxSymbol[q]] + rightSymbol[fluxSymbol[q]] +
hlleAlpha(ShiftMinus[rightSymbol[q],j] - leftSymbol[q]))