Skip to content

Commit d74d85d

Browse files
Merge pull request #598 from oameye/OrdinaryDiffEqCore
build: replace OrdinaryDiffEq with OrdinaryDiffEqCore
2 parents a537a5b + 7f78540 commit d74d85d

16 files changed

+123
-118
lines changed

Project.toml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,9 @@ LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
2020
Logging = "56ddb016-857b-54e1-b83d-db4d58db5568"
2121
MuladdMacro = "46d2c3a1-f734-5fdb-9937-b9b9aeba4221"
2222
NLsolve = "2774e3e8-f4cf-5e23-947b-6d7e65073b56"
23-
OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed"
2423
OrdinaryDiffEqCore = "bbf590c4-e513-4bbe-9b18-05decba2e5d8"
24+
OrdinaryDiffEqDifferentiation = "4302a76b-040a-498a-8c04-15b101fed76b"
25+
OrdinaryDiffEqNonlinearSolve = "127b3ac7-2247-4354-8eb6-78cf4e7c58e8"
2526
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
2627
RandomNumbers = "e6cf234a-135c-5ec9-84dd-332b85af5143"
2728
RecursiveArrayTools = "731186ca-8d62-57ce-b412-fbd966d074cd"
@@ -68,6 +69,7 @@ julia = "1.10"
6869
DiffEqCallbacks = "459566f4-90b8-5000-8ac3-15dfb0a30def"
6970
DiffEqDevTools = "f3b72e0c-5b89-59e1-b016-84e28bfd966d"
7071
LinearSolve = "7ed4a6bd-45f5-4d41-b270-4a48e9bafcae"
72+
OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed"
7173
ModelingToolkit = "961ee093-0014-501f-94e3-6117800e7a78"
7274
Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
7375
SDEProblemLibrary = "c72e72a9-a271-4b2b-8966-303ed956772e"
@@ -77,4 +79,4 @@ Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"
7779
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
7880

7981
[targets]
80-
test = ["DiffEqCallbacks", "DiffEqDevTools", "SDEProblemLibrary", "LinearSolve", "ModelingToolkit", "Pkg", "SafeTestsets", "SparseArrays", "Statistics", "Test"]
82+
test = ["DiffEqCallbacks", "DiffEqDevTools", "SDEProblemLibrary", "LinearSolve", "ModelingToolkit", "Pkg", "SafeTestsets", "SparseArrays", "Statistics", "OrdinaryDiffEq", "Test"]

src/StochasticDiffEq.jl

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ using DocStringExtensions
1111

1212
import ADTypes
1313

14-
import OrdinaryDiffEq
15-
import OrdinaryDiffEq: default_controller, isstandard, ispredictive,
14+
import OrdinaryDiffEqCore
15+
import OrdinaryDiffEqCore: default_controller, isstandard, ispredictive,
1616
beta2_default, beta1_default, gamma_default,
1717
qmin_default, qmax_default, qsteady_min_default, qsteady_max_default,
1818
stepsize_controller!, accept_step_controller, step_accept_controller!,
@@ -37,7 +37,7 @@ using DocStringExtensions
3737
using LinearAlgebra, Random
3838

3939
import ForwardDiff.Dual
40-
40+
4141
import FastPower
4242

4343
import DiffEqBase: step!, initialize!, DEAlgorithm,
@@ -56,20 +56,23 @@ using DocStringExtensions
5656

5757
using DiffEqBase: check_error!, is_diagonal_noise, @..
5858

59-
using OrdinaryDiffEq: nlsolvefail, isnewton, set_new_W!, get_W, _vec, _reshape
59+
using OrdinaryDiffEqNonlinearSolve: nlsolvefail, isnewton
60+
using OrdinaryDiffEqCore: set_new_W!, get_W, _vec, _reshape
6061

61-
using OrdinaryDiffEq: NLSolver
62+
using OrdinaryDiffEqNonlinearSolve: NLSolver
6263

6364
import OrdinaryDiffEqCore
65+
import OrdinaryDiffEqDifferentiation
66+
import OrdinaryDiffEqNonlinearSolve
6467

65-
if isdefined(OrdinaryDiffEq,:FastConvergence)
66-
using OrdinaryDiffEq:
68+
if isdefined(OrdinaryDiffEqCore,:FastConvergence)
69+
using OrdinaryDiffEqCore:
6770
FastConvergence, Convergence, SlowConvergence, VerySlowConvergence, Divergence
6871

69-
import OrdinaryDiffEq:
72+
import OrdinaryDiffEqCore:
7073
calculate_residuals, calculate_residuals!, nlsolve_f, unwrap_cache, islinear
7174

