This commit is contained in:
Connor
2021-09-12 17:41:41 -06:00
parent e885295bd7
commit 9de9af2dde
5 changed files with 25 additions and 5 deletions

View File

@@ -5,6 +5,7 @@ version = "0.1.0"
[deps]
Dates = "ade2ca70-3891-5945-98fb-dc099432e06a"
Distributed = "8ba89e20-285c-5b6f-9357-94700520ee1b"
ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210"
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
NLsolve = "2774e3e8-f4cf-5e23-947b-6d7e65073b56"

View File

@@ -1,6 +1,6 @@
module Thesis
using LinearAlgebra, ForwardDiff, PlotlyJS, SPICE
using LinearAlgebra, ForwardDiff, PlotlyJS, SPICE, Distributed
try
furnsh("../../SPICE/naif0012.tls")

View File

@@ -11,6 +11,12 @@ function mass_est(T)
return ans/n
end
converged(x) = NLsolve.converged(x)
function converged(_::String)
return false
end
function nlp_solve(start::Vector{Float64},
final::Vector{Float64},
craft::Sc,
@@ -25,6 +31,21 @@ function nlp_solve(start::Vector{Float64},
F[1:6, 1] .= prop_nlsolve(tanh.(x), start, craft, μ, tf-t0) .- final
end
return nlsolve(f!, atanh.(x0), ftol=tol, autodiff=:forward, iterations=1_000)
# return nlsolve(f!, atanh.(x0), ftol=tol, autodiff=:forward, iterations=1_000)
p = addprocs(1)
response = Channel(1)
@async put!(response, remotecall_fetch(nlsolve, 2, f!, atanh.(x0), ftol=tol, autodiff=:forward, iterations=1_000))
start=time()
while !isready(response) && (time() - start) < 30.
sleep(0.1)
end
if isready(response)
return fetch(response)
else
rmprocs(p);
return "error"
end
end

View File

@@ -40,9 +40,7 @@ function mbh(start::AbstractVector,
if verbose print("\r",i) end
# TODO: Should this be two separate "impatience" values?
impatience = 0
println("HERE")
x_star = nlp_solve(start, final, craft, μ, t0, tf, new_x(n), tol=tol)
println("THERE")
while converged(x_star) == false && impatience < patience_level
impatience += 1
x_star = nlp_solve(start, final, craft, μ, t0, tf, new_x(n), tol=tol)

View File

@@ -19,7 +19,7 @@ end
# include("inner_loop/laguerre-conway.jl")
# include("inner_loop/propagator.jl")
# include("inner_loop/find_closest.jl")
# include("inner_loop/monotonic_basin_hopping.jl")
include("inner_loop/monotonic_basin_hopping.jl")
include("inner_loop/inner_loop.jl")
end