Skip to content

Commit dd9574a

Browse files
Factor out branching
1 parent 9f7d443 commit dd9574a

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

src/solvers/ark.jl

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,12 @@ function init_cache(
5656
L = ntuple(i -> zero(prob.u0), Nstages)
5757
R = ntuple(i -> zero(prob.u0), Nstages)
5858

59-
if prob.f isa DiffEqBase.ODEFunction
60-
W = EulerOperator(prob.f.jvp, -dt * Aimpl[2, 2], prob.p, prob.tspan[1])
59+
f = if prob.f isa DiffEqBase.ODEFunction
60+
prob.f.jvp
6161
elseif prob.f isa DiffEqBase.SplitFunction
62-
W = EulerOperator(prob.f.f1, -dt * Aimpl[2, 2], prob.p, prob.tspan[1])
62+
prob.f.f1
6363
end
64+
W = EulerOperator(f, -dt * Aimpl[2, 2], prob.p, prob.tspan[1])
6465
linsolve! = alg.linsolve(Val{:init}, W, prob.u0; kwargs...)
6566

6667
AdditiveRungeKuttaFullCache(U, L, R, tab, W, linsolve!)

0 commit comments

Comments
 (0)