diff --git a/test/orbital.jl b/test/orbital.jl index a41d341f..55ffaff6 100644 --- a/test/orbital.jl +++ b/test/orbital.jl @@ -76,6 +76,12 @@ for autodiff in (AutoForwardDiff(), AutoFiniteDiff(; fdtype = Val(:central)), @time sol = solve(bvp, Shooting(DP5(); nlsolve); force_dtmin = true, abstol = 1e-13, reltol = 1e-13) cur_bc!(resid_f, sol, nothing, sol.t) @test norm(resid_f, Inf) < TestTol + + @time sol = solve(bvp, MultipleShooting(10, DP5(); nlsolve); abstol = 1e-6, + reltol = 1e-6) + @test SciMLBase.successful_retcode(sol) + cur_bc!(resid_f, sol, nothing, sol.t) + @test norm(resid_f, Inf) < 1e-6 end ### Using the TwoPoint BVP Structure @@ -85,7 +91,15 @@ for autodiff in (AutoForwardDiff(), AutoFiniteDiff(; fdtype = Val(:central)), AutoSparseForwardDiff(), AutoFiniteDiff(; fdtype = Val(:forward)), AutoSparseFiniteDiff()) nlsolve = NewtonRaphson(; autodiff) - @time sol = solve(bvp, Shooting(DP5(); nlsolve); force_dtmin = true, abstol = 1e-13, reltol = 1e-13) + + @time sol = solve(bvp, Shooting(DP5(); nlsolve); force_dtmin = true, abstol = 1e-13, + reltol = 1e-13) + cur_bc_2point!(resid_f_2p, (sol(t0), sol(t1)), nothing) + @test norm(vcat(resid_f_2p...), Inf) < TestTol + + @time sol = solve(bvp, MultipleShooting(10, DP5(); nlsolve); abstol = 1e-6, + reltol = 1e-6) + @test SciMLBase.successful_retcode(sol) cur_bc_2point!(resid_f_2p, (sol(t0), sol(t1)), nothing) @test norm(vcat(resid_f_2p...), Inf) < TestTol end