Skip to content

Commit

Permalink
Merge branch 'devel'
Browse files Browse the repository at this point in the history
Mathematica 10 support
  • Loading branch information
phantomas1234 committed Aug 1, 2014
2 parents 57c23dd + 0dbc8e1 commit 35aa4b6
Show file tree
Hide file tree
Showing 12 changed files with 152,018 additions and 134,784 deletions.
8 changes: 4 additions & 4 deletions AutomaticUnits/AutomaticUnits.m
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@
OptionValue[UsageMessage]
];
Which[
Head[$ToFundamental]===Dispatch,existingrules=First[$ToFundamental];dispatchedq=True,
Head[$ToFundamental]===Dispatch,existingrules=Normal[$ToFundamental];dispatchedq=True,
Head[$ToFundamental]===List,existingrules=$ToFundamental,
True,existingrules={}];
(*If unit name is already decalared, issue warning and over-write definition*)
Expand All @@ -122,7 +122,7 @@
(*If relationship is exact, store it explicitely *)
If[Precision[val[[1]]]===Infinity,
Which[
Head[$ExactUnitRules]===Dispatch,existingexactrules=First[$ExactUnitRules];dispatchedq=True,
Head[$ExactUnitRules]===Dispatch,existingexactrules=Normal[$ExactUnitRules];dispatchedq=True,
Head[$ExactUnitRules]===List,existingexactrules=$ExactUnitRules,
True,existingrules={}
];
Expand Down Expand Up @@ -155,9 +155,9 @@
application of Dispatch by doing it just once at the end. This gives much faster package initialization*)
FastGroupDeclareUnit[expr_]:=Block[{$UnitInitialization=True,newfund,newexact,junk},
(*Make sure that the tables are plain lists*)
If[Head[$ToFundamental]===Dispatch,$ToFundamental=First[$ToFundamental]];
If[Head[$ToFundamental]===Dispatch,$ToFundamental=Normal[$ToFundamental]];
If[Head[$ToFundamental]===List,$ToFundamental={}];
If[Head[$ExactUnitRules]===Dispatch,$ExactUnitRules=First[$ExactUnitRules]];
If[Head[$ExactUnitRules]===Dispatch,$ExactUnitRules=Normal[$ExactUnitRules]];
If[Head[$ExactUnitRules]===List,$ExactUnitRules={}];

(*expr should be a CompoundExpression of DeclareUnit expressions*)
Expand Down
25 changes: 25 additions & 0 deletions Tests/RegulationRelatedTests.mt
Original file line number Diff line number Diff line change
Expand Up @@ -35,3 +35,28 @@ Test[
,
TestID->"RegulationRelatedTests-20120529-O4Y3U2"
]

enzymeModules = {"Sequential_Ordered_BiBi" ->
constructEnzymeModule[
Mechanism -> {"E_E[c] + A[c] <=> E_E[c]&A",
"E_E[c]&A + B[c] <=> E_E[c]&A&B", "E_E[c]&A&B <=> E_E[c]&Q&P",
"E_E[c]&Q&P <=> E_E[c]&Q + P[c]",
"E_E[c]&Q <=> E_E[c] + Q[c]"}, Activators -> {},
ActivationSites -> 0, Inhibitors -> {}, InhibitionSites -> 0]
};

Test[
getEnzymeSteadyStateEquations[enzymeModules[[1, 2]]]
,
Import["Tests/TestData/enzModuleSSequations.m"]
,
TestID->"RegulationRelatedTests-20140209-S6U4N2"
]

Test[
solveEnzymeSteadyStateEquations[enzymeModules[[1, 2]]]
,
Import["Tests/TestData/enzModuleSSsolution.m"]
,
TestID->"RegulationRelatedTests-20140209-A7L1C8"
]
125 changes: 125 additions & 0 deletions Tests/TestData/enzModuleSSequations.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
(* Created by Wolfram Mathematica 9.0 : www.wolfram.com *)
{enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" -> {},
"BoundActivators" -> {}, "BoundInhibitors" -> {},
"CatalyticSites" -> Infinity, "ActivationSites" -> 0,
"InhibitionSites" -> 0}] ->
0 ==
-((-(enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["A", "c"]},
"BoundActivators" -> {}, "BoundInhibitors" -> {},
"CatalyticSites" -> Infinity, "ActivationSites" -> 0,
"InhibitionSites" -> 0}]/Keq["E1"]) +
enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" -> {},
"BoundActivators" -> {}, "BoundInhibitors" -> {},
"CatalyticSites" -> Infinity, "ActivationSites" -> 0,
"InhibitionSites" -> 0}]*metabolite["A", "c"])*
parameter["Volume", "c"]*rateconst["E1", True]) +
(enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["Q", "c"]}, "BoundActivators" ->
{}, "BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}] -
(enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" -> {},
"BoundActivators" -> {}, "BoundInhibitors" -> {},
"CatalyticSites" -> Infinity, "ActivationSites" -> 0,
"InhibitionSites" -> 0}]*metabolite["Q", "c"])/Keq["E2"])*
parameter["Volume", "c"]*rateconst["E2", True],
enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["A", "c"]}, "BoundActivators" -> {},
"BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}] ->
0 == (-(enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["A", "c"]}, "BoundActivators" ->
{}, "BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}]/Keq["E1"]) +
enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" -> {},
"BoundActivators" -> {}, "BoundInhibitors" -> {},
"CatalyticSites" -> Infinity, "ActivationSites" -> 0,
"InhibitionSites" -> 0}]*metabolite["A", "c"])*
parameter["Volume", "c"]*rateconst["E1", True] -
(-(enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["A", "c"],
Toolbox`Private`wrap[metabolite]["B", "c"]}, "BoundActivators" ->
{}, "BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}]/Keq["E3"]) +
enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["A", "c"]}, "BoundActivators" ->
{}, "BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}]*
metabolite["B", "c"])*parameter["Volume", "c"]*rateconst["E3", True],
enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["Q", "c"]}, "BoundActivators" -> {},
"BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}] ->
0 == -((enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["Q", "c"]}, "BoundActivators" ->
{}, "BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}] -
(enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" -> {},
"BoundActivators" -> {}, "BoundInhibitors" -> {},
"CatalyticSites" -> Infinity, "ActivationSites" -> 0,
"InhibitionSites" -> 0}]*metabolite["Q", "c"])/Keq["E2"])*
parameter["Volume", "c"]*rateconst["E2", True]) +
(enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["Q", "c"],
Toolbox`Private`wrap[metabolite]["P", "c"]}, "BoundActivators" ->
{}, "BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}] -
(enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["Q", "c"]}, "BoundActivators" ->
{}, "BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}]*
metabolite["P", "c"])/Keq["E4"])*parameter["Volume", "c"]*
rateconst["E4", True],
enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["A", "c"],
Toolbox`Private`wrap[metabolite]["B", "c"]}, "BoundActivators" -> {},
"BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}] ->
0 == (-(enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["A", "c"],
Toolbox`Private`wrap[metabolite]["B", "c"]}, "BoundActivators" ->
{}, "BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}]/Keq["E3"]) +
enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["A", "c"]}, "BoundActivators" ->
{}, "BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}]*
metabolite["B", "c"])*parameter["Volume", "c"]*rateconst["E3", True] -
(enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["A", "c"],
Toolbox`Private`wrap[metabolite]["B", "c"]}, "BoundActivators" ->
{}, "BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}] -
enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["Q", "c"],
Toolbox`Private`wrap[metabolite]["P", "c"]}, "BoundActivators" ->
{}, "BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}]/Keq["E5"])*
parameter["Volume", "c"]*rateconst["E5", True],
enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["Q", "c"],
Toolbox`Private`wrap[metabolite]["P", "c"]}, "BoundActivators" -> {},
"BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}] ->
0 == -((enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["Q", "c"],
Toolbox`Private`wrap[metabolite]["P", "c"]}, "BoundActivators" ->
{}, "BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}] -
(enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["Q", "c"]},
"BoundActivators" -> {}, "BoundInhibitors" -> {},
"CatalyticSites" -> Infinity, "ActivationSites" -> 0,
"InhibitionSites" -> 0}]*metabolite["P", "c"])/Keq["E4"])*
parameter["Volume", "c"]*rateconst["E4", True]) +
(enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["A", "c"],
Toolbox`Private`wrap[metabolite]["B", "c"]}, "BoundActivators" ->
{}, "BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}] -
enzyme[{"ID" -> "E", "Compartment" -> "c", "BoundCatalytic" ->
{Toolbox`Private`wrap[metabolite]["Q", "c"],
Toolbox`Private`wrap[metabolite]["P", "c"]}, "BoundActivators" ->
{}, "BoundInhibitors" -> {}, "CatalyticSites" -> Infinity,
"ActivationSites" -> 0, "InhibitionSites" -> 0}]/Keq["E5"])*
parameter["Volume", "c"]*rateconst["E5", True]}
Loading

0 comments on commit 35aa4b6

Please sign in to comment.