Skip to content

Commit f3dca6d

Browse files
refactor: fix CacheWriter codegen
We do not need to pass observed equations anymore, `build_function_wrapper` substitutes them in directly.
1 parent c79aed4 commit f3dca6d

1 file changed

Lines changed: 4 additions & 5 deletions

File tree

src/problems/sccnonlinearproblem.jl

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,11 @@ const SCCCacheVarsExprsElT = Dict{TypeT, Vector{SymbolicT}}
1010

1111
function CacheWriter(
1212
sys::AbstractSystem, buffer_types::Vector{TypeT},
13-
exprs::SCCCacheVarsExprsElT, solsyms, obseqs::Vector{Equation};
13+
exprs::SCCCacheVarsExprsElT, solsyms;
1414
eval_expression = false, eval_module = @__MODULE__, cse = true, sparse = false
1515
)
1616
ps = parameters(sys; initial_parameters = true)
1717
rps = reorder_parameters(sys, ps)
18-
obs_assigns = [eq.lhs eq.rhs for eq in obseqs]
1918
body = map(eachindex(buffer_types), buffer_types) do i, T
2019
Symbol(:tmp, i) SetArray(true, :(out[$i]), get(exprs, T, []))
2120
end
@@ -31,8 +30,8 @@ function CacheWriter(
3130
sys, nothing, :out,
3231
DestructuredArgs(DestructuredArgs.(solsyms), generated_argument_name(1)),
3332
rps...; p_start = 3, p_end = length(rps) + 2,
34-
expression = Val{true}, add_observed = false, cse,
35-
extra_assignments = [array_assignments; obs_assigns; body],
33+
expression = Val{true}, cse,
34+
extra_assignments = [array_assignments; body],
3635
iip_config = (true, false)
3736
)
3837
fn = eval_or_rgf(fn; eval_expression, eval_module)
@@ -553,7 +552,7 @@ function SciMLBase.SCCNonlinearProblem{iip}(
553552
push!(
554553
explicitfuns,
555554
CacheWriter(
556-
sys, decomposition.cachetypes, cacheexprs, solsyms, obs[_prevobsidxs];
555+
sys, decomposition.cachetypes, cacheexprs, solsyms;
557556
eval_expression, eval_module, cse
558557
)
559558
)

0 commit comments

Comments
 (0)