72-
using OrdinaryDiffEq: NLFunctional, NLAnderson, NLNewton
75+
using OrdinaryDiffEqNonlinearSolve: NLFunctional, NLAnderson, NLNewton
7376
else
7477
using DiffEqBase:
7578
FastConvergence, Convergence, SlowConvergence, VerySlowConvergence, Divergence

src/alg_utils.jl

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ SciMLBase.isdiscrete(alg::StochasticDiffEqJumpAlgorithm) = true
77

88
SciMLBase.forwarddiffs_model(alg::Union{StochasticDiffEqNewtonAlgorithm,
99
StochasticDiffEqNewtonAdaptiveAlgorithm,StochasticDiffEqJumpNewtonAdaptiveAlgorithm,
10-
StochasticDiffEqJumpNewtonDiffusionAdaptiveAlgorithm}) = OrdinaryDiffEq.alg_autodiff(alg)
10+
StochasticDiffEqJumpNewtonDiffusionAdaptiveAlgorithm}) = OrdinaryDiffEqCore.alg_autodiff(alg)
1111

1212
# Required for initialization, because ODECore._initialize_dae! calls it during
1313
# OverrideInit
@@ -288,31 +288,31 @@ alg_needs_extra_process(alg::PL1WM) = true
288288
alg_needs_extra_process(alg::NON) = true
289289
alg_needs_extra_process(alg::NON2) = true
290290

