You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
error("An non integer ($(arguments(expr)[2])) was found as a variable exponent. Non-integer exponents are not supported for homotopy continuation based steady state finding.")
72
76
end
@@ -95,7 +99,7 @@ function reorder_sols!(sols, ss_poly, rs::ReactionSystem)
95
99
end
96
100
97
101
# Filters away solutions with negative species concentrations (and for neg_thres < val < 0.0, sets val=0.0).
98
-
functionfilter_negative_f(sols; neg_thres=-1e-20)
102
+
functionfilter_negative_f(sols; neg_thres=-1e-20)
99
103
for sol in sols, idx in1:length(sol)
100
104
(neg_thres < sol[idx] <0) && (sol[idx] =0)
101
105
end
@@ -104,9 +108,13 @@ end
104
108
105
109
# Sometimes (when polynomials are created from coupled CRN/DAEs), the steady state polynomial have the wrong type.
106
110
# This converts it to the correct type, which homotopy continuation can handle.
# Creates the ODESystem corresponding to the ReactionSystem (expanding functions and flattening it).
159
168
# Creates a list of the systems all symbols (unknowns and parameters).
160
-
ModelingToolkit.iscomplete(rs) ||error("Identifiability should only be computed for complete systems. A ReactionSystem can be marked as complete using the `complete` function.")
169
+
ModelingToolkit.iscomplete(rs) ||
170
+
error("Identifiability should only be computed for complete systems. A ReactionSystem can be marked as complete using the `complete` function.")
conseqs; ignore_no_measured_warn =false) where {T, S}
182
193
# Warning if the user didn't give any measured quantities.
183
-
if ignore_no_measured_warn ||isempty(measured_quantities)
194
+
if ignore_no_measured_warn ||isempty(measured_quantities)
184
195
@warn"No measured quantity provided to the `measured_quantities` argument, any further identifiability analysis will likely fail. You can disable this warning by setting `ignore_no_measured_warn=true`."
185
196
end
186
197
@@ -192,7 +203,8 @@ function make_measured_quantities(rs::ReactionSystem, measured_quantities::Vecto
192
203
# Creates one internal observation variable for each measured quantity (`___internal_observables`).
193
204
# Creates a vector of equations, setting each measured quantity equal to one observation variable.
194
205
@variables t (___internal_observables(Catalyst.get_iv(rs)))[1:length(mqs)]
195
-
return Equation[(q isa Equation) ? q : (___internal_observables[i] ~ q) for (i,q) inenumerate(mqs)]
206
+
return Equation[(q isa Equation) ? q : (___internal_observables[i] ~ q)
207
+
for (i, q) inenumerate(mqs)]
196
208
end
197
209
198
210
# Creates the functions that we wish to check for identifiability.
0 commit comments