Skip to content

Commit e8e8540

Browse files
fix import
1 parent 4667d43 commit e8e8540

File tree

2 files changed

+19
-34
lines changed

2 files changed

+19
-34
lines changed

lib/OrdinaryDiffEqNonlinearSolve/src/OrdinaryDiffEqNonlinearSolve.jl

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,10 @@ import OrdinaryDiffEqCore
2727
import SciMLOperators: islinear
2828
import OrdinaryDiffEqCore: nlsolve_f, set_new_W!, set_W_γdt!
2929

30+
@static if isdefined(OrdinaryDiffEqCore, :default_nlsolve)
31+
import OrdinaryDiffEqCore: default_nlsolve
32+
end
33+
3034
using OrdinaryDiffEqCore: resize_nlsolver!, _initialize_dae!,
3135
AbstractNLSolverAlgorithm, AbstractNLSolverCache,
3236
AbstractNLSolver, NewtonAlgorithm, @unpack,

lib/OrdinaryDiffEqNonlinearSolve/src/initialize_dae.jl

Lines changed: 15 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,18 @@
1-
@static if isdefined(OrdinaryDiffEqCore, :default_nlsolve)
2-
function OrdinaryDiffEqCore.default_nlsolve(::Nothing, isinplace::Val{true}, u, ::NonlinearProblem, autodiff = false)
3-
FastShortcutNonlinearPolyalg(;
4-
autodiff = autodiff ? AutoForwardDiff() : AutoFiniteDiff())
5-
end
6-
function OrdinaryDiffEqCore.default_nlsolve(
7-
::Nothing, isinplace::Val{true}, u, ::NonlinearLeastSquaresProblem, autodiff = false)
8-
FastShortcutNLLSPolyalg(; autodiff = autodiff ? AutoForwardDiff() : AutoFiniteDiff())
9-
end
10-
function OrdinaryDiffEqCore.default_nlsolve(::Nothing, isinplace::Val{false}, u::StaticArray,
11-
::NonlinearProblem, autodiff = false)
12-
SimpleTrustRegion(autodiff = autodiff ? AutoForwardDiff() : AutoFiniteDiff())
13-
end
14-
function OrdinaryDiffEqCore.default_nlsolve(::Nothing, isinplace::Val{false}, u::StaticArray,
15-
::NonlinearLeastSquaresProblem, autodiff = false)
16-
SimpleGaussNewton(autodiff = autodiff ? AutoForwardDiff() : AutoFiniteDiff())
17-
end
18-
else
19-
function default_nlsolve(::Nothing, isinplace, u, ::NonlinearProblem, autodiff = false)
20-
FastShortcutNonlinearPolyalg(;
21-
autodiff = autodiff ? AutoForwardDiff() : AutoFiniteDiff())
22-
end
23-
function default_nlsolve(
24-
::Nothing, isinplace, u, ::NonlinearLeastSquaresProblem, autodiff = false)
25-
FastShortcutNLLSPolyalg(; autodiff = autodiff ? AutoForwardDiff() : AutoFiniteDiff())
26-
end
27-
function default_nlsolve(::Nothing, isinplace::Val{false}, u::StaticArray,
28-
::NonlinearProblem, autodiff = false)
29-
SimpleTrustRegion(autodiff = autodiff ? AutoForwardDiff() : AutoFiniteDiff())
30-
end
31-
function default_nlsolve(::Nothing, isinplace::Val{false}, u::StaticArray,
32-
::NonlinearLeastSquaresProblem, autodiff = false)
33-
SimpleGaussNewton(autodiff = autodiff ? AutoForwardDiff() : AutoFiniteDiff())
34-
end
1+
function default_nlsolve(::Nothing, isinplace::Val{true}, u, ::NonlinearProblem, autodiff = false)
2+
FastShortcutNonlinearPolyalg(;
3+
autodiff = autodiff ? AutoForwardDiff() : AutoFiniteDiff())
4+
end
5+
function default_nlsolve(
6+
::Nothing, isinplace::Val{true}, u, ::NonlinearLeastSquaresProblem, autodiff = false)
7+
FastShortcutNLLSPolyalg(; autodiff = autodiff ? AutoForwardDiff() : AutoFiniteDiff())
8+
end
9+
function default_nlsolve(::Nothing, isinplace::Val{false}, u::StaticArray,
10+
::NonlinearProblem, autodiff = false)
11+
SimpleTrustRegion(autodiff = autodiff ? AutoForwardDiff() : AutoFiniteDiff())
12+
end
13+
function default_nlsolve(::Nothing, isinplace::Val{false}, u::StaticArray,
14+
::NonlinearLeastSquaresProblem, autodiff = false)
15+
SimpleGaussNewton(autodiff = autodiff ? AutoForwardDiff() : AutoFiniteDiff())
3516
end
3617

3718
## ShampineCollocationInit

0 commit comments

Comments
 (0)