291-
OrdinaryDiffEq._alg_autodiff(alg::StochasticDiffEqNewtonAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val{AD}()
292-
OrdinaryDiffEq._alg_autodiff(alg::StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val{AD}()
293-
OrdinaryDiffEq._alg_autodiff(alg::StochasticDiffEqJumpNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val{AD}()
294-
OrdinaryDiffEq._alg_autodiff(alg::StochasticDiffEqJumpNewtonDiffusionAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val{AD}()
291+
OrdinaryDiffEqDifferentiation._alg_autodiff(alg::StochasticDiffEqNewtonAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val{AD}()
292+
OrdinaryDiffEqDifferentiation._alg_autodiff(alg::StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val{AD}()
293+
OrdinaryDiffEqDifferentiation._alg_autodiff(alg::StochasticDiffEqJumpNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val{AD}()
294+
OrdinaryDiffEqDifferentiation._alg_autodiff(alg::StochasticDiffEqJumpNewtonDiffusionAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val{AD}()
295295

296-
OrdinaryDiffEq.get_current_alg_autodiff(alg::StochasticDiffEqCompositeAlgorithm, cache) = OrdinaryDiffEq.alg_autodiff(alg.algs[cache.current])
296+
OrdinaryDiffEqCore.get_current_alg_autodiff(alg::StochasticDiffEqCompositeAlgorithm, cache) = OrdinaryDiffEqCore.alg_autodiff(alg.algs[cache.current])
297297

298-
OrdinaryDiffEq.get_chunksize(alg::StochasticDiffEqNewtonAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val(CS)
299-
OrdinaryDiffEq.get_chunksize(alg::StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val(CS)
300-
OrdinaryDiffEq.get_chunksize(alg::StochasticDiffEqJumpNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val(CS)
301-
OrdinaryDiffEq.get_chunksize(alg::StochasticDiffEqJumpNewtonDiffusionAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val(CS)
298+
OrdinaryDiffEqCore.get_chunksize(alg::StochasticDiffEqNewtonAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val(CS)
299+
OrdinaryDiffEqCore.get_chunksize(alg::StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val(CS)
300+
OrdinaryDiffEqCore.get_chunksize(alg::StochasticDiffEqJumpNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val(CS)
301+
OrdinaryDiffEqCore.get_chunksize(alg::StochasticDiffEqJumpNewtonDiffusionAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val(CS)
302302

303-
@static if isdefined(OrdinaryDiffEq, :standardtag)
304-
OrdinaryDiffEq.standardtag(alg::Union{StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller},
303+
@static if isdefined(OrdinaryDiffEqCore, :standardtag)
304+
OrdinaryDiffEqCore.standardtag(alg::Union{StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller},
305305
StochasticDiffEqNewtonAlgorithm{CS,AD,FDT,ST,CJ,Controller}}
306306
) where {CS,AD,FDT,ST,CJ,Controller} = ST
307307
end
308308

309-
@static if isdefined(OrdinaryDiffEq, :alg_difftype)
310-
OrdinaryDiffEq.alg_difftype(alg::Union{StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller},
309+
@static if isdefined(OrdinaryDiffEqCore, :alg_difftype)
310+
OrdinaryDiffEqCore.alg_difftype(alg::Union{StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller},
311311
StochasticDiffEqNewtonAlgorithm{CS,AD,FDT,ST,CJ,Controller}}) where {CS,AD,FDT,ST,CJ,Controller} = FDT
312312
end
313313

314-
@static if isdefined(OrdinaryDiffEq, :concrete_jac)
315-
OrdinaryDiffEq.concrete_jac(alg::Union{StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller},
314+
@static if isdefined(OrdinaryDiffEqCore, :concrete_jac)
315+
OrdinaryDiffEqCore.concrete_jac(alg::Union{StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller},
316316
StochasticDiffEqNewtonAlgorithm{CS,AD,FDT,ST,CJ,Controller}}) where {CS,AD,FDT,ST,CJ,Controller} = CJ
317317
end
318318

@@ -366,7 +366,7 @@ end
366366
issplit(::StochasticDiffEqAlgorithm) = false
367367
issplit(::SplitSDEAlgorithms) = true
368368

369-
function OrdinaryDiffEq.unwrap_alg(integrator::SDEIntegrator, is_stiff)
369+
function OrdinaryDiffEqCore.unwrap_alg(integrator::SDEIntegrator, is_stiff)
370370
alg = integrator.alg
371371
if !is_composite(alg)
372372
return alg

src/algorithms.jl

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ Defaults to solving the Ito problem, but RKMilCommute(interpretation=SciMLBase.A
9393
Uses a 1.5/2.0 error estimate for adaptive time stepping.
9494
Default: ii_approx=IICommutative() does not approximate the Levy area.
9595
"""
96-
struct RKMilCommute{T} <: StochasticDiffEqAdaptiveAlgorithm
96+
struct RKMilCommute{T} <: StochasticDiffEqAdaptiveAlgorithm
9797
interpretation::SciMLBase.AlgorithmInterpretation.T
9898
ii_approx::T
9999
end
@@ -658,16 +658,16 @@ struct ImplicitEM{CS,AD,F,F2,P,FDT,ST,CJ,T2,Controller} <: StochasticDiffEqNewto
658658
end
659659
ImplicitEM(;chunk_size=0,autodiff=true,diff_type=Val{:central},
660660
standardtag = Val{true}(),concrete_jac = nothing,
661-
precs = OrdinaryDiffEq.DEFAULT_PRECS,
661+
precs = OrdinaryDiffEqCore.DEFAULT_PRECS,
662662
linsolve=nothing,nlsolve=NLNewton(),
663663
extrapolant=:constant,
664664
theta = 1,symplectic=false,
665665
new_jac_conv_bound = 1e-3,
666666
controller = :Predictive) =
667667
ImplicitEM{chunk_size,autodiff,
668668
typeof(linsolve),typeof(nlsolve),typeof(precs),diff_type,
669-
OrdinaryDiffEq._unwrap_val(standardtag),
670-
OrdinaryDiffEq._unwrap_val(concrete_jac),
669+
SciMLBase._unwrap_val(standardtag),
670+
SciMLBase._unwrap_val(concrete_jac),
671671
typeof(new_jac_conv_bound),controller}(
672672
linsolve,nlsolve,precs,
673673
symplectic ? 1/2 : theta,
@@ -693,16 +693,16 @@ struct ImplicitEulerHeun{CS,AD,F,P,FDT,ST,CJ,N,T2,Controller} <: StochasticDiffE
693693
end
694694
ImplicitEulerHeun(;chunk_size=0,autodiff=true,diff_type=Val{:central},
695695
standardtag = Val{true}(),concrete_jac = nothing,
696-
precs = OrdinaryDiffEq.DEFAULT_PRECS,
696+
precs = OrdinaryDiffEqCore.DEFAULT_PRECS,
697697
linsolve=nothing,nlsolve=NLNewton(),
698698
extrapolant=:constant,
699699
theta = 1,symplectic = false,
700700
new_jac_conv_bound = 1e-3,
701701
controller = :Predictive) =
702702
ImplicitEulerHeun{chunk_size,autodiff,
703703
typeof(linsolve),typeof(precs),diff_type,
704-
OrdinaryDiffEq._unwrap_val(standardtag),
705-
OrdinaryDiffEq._unwrap_val(concrete_jac),
704+
SciMLBase._unwrap_val(standardtag),
705+
SciMLBase._unwrap_val(concrete_jac),
706706
typeof(nlsolve),
707707
typeof(new_jac_conv_bound),controller}(
708708
linsolve,nlsolve,precs,
@@ -729,16 +729,16 @@ struct ImplicitRKMil{CS,AD,F,P,FDT,ST,CJ,N,T2,Controller,interpretation} <: Stoc
729729
end
730730
ImplicitRKMil(;chunk_size=0,autodiff=true,diff_type=Val{:central},
731731
standardtag = Val{true}(),concrete_jac = nothing,
732-
precs = OrdinaryDiffEq.DEFAULT_PRECS,
732+
precs = OrdinaryDiffEqCore.DEFAULT_PRECS,
733733
linsolve=nothing,nlsolve=NLNewton(),
734734
extrapolant=:constant,
735735
theta = 1,symplectic = false,
736736
new_jac_conv_bound = 1e-3,
737737
controller = :Predictive,interpretation=SciMLBase.AlgorithmInterpretation.Ito) =
738738
ImplicitRKMil{chunk_size,autodiff,
739739
typeof(linsolve),typeof(precs),diff_type,
740-
OrdinaryDiffEq._unwrap_val(standardtag),
741-
OrdinaryDiffEq._unwrap_val(concrete_jac),
740+
SciMLBase._unwrap_val(standardtag),
741+
SciMLBase._unwrap_val(concrete_jac),
742742
typeof(nlsolve),typeof(new_jac_conv_bound),
743743
controller,interpretation}(
744744
linsolve,nlsolve,precs,
@@ -764,16 +764,16 @@ struct ISSEM{CS,AD,F,P,FDT,ST,CJ,N,T2,Controller} <: StochasticDiffEqNewtonAdapt
764764
end
765765
ISSEM(;chunk_size=0,autodiff=true,diff_type=Val{:central},
766766
standardtag = Val{true}(),concrete_jac = nothing,
767-
precs = OrdinaryDiffEq.DEFAULT_PRECS,
767+
precs = OrdinaryDiffEqCore.DEFAULT_PRECS,
768768
linsolve=nothing,nlsolve=NLNewton(),
769769
extrapolant=:constant,
770770
theta = 1,symplectic=false,
771771
new_jac_conv_bound = 1e-3,
772772
controller = :Predictive) =
773773
ISSEM{chunk_size,autodiff,
774774
typeof(linsolve),typeof(precs),diff_type,
775-
OrdinaryDiffEq._unwrap_val(standardtag),
776-
OrdinaryDiffEq._unwrap_val(concrete_jac),
775+
SciMLBase._unwrap_val(standardtag),
776+
SciMLBase._unwrap_val(concrete_jac),
777777
typeof(nlsolve),
778778
typeof(new_jac_conv_bound),controller}(
779779
linsolve,nlsolve,precs,
@@ -799,16 +799,16 @@ struct ISSEulerHeun{CS,AD,F,P,FDT,ST,CJ,N,T2,Controller} <: StochasticDiffEqNewt
799799
end
800800
ISSEulerHeun(;chunk_size=0,autodiff=true,diff_type=Val{:central},
801801
standardtag = Val{true}(),concrete_jac = nothing,
802-
precs = OrdinaryDiffEq.DEFAULT_PRECS,
802+
precs = OrdinaryDiffEqCore.DEFAULT_PRECS,
803803
linsolve=nothing,nlsolve=NLNewton(),
804804
extrapolant=:constant,
805805
theta = 1,symplectic=false,
806806
new_jac_conv_bound = 1e-3,
807807
controller = :Predictive) =
808808
ISSEulerHeun{chunk_size,autodiff,
809809
typeof(linsolve),typeof(precs),diff_type,
810-
OrdinaryDiffEq._unwrap_val(standardtag),
811-
OrdinaryDiffEq._unwrap_val(concrete_jac),
810+
SciMLBase._unwrap_val(standardtag),
811+
SciMLBase._unwrap_val(concrete_jac),
812812
typeof(nlsolve),typeof(new_jac_conv_bound),controller}(
813813
linsolve,nlsolve,precs,
814814
symplectic ? 1/2 : theta,
@@ -831,13 +831,13 @@ end
831831

832832
SKenCarp(;chunk_size=0,autodiff=true,diff_type=Val{:central},
833833
standardtag = Val{true}(),concrete_jac = nothing,
834-
precs = OrdinaryDiffEq.DEFAULT_PRECS,
834+
precs = OrdinaryDiffEqCore.DEFAULT_PRECS,
835835
linsolve=nothing,nlsolve=NLNewton(),
836836
smooth_est=true,extrapolant=:min_correct,
837837
new_jac_conv_bound = 1e-3,controller = :Predictive,
838838
ode_error_est = true) =
839839
SKenCarp{chunk_size,autodiff,typeof(linsolve),typeof(precs),diff_type,
840-
OrdinaryDiffEq._unwrap_val(standardtag),OrdinaryDiffEq._unwrap_val(concrete_jac),
840+
SciMLBase._unwrap_val(standardtag),SciMLBase._unwrap_val(concrete_jac),
841841
typeof(nlsolve),typeof(new_jac_conv_bound),controller}(
842842
linsolve,nlsolve,precs,smooth_est,extrapolant,new_jac_conv_bound,
843843
ode_error_est)

src/caches/implicit_split_step_caches.jl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ end
1313
function alg_cache(alg::ISSEM, prob, u, ΔW, ΔZ, p, rate_prototype, noise_rate_prototype, jump_rate_prototype,
1414
::Type{uEltypeNoUnits}, ::Type{uBottomEltypeNoUnits}, ::Type{tTypeNoUnits}, uprev, f, t, dt, ::Type{Val{true}}) where {uEltypeNoUnits,uBottomEltypeNoUnits,tTypeNoUnits}
1515
γ, c = alg.theta, zero(t)
16-
nlsolver = OrdinaryDiffEq.build_nlsolver(alg, u, uprev, p, t, dt, f, rate_prototype, uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits, γ, c, Val(true))
16+
nlsolver = OrdinaryDiffEqNonlinearSolve.build_nlsolver(alg, u, uprev, p, t, dt, f, rate_prototype, uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits, γ, c, Val(true))
1717
fsalfirst = zero(rate_prototype)
1818
gtmp = zero(noise_rate_prototype)
1919
if is_diagonal_noise(prob)
@@ -37,7 +37,7 @@ end
3737
function alg_cache(alg::ISSEM, prob, u, ΔW, ΔZ, p, rate_prototype, noise_rate_prototype, jump_rate_prototype,
3838
::Type{uEltypeNoUnits}, ::Type{uBottomEltypeNoUnits}, ::Type{tTypeNoUnits}, uprev, f, t, dt, ::Type{Val{false}}) where {uEltypeNoUnits,uBottomEltypeNoUnits,tTypeNoUnits}
3939
γ, c = alg.theta, zero(t)
40-
nlsolver = OrdinaryDiffEq.build_nlsolver(alg, u, uprev, p, t, dt, f, rate_prototype, uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits, γ, c, Val(false))
40+
nlsolver = OrdinaryDiffEqNonlinearSolve.build_nlsolver(alg, u, uprev, p, t, dt, f, rate_prototype, uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits, γ, c, Val(false))
4141
ISSEMConstantCache(nlsolver)
4242
end
4343

@@ -57,7 +57,7 @@ end
5757
function alg_cache(alg::ISSEulerHeun, prob, u, ΔW, ΔZ, p, rate_prototype, noise_rate_prototype, jump_rate_prototype,
5858
::Type{uEltypeNoUnits}, ::Type{uBottomEltypeNoUnits}, ::Type{tTypeNoUnits}, uprev, f, t, dt, ::Type{Val{true}}) where {uEltypeNoUnits,uBottomEltypeNoUnits,tTypeNoUnits}
5959
γ, c = alg.theta, zero(t)
60-
nlsolver = OrdinaryDiffEq.build_nlsolver(alg, u, uprev, p, t, dt, f, rate_prototype, uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits, γ, c, Val(true))
60+
nlsolver = OrdinaryDiffEqNonlinearSolve.build_nlsolver(alg, u, uprev, p, t, dt, f, rate_prototype, uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits, γ, c, Val(true))
6161
fsalfirst = zero(rate_prototype)
6262

6363
gtmp = zero(noise_rate_prototype)
@@ -84,6 +84,6 @@ end
8484
function alg_cache(alg::ISSEulerHeun, prob, u, ΔW, ΔZ, p, rate_prototype, noise_rate_prototype, jump_rate_prototype,
8585
::Type{uEltypeNoUnits}, ::Type{uBottomEltypeNoUnits}, ::Type{tTypeNoUnits}, uprev, f, t, dt, ::Type{Val{false}}) where {uEltypeNoUnits,uBottomEltypeNoUnits,tTypeNoUnits}
8686
γ, c = alg.theta, zero(t)
87-
nlsolver = OrdinaryDiffEq.build_nlsolver(alg, u, uprev, p, t, dt, f, rate_prototype, uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits, γ, c, Val(false))
87+
nlsolver = OrdinaryDiffEqNonlinearSolve.build_nlsolver(alg, u, uprev, p, t, dt, f, rate_prototype, uEltypeNoUnits, uBottomEltypeNoUnits, tTypeNoUnits, γ, c, Val(false))
8888
ISSEulerHeunConstantCache(nlsolver)
8989
end

0 commit comments

Comments
 (0)