Skip to content

Commit 2b308a0

Browse files
Merge pull request #82 from isaacsas/no-jacobian-kwarg
kwargs to disable generation of jacobian and symfuncs
2 parents 099a7f9 + 434a500 commit 2b308a0

File tree

2 files changed

+6
-5
lines changed

2 files changed

+6
-5
lines changed

src/maketype.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -122,10 +122,10 @@ function gentypefun_exprs(name; esc_exprs=true, gen_inplace=true, gen_outofplace
122122
exprs
123123
end
124124

125-
function addodes!(rn::DiffEqBase.AbstractReactionNetwork)
125+
function addodes!(rn::DiffEqBase.AbstractReactionNetwork; kwargs...)
126126
@unpack reactions, syms_to_ints, params_to_ints, syms = rn
127127

128-
(f_expr, f, f_rhs, symjac, f_symfuncs) = genode_exprs(reactions, syms_to_ints, params_to_ints, syms)
128+
(f_expr, f, f_rhs, symjac, f_symfuncs) = genode_exprs(reactions, syms_to_ints, params_to_ints, syms; kwargs...)
129129
rn.f = eval(f)
130130
rn.f_func = f_rhs
131131
rn.symjac = eval(symjac)

src/reaction_network.jl

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -150,12 +150,13 @@ function gensde_exprs(reactions, reactants, parameters, scale_noise)
150150
end
151151

152152
# ODE expressions
153-
function genode_exprs(reactions, reactants, parameters, syms)
153+
function genode_exprs(reactions, reactants, parameters, syms; build_symjac=true,
154+
build_symfuncs=true)
154155
f_expr = get_f(reactions, reactants)
155156
f = make_func(f_expr, reactants, parameters)
156157
f_rhs = [element.args[2] for element in f_expr]
157-
symjac = Expr(:quote, calculate_jac(deepcopy(f_rhs), syms))
158-
f_symfuncs = hcat([SymEngine.Basic(f) for f in f_rhs])
158+
symjac = build_symjac ? Expr(:quote, calculate_jac(deepcopy(f_rhs), syms)) : nothing
159+
f_symfuncs = build_symfuncs ? hcat([SymEngine.Basic(f) for f in f_rhs]) : nothing
159160

160161
(f_expr,f,f_rhs,symjac,f_symfuncs)
161162
end

0 commit comments

Comments
 (0)