Skip to content

Commit 7040d25

Browse files
Merge pull request #456 from SciML/update
Update for precs changes
2 parents 24cbe4a + c23aa62 commit 7040d25

File tree

5 files changed

+94
-71
lines changed

5 files changed

+94
-71
lines changed

.buildkite/pipeline.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ steps:
77
coverage: false
88
julia_args: "--threads=auto"
99
agents:
10+
os: "linux"
1011
queue: "juliaecosystem"
1112
env:
1213
GROUP: 'OOPWeakConvergence'
@@ -22,6 +23,7 @@ steps:
2223
coverage: false
2324
julia_args: "--threads=auto"
2425
agents:
26+
os: "linux"
2527
queue: "juliaecosystem"
2628
env:
2729
GROUP: 'IIPWeakConvergence'
@@ -37,6 +39,7 @@ steps:
3739
coverage: false
3840
julia_args: "--threads=auto"
3941
agents:
42+
os: "linux"
4043
queue: "juliaecosystem"
4144
env:
4245
GROUP: 'SROCKC2WeakConvergence'
@@ -52,6 +55,7 @@ steps:
5255
coverage: false
5356
julia_args: "--threads=auto"
5457
agents:
58+
os: "linux"
5559
queue: "juliaecosystem"
5660
env:
5761
GROUP: 'WeakConvergence2'
@@ -67,6 +71,7 @@ steps:
6771
coverage: false
6872
julia_args: "--threads=auto"
6973
agents:
74+
os: "linux"
7075
queue: "juliaecosystem"
7176
env:
7277
GROUP: 'WeakConvergence3'
@@ -82,6 +87,7 @@ steps:
8287
coverage: false
8388
julia_args: "--threads=auto"
8489
agents:
90+
os: "linux"
8591
queue: "juliaecosystem"
8692
exclusive: true
8793
env:
@@ -98,6 +104,7 @@ steps:
98104
coverage: false
99105
julia_args: "--threads=auto"
100106
agents:
107+
os: "linux"
101108
queue: "juliaecosystem"
102109
exclusive: true
103110
env:
@@ -114,6 +121,7 @@ steps:
114121
coverage: false
115122
julia_args: "--threads=auto"
116123
agents:
124+
os: "linux"
117125
queue: "juliaecosystem"
118126
env:
119127
GROUP: 'WeakConvergence6'
@@ -128,6 +136,7 @@ steps:
128136
- JuliaCI/julia-test#v1:
129137
coverage: false
130138
agents:
139+
os: "linux"
131140
queue: "juliaecosystem"
132141
env:
133142
GROUP: 'WeakAdaptiveCPU'

Project.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ FiniteDiff = "2"
4141
ForwardDiff = "0.10.3"
4242
MuladdMacro = "0.2.1"
4343
NLsolve = "4"
44-
OrdinaryDiffEq = "6"
44+
OrdinaryDiffEq = "6.4"
4545
RandomNumbers = "1.5.3"
4646
RecursiveArrayTools = "2"
4747
Reexport = "0.2, 1.0"
@@ -55,11 +55,12 @@ DiffEqCallbacks = "459566f4-90b8-5000-8ac3-15dfb0a30def"
5555
DiffEqDevTools = "f3b72e0c-5b89-59e1-b016-84e28bfd966d"
5656
DiffEqOperators = "9fdde737-9c7f-55bf-ade8-46b3f136cc48"
5757
DiffEqProblemLibrary = "a077e3f3-b75c-5d7f-a0c6-6bc4c8ec64a9"
58+
LinearSolve = "7ed4a6bd-45f5-4d41-b270-4a48e9bafcae"
5859
Pkg = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
5960
SafeTestsets = "1bc83da4-3b8d-516f-aca4-4fe02f6d838f"
6061
SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
6162
Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"
6263
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
6364

6465
[targets]
65-
test = ["DiffEqCallbacks", "DiffEqDevTools", "DiffEqOperators", "DiffEqProblemLibrary", "Pkg", "SafeTestsets", "SparseArrays", "Statistics", "Test"]
66+
test = ["DiffEqCallbacks", "DiffEqDevTools", "DiffEqOperators", "DiffEqProblemLibrary", "LinearSolve", "Pkg", "SafeTestsets", "SparseArrays", "Statistics", "Test"]

src/alg_utils.jl

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ alg_interpretation(alg::RKMil{interpretation}) where {interpretation} = interpre
125125
alg_interpretation(alg::SROCK1{interpretation,E}) where {interpretation,E} = interpretation
126126
alg_interpretation(alg::RKMilCommute{interpretation}) where {interpretation} = interpretation
127127
alg_interpretation(alg::RKMilGeneral) = alg.interpretation
128-
alg_interpretation(alg::ImplicitRKMil{CS,AD,F,FDT,ST,N,T2,Controller,interpretation}) where {CS,AD,F,FDT,ST,N,T2,Controller,interpretation} = interpretation
128+
alg_interpretation(alg::ImplicitRKMil{CS,AD,F,P,FDT,ST,CJ,N,T2,Controller,interpretation}) where {CS,AD,F,P,FDT,ST,CJ,N,T2,Controller,interpretation} = interpretation
129129

