Skip to content

Commit

Permalink
Mistake in rebase
Browse files Browse the repository at this point in the history
  • Loading branch information
avik-pal committed Oct 17, 2023
1 parent 96cfd2a commit a1cb64c
Show file tree
Hide file tree
Showing 2 changed files with 1 addition and 53 deletions.
2 changes: 1 addition & 1 deletion Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ PrecompileTools = "1"
RecursiveArrayTools = "2"
Reexport = "0.2, 1"
SciMLBase = "2.4"
SimpleNonlinearSolve = "0.1"
SimpleNonlinearSolve = "0.1.22"
SparseDiffTools = "2.6"
StaticArraysCore = "1.4"
UnPack = "1.0"
Expand Down
52 changes: 0 additions & 52 deletions src/default.jl
Original file line number Diff line number Diff line change
Expand Up @@ -171,58 +171,6 @@ function SciMLBase.__solve(prob::NonlinearProblem{uType, iip},
sols[idx].retcode, sols[idx].stats, original = sols[idx])
end

function SciMLBase.__solve(prob::NonlinearProblem{uType, true}, alg::FastShortcutNonlinearPolyalg, args...;
kwargs...) where {uType}

adkwargs = alg.adkwargs
linsolve = alg.linsolve
precs = alg.precs

sol1 = SciMLBase.__solve(prob, NewtonRaphson(;linsolve, precs, adkwargs...), args...; kwargs...)
if SciMLBase.successful_retcode(sol1)
return SciMLBase.build_solution(prob, alg, sol1.u, sol1.resid;
sol1.retcode, sol1.stats)
end

sol2 = SciMLBase.__solve(prob, NewtonRaphson(;linsolve, precs, linesearch=BackTracking(), adkwargs...), args...; kwargs...)
if SciMLBase.successful_retcode(sol2)
return SciMLBase.build_solution(prob, alg, sol2.u, sol2.resid;
sol2.retcode, sol2.stats)
end

sol3 = SciMLBase.__solve(prob, TrustRegion(;linsolve, precs, adkwargs...), args...; kwargs...)
if SciMLBase.successful_retcode(sol3)
return SciMLBase.build_solution(prob, alg, sol3.u, sol3.resid;
sol3.retcode, sol3.stats)
end

sol4 = SciMLBase.__solve(prob, TrustRegion(;linsolve, precs, radius_update_scheme = RadiusUpdateSchemes.Bastin, adkwargs...), args...; kwargs...)
if SciMLBase.successful_retcode(sol4)
return SciMLBase.build_solution(prob, alg, sol4.u, sol4.resid;
sol4.retcode, sol4.stats)
end

resids = (sol1.resid, sol2.resid, sol3.resid, sol4.resid)
minfu, idx = findmin(DEFAULT_NORM, resids)

if idx == 1
SciMLBase.build_solution(prob, alg, sol1.u, sol1.resid;
sol1.retcode, sol1.stats)
elseif idx == 2
SciMLBase.build_solution(prob, alg, sol2.u, sol2.resid;
sol2.retcode, sol2.stats)
elseif idx == 3
SciMLBase.build_solution(prob, alg, sol3.u, sol3.resid;
sol3.retcode, sol3.stats)
elseif idx == 4
SciMLBase.build_solution(prob, alg, sol4.u, sol4.resid;
sol4.retcode, sol4.stats)
else
error("Unreachable reached, 박정석")
end

end

## General shared polyalg functions

function perform_step!(cache::Union{RobustMultiNewtonCache,
Expand Down

0 comments on commit a1cb64c

Please sign in to comment.