Skip to content

Commit 894294a

Browse files
committed
Add a default for NLLS
1 parent 5e8149a commit 894294a

File tree

2 files changed

+16
-6
lines changed

2 files changed

+16
-6
lines changed

src/default.jl

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -252,12 +252,21 @@ end
252252

253253
## Defaults
254254

255-
function SciMLBase.__init(prob::NonlinearProblem{uType, iip}, alg::Nothing, args...;
256-
kwargs...) where {uType, iip}
257-
SciMLBase.__init(prob, FastShortcutNonlinearPolyalg(), args...; kwargs...)
255+
function SciMLBase.__init(prob::NonlinearProblem, ::Nothing, args...; kwargs...)
256+
return SciMLBase.__init(prob, FastShortcutNonlinearPolyalg(), args...; kwargs...)
258257
end
259258

260-
function SciMLBase.__solve(prob::NonlinearProblem{uType, iip}, alg::Nothing, args...;
261-
kwargs...) where {uType, iip}
262-
SciMLBase.__solve(prob, FastShortcutNonlinearPolyalg(), args...; kwargs...)
259+
function SciMLBase.__solve(prob::NonlinearProblem, ::Nothing, args...; kwargs...)
260+
return SciMLBase.__solve(prob, FastShortcutNonlinearPolyalg(), args...; kwargs...)
261+
end
262+
263+
# FIXME: We default to using LM currently. But once we have line searches for GN implemented
264+
# we should default to a polyalgorithm.
265+
function SciMLBase.__init(prob::NonlinearLeastSquaresProblem, ::Nothing, args...; kwargs...)
266+
return SciMLBase.__init(prob, LevenbergMarquardt(), args...; kwargs...)
267+
end
268+
269+
function SciMLBase.__solve(prob::NonlinearLeastSquaresProblem, ::Nothing, args...;
270+
kwargs...)
271+
return SciMLBase.__solve(prob, LevenbergMarquardt(), args...; kwargs...)
263272
end

test/nonlinear_least_squares.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ append!(solvers,
3636
LevenbergMarquardt(; linsolve = LUFactorization()),
3737
LeastSquaresOptimJL(:lm),
3838
LeastSquaresOptimJL(:dogleg),
39+
nothing,
3940
])
4041

4142
for prob in nlls_problems, solver in solvers

0 commit comments

Comments
 (0)