130130
alg_interpretation(alg::RS1) = :Stratonovich
131131
alg_interpretation(alg::RS2) = :Stratonovich
@@ -244,31 +244,35 @@ alg_needs_extra_process(alg::PL1WM) = true
244244
alg_needs_extra_process(alg::NON) = true
245245
alg_needs_extra_process(alg::NON2) = true
246246

247-
OrdinaryDiffEq.alg_autodiff(alg::StochasticDiffEqNewtonAlgorithm{CS,AD,Controller}) where {CS,AD,Controller} = AD
248-
OrdinaryDiffEq.alg_autodiff(alg::StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,Controller}) where {CS,AD,Controller} = AD
249-
OrdinaryDiffEq.alg_autodiff(alg::StochasticDiffEqJumpNewtonAdaptiveAlgorithm{CS,AD,Controller}) where {CS,AD,Controller} = AD
250-
OrdinaryDiffEq.alg_autodiff(alg::StochasticDiffEqJumpNewtonDiffusionAdaptiveAlgorithm{CS,AD,Controller}) where {CS,AD,Controller} = AD
247+
OrdinaryDiffEq.alg_autodiff(alg::StochasticDiffEqNewtonAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = AD
248+
OrdinaryDiffEq.alg_autodiff(alg::StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = AD
249+
OrdinaryDiffEq.alg_autodiff(alg::StochasticDiffEqJumpNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = AD
250+
OrdinaryDiffEq.alg_autodiff(alg::StochasticDiffEqJumpNewtonDiffusionAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = AD
251251

252252
OrdinaryDiffEq.get_current_alg_autodiff(alg::StochasticDiffEqCompositeAlgorithm, cache) = OrdinaryDiffEq.alg_autodiff(alg.algs[cache.current])
253253

254-
OrdinaryDiffEq.get_chunksize(alg::StochasticDiffEqNewtonAlgorithm{CS,AD,Controller}) where {CS,AD,Controller} = Val(CS)
255-
OrdinaryDiffEq.get_chunksize(alg::StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,Controller}) where {CS,AD,Controller} = Val(CS)
256-
OrdinaryDiffEq.get_chunksize(alg::StochasticDiffEqJumpNewtonAdaptiveAlgorithm{CS,AD,Controller}) where {CS,AD,Controller} = Val(CS)
257-
OrdinaryDiffEq.get_chunksize(alg::StochasticDiffEqJumpNewtonDiffusionAdaptiveAlgorithm{CS,AD,Controller}) where {CS,AD,Controller} = Val(CS)
254+
OrdinaryDiffEq.get_chunksize(alg::StochasticDiffEqNewtonAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val(CS)
255+
OrdinaryDiffEq.get_chunksize(alg::StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val(CS)
256+
OrdinaryDiffEq.get_chunksize(alg::StochasticDiffEqJumpNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val(CS)
257+
OrdinaryDiffEq.get_chunksize(alg::StochasticDiffEqJumpNewtonDiffusionAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller}) where {CS,AD,FDT,ST,CJ,Controller} = Val(CS)
258258

259259
@static if isdefined(OrdinaryDiffEq,:standardtag)
260-
OrdinaryDiffEq.standardtag(alg::Union{StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,Controller},
261-
StochasticDiffEqNewtonAlgorithm{CS,AD,FDT,ST,Controller}}
262-
) where {CS,AD,FDT,ST,Controller} = ST
260+
OrdinaryDiffEq.standardtag(alg::Union{StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller},
261+
StochasticDiffEqNewtonAlgorithm{CS,AD,FDT,ST,CJ,Controller}}
262+
) where {CS,AD,FDT,ST,CJ,Controller} = ST
263263
end
264264

265265
@static if isdefined(OrdinaryDiffEq,:alg_difftype)
266-
OrdinaryDiffEq.alg_difftype(alg::Union{StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,Controller},
267-
StochasticDiffEqNewtonAlgorithm{CS,AD,FDT,ST,Controller}}) where {CS,AD,FDT,ST,Controller} = FDT
266+
OrdinaryDiffEq.alg_difftype(alg::Union{StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller},
267+
StochasticDiffEqNewtonAlgorithm{CS,AD,FDT,ST,CJ,Controller}}) where {CS,AD,FDT,ST,CJ,Controller} = FDT
268268
end
269269

270-
alg_mass_matrix_compatible(alg::StochasticDiffEqAlgorithm) = false
270+
@static if isdefined(OrdinaryDiffEq,:concrete_jac)
271+
OrdinaryDiffEq.concrete_jac(alg::Union{StochasticDiffEqNewtonAdaptiveAlgorithm{CS,AD,FDT,ST,CJ,Controller},
272+
StochasticDiffEqNewtonAlgorithm{CS,AD,FDT,ST,CJ,Controller}}) where {CS,AD,FDT,ST,CJ,Controller} = CJ
273+
end
271274

275+
alg_mass_matrix_compatible(alg::StochasticDiffEqAlgorithm) = false
272276
alg_can_repeat_jac(alg::StochasticDiffEqAlgorithm) = true
273277

274278
function alg_mass_matrix_compatible(alg::Union{StochasticDiffEqNewtonAlgorithm,StochasticDiffEqNewtonAdaptiveAlgorithm})

0 commit comments

Comments
 (0)