diff --git a/Project.toml b/Project.toml index 84b99f5..8c03501 100644 --- a/Project.toml +++ b/Project.toml @@ -1,7 +1,7 @@ name = "ProfileLikelihood" uuid = "3fca794e-44fa-49a6-b6a0-8cd45572ba0a" authors = ["Daniel VandenHeuvel "] -version = "0.3.4" +version = "0.4.0" [deps] ChunkSplitters = "ae650224-84b6-46f8-82ea-d812ca08434e" @@ -17,6 +17,7 @@ Requires = "ae029012-a4dd-5104-9daa-d747884805df" SciMLBase = "0bca4576-84f4-4d90-8ffe-ffa030f20462" SimpleNonlinearSolve = "727e6d20-b764-4bd8-a329-72de5adea6c7" StatsFuns = "4c63d2b9-4356-54db-8cca-17b64c39e42c" +SymbolicIndexingInterface = "2efcf032-c050-4f8e-a9bb-153293bab1f5" [weakdeps] DelaunayTriangulation = "927a84f5-c5f4-47a5-9785-b46e178433df" @@ -30,14 +31,15 @@ ProfileLikelihoodMakieExt = "Makie" ChunkSplitters = "1.0, 2.0" Contour = "0.6" FunctionWrappers = "1.1" -Interpolations = "0.14" +Interpolations = "0.14, 0.15" InvertedIndices = "1.2, 1.3" OffsetArrays = "1.12" PolygonInbounds = "0.2" PreallocationTools = "0.4" Requires = "1.3" -SciMLBase = "=2.9.1" -SimpleNonlinearSolve = "0.1" +SciMLBase = "2.0" +SimpleNonlinearSolve = "1" +SymbolicIndexingInterface = "0.3" StatsFuns = "1.1, 1.3" julia = "1" diff --git a/docs/src/figures/linear_exponential_example.png b/docs/src/figures/linear_exponential_example.png index 85b8178..2d4c699 100644 Binary files a/docs/src/figures/linear_exponential_example.png and b/docs/src/figures/linear_exponential_example.png differ diff --git a/docs/src/figures/logistic_example.png b/docs/src/figures/logistic_example.png index af7e29d..098b89b 100644 Binary files a/docs/src/figures/logistic_example.png and b/docs/src/figures/logistic_example.png differ diff --git a/docs/src/figures/logistic_example_prediction.png b/docs/src/figures/logistic_example_prediction.png index d409811..3d14494 100644 Binary files a/docs/src/figures/logistic_example_prediction.png and b/docs/src/figures/logistic_example_prediction.png differ diff --git a/docs/src/figures/lokta_example_bivariate_predictions.png b/docs/src/figures/lokta_example_bivariate_predictions.png index c1cbab8..e444887 100644 Binary files a/docs/src/figures/lokta_example_bivariate_predictions.png and b/docs/src/figures/lokta_example_bivariate_predictions.png differ diff --git a/docs/src/figures/lokta_example_bivariate_profiles_low_quality.png b/docs/src/figures/lokta_example_bivariate_profiles_low_quality.png index 9b6e252..86fc2f3 100644 Binary files a/docs/src/figures/lokta_example_bivariate_profiles_low_quality.png and b/docs/src/figures/lokta_example_bivariate_profiles_low_quality.png differ diff --git a/docs/src/figures/lokta_example_bivariate_profiles_smoothed_quality.png b/docs/src/figures/lokta_example_bivariate_profiles_smoothed_quality.png index 518d6ea..936dbf5 100644 Binary files a/docs/src/figures/lokta_example_bivariate_profiles_smoothed_quality.png and b/docs/src/figures/lokta_example_bivariate_profiles_smoothed_quality.png differ diff --git a/docs/src/figures/lokta_example_profiles.png b/docs/src/figures/lokta_example_profiles.png index 259d216..9d361a9 100644 Binary files a/docs/src/figures/lokta_example_profiles.png and b/docs/src/figures/lokta_example_profiles.png differ diff --git a/docs/src/figures/lokta_example_univariate_predictions.png b/docs/src/figures/lokta_example_univariate_predictions.png index 0554cf5..3f9689b 100644 Binary files a/docs/src/figures/lokta_example_univariate_predictions.png and b/docs/src/figures/lokta_example_univariate_predictions.png differ diff --git a/docs/src/figures/regression_profiles.png b/docs/src/figures/regression_profiles.png index f5e0a47..ee72fc6 100644 Binary files a/docs/src/figures/regression_profiles.png and b/docs/src/figures/regression_profiles.png differ diff --git a/ext/ProfileLikelihoodDelaunayTriangulationExt.jl b/ext/ProfileLikelihoodDelaunayTriangulationExt.jl index e16d675..3890028 100644 --- a/ext/ProfileLikelihoodDelaunayTriangulationExt.jl +++ b/ext/ProfileLikelihoodDelaunayTriangulationExt.jl @@ -13,8 +13,8 @@ function ProfileLikelihood._get_confidence_regions_delaunay!(confidence_regions, grid_xy = vec([(x, y) for x in range_1, y in range_2]) tri = DelaunayTriangulation.triangulate(grid_xy) conf_contour = NTuple{2,T}[] - DelaunayTriangulation.delete_boundary_vertices_from_graph!(tri) - for (u, v) in DelaunayTriangulation.get_edges(tri) + for e in DelaunayTriangulation.each_solid_edge(tri) + u, v = DelaunayTriangulation.edge_vertices(e) u₁, u₂ = profile_values[u], profile_values[v] if threshold_intersection_exists(threshold, u₁, u₂) p₁ = grid_xy[u] diff --git a/ext/ProfileLikelihoodMakieExt.jl b/ext/ProfileLikelihoodMakieExt.jl index b3197c6..79c92da 100644 --- a/ext/ProfileLikelihoodMakieExt.jl +++ b/ext/ProfileLikelihoodMakieExt.jl @@ -1,6 +1,6 @@ module ProfileLikelihoodMakieExt - using ProfileLikelihood +using ProfileLikelihood @static if isdefined(Base, :get_extension) using Makie else @@ -21,7 +21,7 @@ function ProfileLikelihood.plot_profiles(prof::ProfileLikelihood.ProfileLikeliho axis_kwargs=nothing, show_points=false, markersize=9, - latex_names=Dict(vars .=> [L"\theta_{%$i}" for i in ProfileLikelihood.SciMLBase.sym_to_index.(vars, Ref(prof))])) + latex_names=Dict(vars .=> [L"\theta_{%$i}" for i in ProfileLikelihood.variable_index.((prof,), vars)])) num_plots = vars isa Symbol ? 1 : length(vars) _, _, plot_positions = ProfileLikelihood.choose_grid_layout(num_plots, ncol, nrow) if fig_kwargs !== nothing @@ -51,7 +51,7 @@ function ProfileLikelihood.plot_profiles(prof::ProfileLikelihood.BivariateProfil interpolation=false, smooth_confidence_boundary=false, close_contour=true, - latex_names=Dict(1:ProfileLikelihood.number_of_parameters(ProfileLikelihood.get_likelihood_problem(prof)) .=> ProfileLikelihood.get_syms(prof)), + latex_names=Dict(1:ProfileLikelihood.number_of_parameters(ProfileLikelihood.get_likelihood_problem(prof)) .=> ProfileLikelihood.variable_symbols(prof)), xlim_tuples=nothing, ylim_tuples=nothing) vars = ProfileLikelihood.convert_symbol_tuples(vars, prof) @@ -120,7 +120,7 @@ function ProfileLikelihood.plot_profiles!(prof::ProfileLikelihood.ProfileLikelih Makie.ylims!(ax, threshold - 1, 0.1) if !spline Makie.lines!(ax, θ_vals, ℓ_vals) - Makie.hlines!(ax, [threshold], color=:red, linetype=:dashed) + Makie.hlines!(ax, [threshold], color=:red, linestyle=:dash) CI_range = lower_ci .< θ_vals .< upper_ci shade_ci && Makie.band!(ax, θ_vals[CI_range], ℓ_vals[CI_range], repeat([threshold], count(CI_range)), color=(:blue, 0.35)) else @@ -128,7 +128,7 @@ function ProfileLikelihood.plot_profiles!(prof::ProfileLikelihood.ProfileLikelih Δθ₁ = (val_range[2] - val_range[1]) / max(length(θ_vals), 1000) data_vals = val_range[1]:Δθ₁:val_range[2] Makie.lines!(ax, data_vals, prof(data_vals)) - Makie.hlines!(ax, [threshold], color=:red, linetype=:dashed) + Makie.hlines!(ax, [threshold], color=:red, linestyle=:dash) Δθ₂ = (upper_ci - lower_ci) / max(length(θ_vals), 1000) if Δθ₂ ≠ 0.0 ci_vals = lower_ci:Δθ₂:upper_ci @@ -136,10 +136,10 @@ function ProfileLikelihood.plot_profiles!(prof::ProfileLikelihood.ProfileLikelih end end if !isnothing(true_vals) - Makie.vlines!(ax, [true_vals], color=:black, linetype=:dashed) + Makie.vlines!(ax, [true_vals], color=:black, linestyle=:dash) end if !isnothing(mle_val) - Makie.vlines!(ax, [mle_val], color=:red, linetype=:dashed) + Makie.vlines!(ax, [mle_val], color=:red, linestyle=:dash) end if show_points Makie.scatter!(ax, θ_vals, ℓ_vals, color=:black, markersize=markersize) diff --git a/src/ProfileLikelihood.jl b/src/ProfileLikelihood.jl index ba9c80c..58cab22 100644 --- a/src/ProfileLikelihood.jl +++ b/src/ProfileLikelihood.jl @@ -12,6 +12,7 @@ using OffsetArrays using PolygonInbounds using Contour using ChunkSplitters +using SymbolicIndexingInterface include("utils.jl") include("problem_updates.jl") diff --git a/src/abstract_type_definitions.jl b/src/abstract_type_definitions.jl index 0a57b73..e7a9f8c 100644 --- a/src/abstract_type_definitions.jl +++ b/src/abstract_type_definitions.jl @@ -31,24 +31,10 @@ finite_bounds(prob) = finite_lower_bounds(prob) && finite_upper_bounds(prob) number_of_parameters(prob::OptimizationProblem) = length(prob.u0) number_of_parameters(::AbstractLikelihoodProblem{N, L}) where {N, L} = N -Base.getindex(prob::AbstractLikelihoodProblem, i::Integer) = get_θ₀(prob, i) -SciMLBase.sym_to_index(sym, prob::AbstractLikelihoodProblem) = SciMLBase.sym_to_index(sym, get_syms(prob)) -SciMLBase.sym_to_index(i::Integer, ::AbstractLikelihoodProblem) = i +SymbolicIndexingInterface.symbolic_container(prob::AbstractLikelihoodProblem) = get_problem(prob) +SymbolicIndexingInterface.state_values(prob::AbstractLikelihoodProblem) = get_θ₀(prob) function Base.getindex(prob::AbstractLikelihoodProblem, sym) - if SciMLBase.issymbollike(sym) - i = SciMLBase.sym_to_index(sym, prob) - else - i = sym - end - if i === nothing - throw(BoundsError(get_θ₀(prob), sym)) - else - get_θ₀(prob, i) - end -end -function Base.getindex(prob::AbstractLikelihoodProblem, sym::AbstractVector{Symbol}) - idx = SciMLBase.sym_to_index.(sym, Ref(prob)) - return get_θ₀(prob, idx) + return getu(prob, sym)(prob) end function parameter_is_inbounds(prob, θ) @@ -80,23 +66,10 @@ get_syms(sol::AbstractLikelihoodSolution) = get_syms(get_problem(sol)) number_of_parameters(::AbstractLikelihoodSolution{N,P}) where {N,P}=N -Base.getindex(sol::AbstractLikelihoodSolution, i::Integer) = get_mle(sol, i) -SciMLBase.sym_to_index(sym, sol::AbstractLikelihoodSolution) = SciMLBase.sym_to_index(sym, get_syms(sol)) +SymbolicIndexingInterface.symbolic_container(sol::AbstractLikelihoodSolution) = get_problem(sol) +SymbolicIndexingInterface.state_values(sol::AbstractLikelihoodSolution) = get_mle(sol) function Base.getindex(sol::AbstractLikelihoodSolution, sym) - if SciMLBase.issymbollike(sym) - i = SciMLBase.sym_to_index(sym, sol) - else - i = sym - end - if i === nothing - throw(BoundsError(get_mle(sol), sym)) - else - get_mle(sol, i) - end -end -function Base.getindex(sol::AbstractLikelihoodSolution, sym::AbstractVector{Symbol}) - idx = SciMLBase.sym_to_index.(sym, Ref(sol)) - return get_mle(sol, idx) + return getu(sol, sym)(sol) end update_initial_estimate(prob::AbstractLikelihoodProblem, sol::AbstractLikelihoodSolution) = update_initial_estimate(prob, get_mle(sol)) diff --git a/src/display.jl b/src/display.jl index cb15c5e..c6c11fa 100644 --- a/src/display.jl +++ b/src/display.jl @@ -6,7 +6,7 @@ function Base.show(io::IO, ::MIME"text/plain", prob::T) where {T<:AbstractLikeli type_color, isinplace(get_problem(prob))) println(io, no_color, "θ₀: ", summary(prob.θ₀)) - sym_param_names = get_syms(prob) + sym_param_names = variable_symbols(prob) for i in 1:number_of_parameters(prob) i < number_of_parameters(prob) ? println(io, no_color, " $(sym_param_names[i]): $(prob[i])") : print(io, @@ -35,7 +35,7 @@ function Base.show(io::IO, mime::MIME"text/plain", sol::T) where {T<:AbstractLik println(io) println(io, no_color, "Maximum likelihood estimates: ", summary(get_mle(sol))) - sym_param_names = get_syms(sol) + sym_param_names = variable_symbols(sol) for i in 1:number_of_parameters(sol) i < number_of_parameters(sol) ? println(io, no_color, " $(sym_param_names[i]): $(sol[i])") : print(io, @@ -61,7 +61,7 @@ function Base.show(io::IO, ::MIME"text/plain", prof::T) where {T<:ProfileLikelih println(io, no_color, "Confidence intervals: ") CIs = get_confidence_intervals(prof) - sym_param_names = get_syms(prof) + sym_param_names = variable_symbols(prof) for i in profiled_parameters(prof) i ≠ last(profiled_parameters(prof)) ? println(io, no_color, " $(100get_level(CIs[i]))% CI for $(sym_param_names[i]): ($(get_lower(CIs[i])), $(get_upper(CIs[i])))") : print(io, @@ -71,7 +71,7 @@ end function Base.show(io::IO, ::MIME"text/plain", prof::ProfileLikelihoodSolutionView{N,PLS}) where {N,PLS} type_color, no_color = SciMLBase.get_colorizers(io) - param_name = get_syms(prof) + param_name = variable_symbols(prof)[N] CIs = get_confidence_intervals(prof) println(io, type_color, "Profile likelihood", @@ -94,7 +94,7 @@ function Base.show(io::IO, ::MIME"text/plain", prof::T) where {T<:BivariateProfi println(io, no_color, "Profile info: ") pairs = profiled_parameters(prof) - sym_param_names = get_syms(prof) + sym_param_names = variable_symbols(prof) for (i, j) in pairs a, b, c, d = get_bounding_box(prof, i, j) num_layers = number_of_layers(prof, i, j) diff --git a/src/likelihood_problem.jl b/src/likelihood_problem.jl index 22c25ad..cdb2468 100644 --- a/src/likelihood_problem.jl +++ b/src/likelihood_problem.jl @@ -26,7 +26,7 @@ The log-likelihood function, taking the form `ℓ(θ, p)`. Initial estimates for the MLE `θ`. - `syms::S` -Variable names for the parameters. +Variable names for the parameters. This is wrapped into a `SymbolCache` from SymbolicIndexingInterface.jl. The extra parameter `N` is the number of parameters. @@ -106,16 +106,20 @@ Returns the [`LikelihoodProblem`](@ref) problem object. """ function LikelihoodProblem end +_to_symbolcache(syms, θ₀) = SymbolCache(syms, defaults = Dict(syms .=> θ₀)) +_to_symbolcache(syms::SymbolCache, θ₀) = syms + function LikelihoodProblem(loglik::Function, θ₀; syms=eachindex(θ₀), data=SciMLBase.NullParameters(), f_kwargs=nothing, prob_kwargs=nothing) Base.require_one_based_indexing(θ₀) + _syms = _to_symbolcache(syms, θ₀) negloglik = negate_loglik(loglik) - opt_f = isnothing(f_kwargs) ? construct_optimisation_function(negloglik, syms) : construct_optimisation_function(negloglik, syms; f_kwargs...) + opt_f = isnothing(f_kwargs) ? construct_optimisation_function(negloglik, _syms) : construct_optimisation_function(negloglik, _syms; f_kwargs...) opt_prob = isnothing(prob_kwargs) ? construct_optimisation_problem(opt_f, θ₀, data) : construct_optimisation_problem(opt_f, θ₀, data; prob_kwargs...) return LikelihoodProblem{length(θ₀),typeof(opt_prob), typeof(data),typeof(loglik), - typeof(θ₀),typeof(syms)}(opt_prob, data, loglik, θ₀, syms) + typeof(θ₀),typeof(_syms)}(opt_prob, data, loglik, θ₀, _syms) end function LikelihoodProblem(loglik::Function, θ₀, integrator; @@ -140,9 +144,9 @@ end function construct_optimisation_function(negloglik, syms; f_kwargs...) if :adtype ∈ keys(f_kwargs) - return OptimizationFunction(negloglik, f_kwargs[:adtype]; syms=syms, f_kwargs[Not(:adtype)]...) + return OptimizationFunction(negloglik, f_kwargs[:adtype]; sys=syms, f_kwargs[Not(:adtype)]...) else - return OptimizationFunction(negloglik, SciMLBase.NoAD(); syms=syms, f_kwargs...) + return OptimizationFunction(negloglik, SciMLBase.NoAD(); sys=syms, f_kwargs...) end end function construct_optimisation_problem(opt_f, θ₀, data; prob_kwargs...) diff --git a/src/problem_updates.jl b/src/problem_updates.jl index 4eda07e..5e001d8 100644 --- a/src/problem_updates.jl +++ b/src/problem_updates.jl @@ -1,35 +1,19 @@ update_initial_estimate(prob::OptimizationProblem, θ) = remake(prob; u0=θ) update_initial_estimate(prob::OptimizationProblem, sol::SciMLBase.OptimizationSolution) = update_initial_estimate(prob, sol.u) +@generated function _to_namedtuple(obj) + A = (Expr(:(=), n, :(obj.$n)) for n in setdiff(fieldnames(obj), (:f, :adtype, :grad, :hess))) + Expr(:tuple, A...) +end + # replace obj with a new obj -@inline function replace_objective_function(f::OF, new_f::FF, new_grad!, new_hess!) where {OF, FF} - # scimlbase needs to add a constructorof method for OptimizationFunction before we can just do @set with accessors.jl. - # g = @set f.f = new_f - # return g +@inline function replace_objective_function(f::OF, new_f::FF, new_grad!::GG, new_hess!::HH) where {OF, FF, GG, HH} return OptimizationFunction( new_f, f.adtype; grad=new_grad!, hess=new_hess!, - hv=f.hv, - cons=f.cons, - cons_j=f.cons_j, - cons_h=f.cons_h, - hess_prototype=f.hess_prototype, - cons_jac_prototype=f.cons_jac_prototype, - f.cons_hess_prototype, - f.syms, - f.paramsyms, - f.observed, - f.expr, - f.cons_expr, - f.sys, - f.lag_h, - f.lag_hess_prototype, - f.hess_colorvec, - f.cons_jac_colorvec, - f.cons_hess_colorvec, - f.lag_hess_colorvec, + _to_namedtuple(f)... ) end diff --git a/src/profile_likelihood.jl b/src/profile_likelihood.jl index bc651b2..1813ebf 100644 --- a/src/profile_likelihood.jl +++ b/src/profile_likelihood.jl @@ -719,8 +719,8 @@ function _get_confidence_intervals_spline!(confidence_intervals, n, param_vals, right_bracket = (mles[n], param_vals[end]) left_prob = IntervalNonlinearProblem(itp_f, left_bracket) right_prob = IntervalNonlinearProblem(itp_f, right_bracket) - ℓ = solve(left_prob, Falsi()).u - u = solve(right_prob, Falsi()).u + ℓ = solve(left_prob, ITP()).u # Used to be Falsi(), but Falsi() just sometimes doesn't want to give good results anymore... + u = solve(right_prob, ITP()).u confidence_intervals[n] = ConfidenceInterval(ℓ, u, conf_level) return nothing end diff --git a/src/profile_likelihood_solution.jl b/src/profile_likelihood_solution.jl index f686aab..f18eb1d 100644 --- a/src/profile_likelihood_solution.jl +++ b/src/profile_likelihood_solution.jl @@ -51,23 +51,23 @@ end get_parameter_values(prof::ProfileLikelihoodSolution) = prof.parameter_values get_parameter_values(prof::ProfileLikelihoodSolution, i) = get_parameter_values(prof)[i] -get_parameter_values(prof::ProfileLikelihoodSolution, sym::Symbol) = get_parameter_values(prof, SciMLBase.sym_to_index(sym, prof)) +get_parameter_values(prof::ProfileLikelihoodSolution, sym::Symbol) = get_parameter_values(prof, variable_index(prof, sym)) get_profile_values(prof::ProfileLikelihoodSolution) = prof.profile_values get_profile_values(prof::ProfileLikelihoodSolution, i) = get_profile_values(prof)[i] -get_profile_values(prof::ProfileLikelihoodSolution, sym::Symbol) = get_profile_values(prof, SciMLBase.sym_to_index(sym, prof)) +get_profile_values(prof::ProfileLikelihoodSolution, sym::Symbol) = get_profile_values(prof, variable_index(prof, sym)) get_likelihood_problem(prof::ProfileLikelihoodSolution) = prof.likelihood_problem get_likelihood_solution(prof::ProfileLikelihoodSolution) = prof.likelihood_solution get_splines(prof::ProfileLikelihoodSolution) = prof.splines get_splines(prof::ProfileLikelihoodSolution, i) = get_splines(prof)[i] -get_splines(prof::ProfileLikelihoodSolution, sym::Symbol) = get_splines(prof, SciMLBase.sym_to_index(sym, prof)) +get_splines(prof::ProfileLikelihoodSolution, sym::Symbol) = get_splines(prof, variable_index(prof, sym)) get_confidence_intervals(prof::ProfileLikelihoodSolution) = prof.confidence_intervals get_confidence_intervals(prof::ProfileLikelihoodSolution, i) = get_confidence_intervals(prof)[i] -get_confidence_intervals(prof::ProfileLikelihoodSolution, sym::Symbol) = get_confidence_intervals(prof, SciMLBase.sym_to_index(sym, prof)) +get_confidence_intervals(prof::ProfileLikelihoodSolution, sym::Symbol) = get_confidence_intervals(prof, variable_index(prof, sym)) get_other_mles(prof::ProfileLikelihoodSolution) = prof.other_mles get_other_mles(prof::ProfileLikelihoodSolution, i) = get_other_mles(prof)[i] -get_other_mles(prof::ProfileLikelihoodSolution, sym::Symbol) = get_other_mles(prof, SciMLBase.sym_to_index(sym, prof)) +get_other_mles(prof::ProfileLikelihoodSolution, sym::Symbol) = get_other_mles(prof, variable_index(prof, sym)) get_syms(prof::ProfileLikelihoodSolution) = get_syms(get_likelihood_problem(prof)) -get_syms(prof::ProfileLikelihoodSolution, i) = get_syms(prof)[i] +get_syms(prof::ProfileLikelihoodSolution, i) = variable_symbols(prof)[i] profiled_parameters(prof::ProfileLikelihoodSolution) = (sort ∘ collect ∘ keys ∘ get_confidence_intervals)(prof)::Vector{Int} number_of_profiled_parameters(prof::ProfileLikelihoodSolution) = length(profiled_parameters(prof)) @@ -75,19 +75,13 @@ struct ProfileLikelihoodSolutionView{N,PLS} parent::PLS end -Base.getindex(prof::PLS, i::Integer) where {PLS<:ProfileLikelihoodSolution} = ProfileLikelihoodSolutionView{i,PLS}(prof) -SciMLBase.sym_to_index(sym, prof::ProfileLikelihoodSolution) = SciMLBase.sym_to_index(sym, get_syms(prof)) -function Base.getindex(prof::ProfileLikelihoodSolution, sym) - if SciMLBase.issymbollike(sym) - i = SciMLBase.sym_to_index(sym, prof) - else - i = sym - end - if i === nothing - throw(BoundsError(prof, sym)) - else - prof[i] - end +SymbolicIndexingInterface.symbolic_container(prof::ProfileLikelihoodSolution) = get_likelihood_problem(prof) +SymbolicIndexingInterface.symbolic_container(prof::ProfileLikelihoodSolutionView) = get_parent(prof) +function Base.getindex(prob::ProfileLikelihoodSolution, sym) + return ProfileLikelihoodSolutionView{variable_index(prob, sym), typeof(prob)}(prob) +end +function Base.getindex(prob::ProfileLikelihoodSolutionView, sym) + return Base.getindex(get_likelihood_problem(prob), sym) end get_parent(prof::ProfileLikelihoodSolutionView) = prof.parent @@ -175,7 +169,7 @@ get_parameter_values(prof::BivariateProfileLikelihoodSolution) = prof.parameter_ get_parameter_values(prof::BivariateProfileLikelihoodSolution, i, j) = get_parameter_values(prof)[(i, j)] get_parameter_values(prof::BivariateProfileLikelihoodSolution, i, j, k) = get_parameter_values(prof, i, j)[k] function get_parameter_values(prof::BivariateProfileLikelihoodSolution, i, j, sym::Symbol) - idx = SciMLBase.sym_to_index(sym, prof) + idx = variable_index(prof, sym) if idx == i return get_parameter_values(prof, i, j, 1) elseif idx == j @@ -183,28 +177,28 @@ function get_parameter_values(prof::BivariateProfileLikelihoodSolution, i, j, sy end throw(BoundsError(get_parameter_values(prof, i, j), sym)) end -get_parameter_values(prof::BivariateProfileLikelihoodSolution, sym1::Symbol, sym2::Symbol, k::Integer) = get_parameter_values(prof, SciMLBase.sym_to_index(sym1, prof), SciMLBase.sym_to_index(sym2, prof), k) -get_parameter_values(prof::BivariateProfileLikelihoodSolution, sym1::Symbol, sym2::Symbol, k::Symbol) = get_parameter_values(prof, SciMLBase.sym_to_index(sym1, prof), SciMLBase.sym_to_index(sym2, prof), k) -get_parameter_values(prof::BivariateProfileLikelihoodSolution, sym1::Symbol, sym2::Symbol) = get_parameter_values(prof, SciMLBase.sym_to_index(sym1, prof), SciMLBase.sym_to_index(sym2, prof)) +get_parameter_values(prof::BivariateProfileLikelihoodSolution, sym1::Symbol, sym2::Symbol, k::Integer) = get_parameter_values(prof, variable_index(prof, sym1), variable_index(prof, sym2), k) +get_parameter_values(prof::BivariateProfileLikelihoodSolution, sym1::Symbol, sym2::Symbol, k::Symbol) = get_parameter_values(prof, variable_index(prof, sym1), variable_index(prof, sym2), k) +get_parameter_values(prof::BivariateProfileLikelihoodSolution, sym1::Symbol, sym2::Symbol) = get_parameter_values(prof, variable_index(prof, sym1), variable_index(prof, sym2)) get_parameter_values(prof::BivariateProfileLikelihoodSolution, i, j, k, ℓ) = get_parameter_values(prof, i, j, k)[ℓ] get_profile_values(prof::BivariateProfileLikelihoodSolution) = prof.profile_values get_profile_values(prof::BivariateProfileLikelihoodSolution, i, j) = get_profile_values(prof)[(i, j)] -get_profile_values(prof::BivariateProfileLikelihoodSolution, sym1::Symbol, sym2::Symbol) = get_profile_values(prof, SciMLBase.sym_to_index(sym1, prof), SciMLBase.sym_to_index(sym2, prof)) +get_profile_values(prof::BivariateProfileLikelihoodSolution, sym1::Symbol, sym2::Symbol) = get_profile_values(prof, variable_index(prof, sym1), variable_index(prof, sym2)) get_profile_values(prof::BivariateProfileLikelihoodSolution, i, j, k, ℓ) = get_profile_values(prof, i, j)[k, ℓ] get_likelihood_problem(prof::BivariateProfileLikelihoodSolution) = prof.likelihood_problem get_likelihood_solution(prof::BivariateProfileLikelihoodSolution) = prof.likelihood_solution get_interpolants(prof::BivariateProfileLikelihoodSolution) = prof.interpolants get_interpolants(prof::BivariateProfileLikelihoodSolution, i, j) = get_interpolants(prof)[(i, j)] -get_interpolants(prof::BivariateProfileLikelihoodSolution, sym1::Symbol, sym2::Symbol) = get_interpolants(prof, SciMLBase.sym_to_index(sym1, prof), SciMLBase.sym_to_index(sym2, prof)) +get_interpolants(prof::BivariateProfileLikelihoodSolution, sym1::Symbol, sym2::Symbol) = get_interpolants(prof, variable_index(prof, sym1), variable_index(prof, sym2)) get_confidence_regions(prof::BivariateProfileLikelihoodSolution) = prof.confidence_regions get_confidence_regions(prof::BivariateProfileLikelihoodSolution, i, j) = get_confidence_regions(prof)[(i, j)] -get_confidence_regions(prof::BivariateProfileLikelihoodSolution, sym1::Symbol, sym2::Symbol) = get_confidence_regions(prof, SciMLBase.sym_to_index(sym1, prof), SciMLBase.sym_to_index(sym2, prof)) +get_confidence_regions(prof::BivariateProfileLikelihoodSolution, sym1::Symbol, sym2::Symbol) = get_confidence_regions(prof, variable_index(prof, sym1), variable_index(prof, sym2)) get_other_mles(prof::BivariateProfileLikelihoodSolution) = prof.other_mles get_other_mles(prof::BivariateProfileLikelihoodSolution, i, j) = get_other_mles(prof)[(i, j)] -get_other_mles(prof::BivariateProfileLikelihoodSolution, sym1::Symbol, sym2::Symbol) = get_other_mles(prof, SciMLBase.sym_to_index(sym1, prof), SciMLBase.sym_to_index(sym2, prof)) +get_other_mles(prof::BivariateProfileLikelihoodSolution, sym1::Symbol, sym2::Symbol) = get_other_mles(prof, variable_index(prof, sym1), variable_index(prof, sym2)) get_other_mles(prof::BivariateProfileLikelihoodSolution, i, j, k, ℓ) = get_other_mles(prof, i, j)[k, ℓ] get_syms(prof::BivariateProfileLikelihoodSolution) = get_syms(get_likelihood_problem(prof)) -get_syms(prof::BivariateProfileLikelihoodSolution, i, j) = (get_syms(prof)[i], get_syms(prof)[j]) +get_syms(prof::BivariateProfileLikelihoodSolution, i, j) = (sys = variable_symbols(prof)[[i,j]]; return (sys[1], sys[2])) profiled_parameters(prof::BivariateProfileLikelihoodSolution) = (collect ∘ keys ∘ get_confidence_regions)(prof)::Vector{NTuple{2,Int}} number_of_profiled_parameters(prof::BivariateProfileLikelihoodSolution) = length(profiled_parameters(prof)) number_of_layers(prof::BivariateProfileLikelihoodSolution, i, j) = length(get_parameter_values(prof, i, j, 1)) ÷ 2 @@ -228,29 +222,16 @@ function Base.getindex(prof::PLS, i::Integer, j::Integer) where {PLS<:BivariateP throw(BoundsError(prof, (i, j))) end end -SciMLBase.sym_to_index(sym, prof::BivariateProfileLikelihoodSolution) = SciMLBase.sym_to_index(sym, get_syms(prof)) +SymbolicIndexingInterface.symbolic_container(prof::BivariateProfileLikelihoodSolution) = get_likelihood_problem(prof) +SymbolicIndexingInterface.symbolic_container(prof::BivariateProfileLikelihoodSolutionView) = get_parent(prof) function Base.getindex(prof::BivariateProfileLikelihoodSolution, sym1, sym2) - if SciMLBase.issymbollike(sym1) - i = SciMLBase.sym_to_index(sym1, prof) - else - i = sym1 - end - if SciMLBase.issymbollike(sym2) - j = SciMLBase.sym_to_index(sym2, prof) - else - j = sym2 - end - if i === nothing - throw(BoundsError(prof, sym1)) - elseif j === nothing - throw(BoundsError(prof, sym2)) - else - prof[i, j] - end + idx1 = variable_index(prof, sym1) + idx2 = variable_index(prof, sym2) + return prof[idx1, idx2] end function Base.getindex(prof::BivariateProfileLikelihoodSolution, ij::NTuple{2}) return prof[ij[1], ij[2]] -end +end get_parent(prof::BivariateProfileLikelihoodSolutionView) = prof.parent get_index(::BivariateProfileLikelihoodSolutionView{N,M,PLS}) where {N,M,PLS} = (N, M) diff --git a/src/utils.jl b/src/utils.jl index 79a9409..e6940bd 100644 --- a/src/utils.jl +++ b/src/utils.jl @@ -62,7 +62,11 @@ function linear_extrapolation!(y, x, x₀, y₀, x₁, y₁) end function convert_symbol_tuples(n::NTuple{M,NTuple{2,S where S<:Union{Integer,Symbol}}}, prob) where {M} - integer_n = ntuple(i -> (SciMLBase.sym_to_index(n[i][1], prob), SciMLBase.sym_to_index(n[i][2], prob)), M) + integer_n = ntuple(Val(M)) do i + i1 = variable_index(prob, n[i][1]) + i2 = variable_index(prob, n[i][2]) + (i1, i2) + end return integer_n end function convert_symbol_tuples(n::NTuple{2,S where S<:Union{Integer,Symbol}}, prob) diff --git a/test/Manifest.toml b/test/Manifest.toml index 63bdcb8..938acee 100644 --- a/test/Manifest.toml +++ b/test/Manifest.toml @@ -1,19 +1,24 @@ # This file is machine-generated - editing it directly is not advised -julia_version = "1.10.0-rc2" +julia_version = "1.10.4" manifest_format = "2.0" -project_hash = "fb8efbffffc3f376dc902b6951a77b5075734dd5" +project_hash = "1c90b613c96ffdf19c0a3223dfff3dd68692d51c" [[deps.ADTypes]] -git-tree-sha1 = "332e5d7baeff8497b923b730b994fa480601efc7" +git-tree-sha1 = "99a6f5d0ce1c7c6afdb759daa30226f71c54f6b0" uuid = "47edcb42-4c32-4615-8424-f2b9edc5f35b" -version = "0.2.5" +version = "1.7.1" +weakdeps = ["ChainRulesCore", "EnzymeCore"] -[[deps.AbbreviatedStackTraces]] -deps = ["Distributed", "REPL"] -git-tree-sha1 = "304f6b497d4a46312c1dd9a25d8cf47271632835" -uuid = "ac637c84-cc71-43bf-9c33-c1b4316be3d4" -version = "0.2.3" + [deps.ADTypes.extensions] + ADTypesChainRulesCoreExt = "ChainRulesCore" + ADTypesEnzymeCoreExt = "EnzymeCore" + +[[deps.ASL_jll]] +deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] +git-tree-sha1 = "6252039f98492252f9e47c312c8ffda0e3b9e78d" +uuid = "ae81ac8f-d209-56e5-92de-9978fef736f9" +version = "0.1.3+0" [[deps.AbstractFFTs]] deps = ["LinearAlgebra"] @@ -26,27 +31,23 @@ weakdeps = ["ChainRulesCore", "Test"] AbstractFFTsChainRulesCoreExt = "ChainRulesCore" AbstractFFTsTestExt = "Test" -[[deps.AbstractLattices]] -git-tree-sha1 = "222ee9e50b98f51b5d78feb93dd928880df35f06" -uuid = "398f06c4-4d28-53ec-89ca-5b2656b7603d" -version = "0.3.0" - [[deps.AbstractTrees]] -git-tree-sha1 = "faa260e4cb5aba097a73fab382dd4b5819d8ec8c" +git-tree-sha1 = "2d9c9a55f9c93e8887ad391fbae72f8ef55e1177" uuid = "1520ce14-60c1-5f80-bbc7-55ef81b5835c" -version = "0.4.4" +version = "0.4.5" [[deps.Accessors]] -deps = ["CompositionsBase", "ConstructionBase", "Dates", "InverseFunctions", "LinearAlgebra", "MacroTools", "Test"] -git-tree-sha1 = "a7055b939deae2455aa8a67491e034f735dd08d3" +deps = ["CompositionsBase", "ConstructionBase", "Dates", "InverseFunctions", "LinearAlgebra", "MacroTools", "Markdown", "Test"] +git-tree-sha1 = "f61b15be1d76846c0ce31d3fcfac5380ae53db6a" uuid = "7d9f7c33-5ae7-4f3b-8dc6-eff91059b697" -version = "0.1.33" +version = "0.1.37" [deps.Accessors.extensions] AccessorsAxisKeysExt = "AxisKeys" AccessorsIntervalSetsExt = "IntervalSets" AccessorsStaticArraysExt = "StaticArrays" AccessorsStructArraysExt = "StructArrays" + AccessorsUnitfulExt = "Unitful" [deps.Accessors.weakdeps] AxisKeys = "94b1ba4f-4ee9-5380-92f1-94cde586c3c5" @@ -54,17 +55,29 @@ version = "0.1.33" Requires = "ae029012-a4dd-5104-9daa-d747884805df" StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" StructArrays = "09ab397b-f2b6-538f-b94a-2f83cf4a842a" + Unitful = "1986cc42-f94f-5a68-af5c-568840ba703d" [[deps.Adapt]] deps = ["LinearAlgebra", "Requires"] -git-tree-sha1 = "02f731463748db57cc2ebfbd9fbc9ce8280d3433" +git-tree-sha1 = "6a55b747d1812e699320963ffde36f1ebdda4099" uuid = "79e6a3ab-5dfb-504d-930d-738a2a938a0e" -version = "3.7.1" +version = "4.0.4" weakdeps = ["StaticArrays"] [deps.Adapt.extensions] AdaptStaticArraysExt = "StaticArrays" +[[deps.AdaptivePredicates]] +git-tree-sha1 = "7d5da5dd472490d048b081ca1bda4a7821b06456" +uuid = "35492f91-a3bd-45ad-95db-fcad7dcfedb7" +version = "1.1.1" + +[[deps.AliasTables]] +deps = ["PtrArrays", "Random"] +git-tree-sha1 = "9876e1e164b144ca45e9e3198d0b689cadfed9ff" +uuid = "66dad0bd-aa9a-41b7-9441-69ab47430ed8" +version = "1.1.3" + [[deps.Animations]] deps = ["Colors"] git-tree-sha1 = "e81c509d2c8e49592413bfb0bb3b08150056c79d" @@ -77,21 +90,25 @@ version = "1.1.1" [[deps.ArnoldiMethod]] deps = ["LinearAlgebra", "Random", "StaticArrays"] -git-tree-sha1 = "62e51b39331de8911e4a7ff6f5aaf38a5f4cc0ae" +git-tree-sha1 = "d57bd3762d308bded22c3b82d033bff85f6195c6" uuid = "ec485272-7323-5ecc-a04f-4719b315124d" -version = "0.2.0" +version = "0.4.0" [[deps.ArrayInterface]] -deps = ["Adapt", "LinearAlgebra", "Requires", "SparseArrays", "SuiteSparse"] -git-tree-sha1 = "247efbccf92448be332d154d6ca56b9fcdd93c31" +deps = ["Adapt", "LinearAlgebra"] +git-tree-sha1 = "f54c23a5d304fb87110de62bace7777d59088c34" uuid = "4fba245c-0d91-5ea0-9b3e-6abc04ee57a9" -version = "7.6.1" +version = "7.15.0" [deps.ArrayInterface.extensions] ArrayInterfaceBandedMatricesExt = "BandedMatrices" ArrayInterfaceBlockBandedMatricesExt = "BlockBandedMatrices" ArrayInterfaceCUDAExt = "CUDA" + ArrayInterfaceCUDSSExt = "CUDSS" + ArrayInterfaceChainRulesExt = "ChainRules" ArrayInterfaceGPUArraysCoreExt = "GPUArraysCore" + ArrayInterfaceReverseDiffExt = "ReverseDiff" + ArrayInterfaceSparseArraysExt = "SparseArrays" ArrayInterfaceStaticArraysCoreExt = "StaticArraysCore" ArrayInterfaceTrackerExt = "Tracker" @@ -99,24 +116,38 @@ version = "7.6.1" BandedMatrices = "aae01518-5342-5314-be14-df237901396f" BlockBandedMatrices = "ffab5731-97b5-5995-9138-79e8c1846df0" CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" + CUDSS = "45b445bb-4962-46a0-9369-b4df9d0f772e" + ChainRules = "082447d4-558c-5d27-93f4-14fc19e9eca2" GPUArraysCore = "46192b85-c4d5-4398-a991-12ede77f4527" + ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" + SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" StaticArraysCore = "1e83bf80-4336-4d27-bf5d-d5a4f845583c" Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" +[[deps.ArrayLayouts]] +deps = ["FillArrays", "LinearAlgebra"] +git-tree-sha1 = "0dd7edaff278e346eb0ca07a7e75c9438408a3ce" +uuid = "4c555306-a7a7-4459-81d9-ec55ddd5c99a" +version = "1.10.3" +weakdeps = ["SparseArrays"] + + [deps.ArrayLayouts.extensions] + ArrayLayoutsSparseArraysExt = "SparseArrays" + [[deps.Artifacts]] uuid = "56f22d72-fd6d-98f1-02f0-08ddc0907c33" [[deps.Automa]] deps = ["PrecompileTools", "TranscodingStreams"] -git-tree-sha1 = "0da671c730d79b8f9a88a391556ec695ea921040" +git-tree-sha1 = "014bc22d6c400a7703c0f5dc1fdc302440cf88be" uuid = "67c07d97-cdcb-5c2c-af73-a7f9c32a568b" -version = "1.0.2" +version = "1.0.4" [[deps.AxisAlgorithms]] deps = ["LinearAlgebra", "Random", "SparseArrays", "WoodburyMatrices"] -git-tree-sha1 = "66771c8d21c8ff5e3a93379480a2307ac36863f7" +git-tree-sha1 = "01b8ccb13d68535d73d2b0c23e39bd23155fb712" uuid = "13072b0f-2c55-5437-9ae7-d433b7a33950" -version = "1.0.1" +version = "1.1.0" [[deps.AxisArrays]] deps = ["Dates", "IntervalSets", "IterTools", "RangeArrays"] @@ -129,43 +160,62 @@ uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f" [[deps.BenchmarkTools]] deps = ["JSON", "Logging", "Printf", "Profile", "Statistics", "UUIDs"] -git-tree-sha1 = "f1f03a9fa24271160ed7e73051fba3c1a759b53f" +git-tree-sha1 = "f1dff6729bc61f4d49e140da1af55dcd1ac97b2f" uuid = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf" -version = "1.4.0" +version = "1.5.0" -[[deps.BitFlags]] -git-tree-sha1 = "2dc09997850d68179b69dafb58ae806167a32b1b" -uuid = "d1d4a3ce-64b1-5f1a-9ba4-7e7e69966f35" +[[deps.Bijections]] +git-tree-sha1 = "f5c6a2e1df5f1b2fd9262be1ce1e68a4eafff670" +uuid = "e2ed5e7c-b2de-5872-ae92-c73ca462fb04" version = "0.1.8" [[deps.BitTwiddlingConvenienceFunctions]] deps = ["Static"] -git-tree-sha1 = "0c5f81f47bbbcf4aea7b2959135713459170798b" +git-tree-sha1 = "f21cfd4950cb9f0587d5067e69405ad2acd27b87" uuid = "62783981-4cbd-42fc-bca8-16325de8dc4b" -version = "0.1.5" +version = "0.1.6" [[deps.BlackBoxOptim]] -deps = ["CPUTime", "Compat", "Distributed", "Distributions", "HTTP", "JSON", "LinearAlgebra", "Printf", "Random", "SpatialIndexing", "StatsBase"] -git-tree-sha1 = "136079f37e3514ec691926093924b591a8842f5d" +deps = ["CPUTime", "Compat", "Distributed", "Distributions", "JSON", "LinearAlgebra", "Printf", "Random", "Requires", "SpatialIndexing", "StatsBase"] +git-tree-sha1 = "9c203a2515b5eeab8f2987614d2b1db83ef03542" uuid = "a134a8b2-14d6-55f6-9291-3336d3ab0209" -version = "0.6.2" +version = "0.6.3" + + [deps.BlackBoxOptim.extensions] + BlackBoxOptimRealtimePlotServerExt = ["HTTP", "Sockets"] + + [deps.BlackBoxOptim.weakdeps] + HTTP = "cd3eb016-35fb-5094-929b-558a96fad6f3" + Sockets = "6462fe0b-24de-5631-8697-dd941f90decc" + +[[deps.BlockArrays]] +deps = ["ArrayLayouts", "FillArrays", "LinearAlgebra"] +git-tree-sha1 = "5c0ffe1dff8cb7112de075f1b1cb32191675fcba" +uuid = "8e7c35d0-a365-5155-bbbb-fb81a777f24e" +version = "1.1.0" + + [deps.BlockArrays.extensions] + BlockArraysBandedMatricesExt = "BandedMatrices" + + [deps.BlockArrays.weakdeps] + BandedMatrices = "aae01518-5342-5314-be14-df237901396f" [[deps.Bzip2_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "19a35467a82e236ff51bc17a3a44b69ef35185a2" +git-tree-sha1 = "9e2a6b69137e6969bab0152632dcb3bc108c8bdd" uuid = "6e34b625-4abd-537c-b88f-471c36dfa7a0" -version = "1.0.8+0" +version = "1.0.8+1" [[deps.CEnum]] -git-tree-sha1 = "eb4cb44a499229b3b8426dcfb5dd85333951ff90" +git-tree-sha1 = "389ad5c84de1ae7cf0e28e381131c98ea87d54fc" uuid = "fa961155-64e5-5f13-b03f-caf6b980ea82" -version = "0.4.2" +version = "0.5.0" [[deps.CPUSummary]] deps = ["CpuId", "IfElse", "PrecompileTools", "Static"] -git-tree-sha1 = "601f7e7b3d36f18790e2caf83a882d88e9b71ff1" +git-tree-sha1 = "5a97e67919535d6841172016c9530fd69494e5ec" uuid = "2a0fbf3d-bb9c-48f3-b0a9-814d99fd7ab9" -version = "0.2.4" +version = "0.2.6" [[deps.CPUTime]] git-tree-sha1 = "2dcc50ea6a0a1ef6440d6eecd0fe3813e5671f45" @@ -175,75 +225,69 @@ version = "1.0.0" [[deps.CRC32c]] uuid = "8bf52ea8-c179-5cab-976a-9e18b702a9bc" -[[deps.CRlibm]] -deps = ["CRlibm_jll"] -git-tree-sha1 = "32abd86e3c2025db5172aa182b982debed519834" -uuid = "96374032-68de-5a5b-8d9e-752f78720389" -version = "1.0.1" - [[deps.CRlibm_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] git-tree-sha1 = "e329286945d0cfc04456972ea732551869af1cfc" uuid = "4e9b3aee-d8a1-5a3d-ad8b-7d824db253f0" version = "1.0.1+0" +[[deps.CSTParser]] +deps = ["Tokenize"] +git-tree-sha1 = "0157e592151e39fa570645e2b2debcdfb8a0f112" +uuid = "00ebfdb7-1f24-5e51-bd34-a7502290713f" +version = "3.4.3" + [[deps.Cairo]] deps = ["Cairo_jll", "Colors", "Glib_jll", "Graphics", "Libdl", "Pango_jll"] -git-tree-sha1 = "d0b3f8b4ad16cb0a2988c6788646a5e6a17b6b1b" +git-tree-sha1 = "7b6ad8c35f4bc3bca8eb78127c8b99719506a5fb" uuid = "159f3aea-2a34-519c-b102-8c37f9878175" -version = "1.0.5" +version = "1.1.0" [[deps.CairoMakie]] -deps = ["CRC32c", "Cairo", "Colors", "FFTW", "FileIO", "FreeType", "GeometryBasics", "LinearAlgebra", "Makie", "PrecompileTools"] -git-tree-sha1 = "fdbad23ab5b44ecd1aa77c84e110becfddf2d789" +deps = ["CRC32c", "Cairo", "Cairo_jll", "Colors", "FileIO", "FreeType", "GeometryBasics", "LinearAlgebra", "Makie", "PrecompileTools"] +git-tree-sha1 = "361dec06290d76b6d70d0c7dc888038eec9df63a" uuid = "13f3f980-e62b-5c42-98c6-ff1f3baf88f0" -version = "0.11.2" +version = "0.12.9" [[deps.Cairo_jll]] -deps = ["Artifacts", "Bzip2_jll", "CompilerSupportLibraries_jll", "Fontconfig_jll", "FreeType2_jll", "Glib_jll", "JLLWrappers", "LZO_jll", "Libdl", "Pixman_jll", "Pkg", "Xorg_libXext_jll", "Xorg_libXrender_jll", "Zlib_jll", "libpng_jll"] -git-tree-sha1 = "4b859a208b2397a7a623a03449e4636bdb17bcf2" +deps = ["Artifacts", "Bzip2_jll", "CompilerSupportLibraries_jll", "Fontconfig_jll", "FreeType2_jll", "Glib_jll", "JLLWrappers", "LZO_jll", "Libdl", "Pixman_jll", "Xorg_libXext_jll", "Xorg_libXrender_jll", "Zlib_jll", "libpng_jll"] +git-tree-sha1 = "a2f1c8c668c8e3cb4cca4e57a8efdb09067bb3fd" uuid = "83423d85-b0ee-5818-9007-b63ccbeb887a" -version = "1.16.1+1" - -[[deps.Calculus]] -deps = ["LinearAlgebra"] -git-tree-sha1 = "f641eb0a4f00c343bbc32346e1217b86f3ce9dad" -uuid = "49dc2e85-a5d0-5ad3-a950-438e2897f1b9" -version = "0.5.1" +version = "1.18.0+2" [[deps.ChainRulesCore]] deps = ["Compat", "LinearAlgebra"] -git-tree-sha1 = "e0af648f0692ec1691b5d094b8724ba1346281cf" +git-tree-sha1 = "71acdbf594aab5bbb2cec89b208c41b4c411e49f" uuid = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" -version = "1.18.0" +version = "1.24.0" weakdeps = ["SparseArrays"] [deps.ChainRulesCore.extensions] ChainRulesCoreSparseArraysExt = "SparseArrays" [[deps.ChunkSplitters]] -deps = ["TestItems"] -git-tree-sha1 = "a0d0d0372dbc00735bce1976928094acedfdbf8e" +deps = ["Compat", "TestItems"] +git-tree-sha1 = "783507c1f2371c8f2d321f41c3057ecd42cafa83" uuid = "ae650224-84b6-46f8-82ea-d812ca08434e" -version = "2.0.3" +version = "2.4.5" [[deps.CloseOpenIntervals]] deps = ["Static", "StaticArrayInterface"] -git-tree-sha1 = "70232f82ffaab9dc52585e0dd043b5e0c6b714f1" +git-tree-sha1 = "05ba0d07cd4fd8b7a39541e31a7b0254704ea581" uuid = "fb6a15b2-703c-40df-9091-08a04967cfa9" -version = "0.1.12" +version = "0.1.13" [[deps.CodecBzip2]] -deps = ["Bzip2_jll", "Libdl", "TranscodingStreams"] -git-tree-sha1 = "c0ae2a86b162fb5d7acc65269b469ff5b8a73594" +deps = ["Bzip2_jll", "TranscodingStreams"] +git-tree-sha1 = "e7c529cc31bb85b97631b922fa2e6baf246f5905" uuid = "523fee87-0ab8-5b00-afb7-3ecf72e48cfd" -version = "0.8.1" +version = "0.8.4" [[deps.CodecZlib]] deps = ["TranscodingStreams", "Zlib_jll"] -git-tree-sha1 = "cd67fc487743b2f0fd4380d4cbd3a24660d0eec8" +git-tree-sha1 = "bce6804e5e6044c6daab27bb533d1295e4a2e759" uuid = "944b1d66-785c-5afd-91f1-9de20f533193" -version = "0.7.3" +version = "0.7.6" [[deps.ColorBrewer]] deps = ["Colors", "JSON", "Test"] @@ -253,49 +297,64 @@ version = "0.4.0" [[deps.ColorSchemes]] deps = ["ColorTypes", "ColorVectorSpace", "Colors", "FixedPointNumbers", "PrecompileTools", "Random"] -git-tree-sha1 = "67c1f244b991cad9b0aa4b7540fb758c2488b129" +git-tree-sha1 = "b5278586822443594ff615963b0c09755771b3e0" uuid = "35d6a980-a343-548e-a6ea-1d62b119f2f4" -version = "3.24.0" +version = "3.26.0" [[deps.ColorTypes]] deps = ["FixedPointNumbers", "Random"] -git-tree-sha1 = "eb7f0f8307f71fac7c606984ea5fb2817275d6e4" +git-tree-sha1 = "b10d0b65641d57b8b4d5e234446582de5047050d" uuid = "3da002f7-5984-5a60-b8a6-cbb66c0b333f" -version = "0.11.4" +version = "0.11.5" [[deps.ColorVectorSpace]] -deps = ["ColorTypes", "FixedPointNumbers", "LinearAlgebra", "SpecialFunctions", "Statistics", "TensorCore"] -git-tree-sha1 = "600cc5508d66b78aae350f7accdb58763ac18589" +deps = ["ColorTypes", "FixedPointNumbers", "LinearAlgebra", "Requires", "Statistics", "TensorCore"] +git-tree-sha1 = "a1f44953f2382ebb937d60dafbe2deea4bd23249" uuid = "c3611d14-8923-5661-9e6a-0046d554d3a4" -version = "0.9.10" +version = "0.10.0" +weakdeps = ["SpecialFunctions"] + + [deps.ColorVectorSpace.extensions] + SpecialFunctionsExt = "SpecialFunctions" [[deps.Colors]] deps = ["ColorTypes", "FixedPointNumbers", "Reexport"] -git-tree-sha1 = "fc08e5930ee9a4e03f84bfb5211cb54e7769758a" +git-tree-sha1 = "362a287c3aa50601b0bc359053d5c2468f0e7ce0" uuid = "5ae59095-9a9b-59fe-a467-6f913c188581" -version = "0.12.10" +version = "0.12.11" [[deps.Combinatorics]] git-tree-sha1 = "08c8b6831dc00bfea825826be0bc8336fc369860" uuid = "861a8166-3701-5b0c-9a16-15d98fcdc6aa" version = "1.0.2" +[[deps.CommonMark]] +deps = ["Crayons", "JSON", "PrecompileTools", "URIs"] +git-tree-sha1 = "532c4185d3c9037c0237546d817858b23cf9e071" +uuid = "a80b9123-70ca-4bc0-993e-6e3bcb318db6" +version = "0.8.12" + [[deps.CommonSolve]] git-tree-sha1 = "0eee5eb66b1cf62cd6ad1b460238e60e4b09400c" uuid = "38540f10-b2f7-11e9-35d8-d573e4eb0ff2" version = "0.2.4" [[deps.CommonSubexpressions]] -deps = ["MacroTools", "Test"] -git-tree-sha1 = "7b8a93dba8af7e3b42fecabf646260105ac373f7" +deps = ["MacroTools"] +git-tree-sha1 = "cda2cfaebb4be89c9084adaca7dd7333369715c5" uuid = "bbf7d656-a473-5ed7-a52c-81e309532950" -version = "0.3.0" +version = "0.3.1" + +[[deps.CommonWorldInvalidations]] +git-tree-sha1 = "ae52d1c52048455e85a387fbee9be553ec2b68d0" +uuid = "f70d9fcc-98c5-4d4a-abd7-e4cdeebd8ca8" +version = "1.0.0" [[deps.Compat]] -deps = ["UUIDs"] -git-tree-sha1 = "886826d76ea9e72b35fcd000e535588f7b60f21d" +deps = ["TOML", "UUIDs"] +git-tree-sha1 = "8ae8d32e09f0dcf42a36b90d4e17f5dd2e4c4215" uuid = "34da2185-b29b-5c13-b0c7-acf172513d20" -version = "4.10.1" +version = "4.16.0" weakdeps = ["Dates", "LinearAlgebra"] [deps.Compat.extensions] @@ -304,7 +363,12 @@ weakdeps = ["Dates", "LinearAlgebra"] [[deps.CompilerSupportLibraries_jll]] deps = ["Artifacts", "Libdl"] uuid = "e66e0078-7015-5450-92f7-15fbd957f2ae" -version = "1.0.5+1" +version = "1.1.1+0" + +[[deps.CompositeTypes]] +git-tree-sha1 = "bce26c3dab336582805503bed209faab1c279768" +uuid = "b152e2b5-7a66-4b01-a709-34e65c35f657" +version = "0.1.4" [[deps.CompositionsBase]] git-tree-sha1 = "802bb88cd69dfd1509f6670416bd4434015693ad" @@ -320,12 +384,6 @@ git-tree-sha1 = "f749037478283d372048690eb3b5f92a79432b34" uuid = "2569d6c7-a4a2-43d3-a901-331e8e4be471" version = "0.2.3" -[[deps.ConcurrentUtilities]] -deps = ["Serialization", "Sockets"] -git-tree-sha1 = "8cfa272e8bdedfa88b6aefbbca7c19f1befac519" -uuid = "f0e56b4a-5159-44fe-b623-3e5288b988bb" -version = "2.3.0" - [[deps.ConsoleProgressMonitor]] deps = ["Logging", "ProgressMeter"] git-tree-sha1 = "3ab7b2136722890b9af903859afcf457fa3059e8" @@ -334,9 +392,9 @@ version = "0.1.2" [[deps.ConstructionBase]] deps = ["LinearAlgebra"] -git-tree-sha1 = "c53fc348ca4d40d7b371e71fd52251839080cbc9" +git-tree-sha1 = "a33b7ced222c6165f624a3f2b55945fac5a598d9" uuid = "187b0558-2788-49d3-abe0-74a17ed4e7c9" -version = "1.5.4" +version = "1.5.7" weakdeps = ["IntervalSets", "StaticArrays"] [deps.ConstructionBase.extensions] @@ -344,9 +402,9 @@ weakdeps = ["IntervalSets", "StaticArrays"] ConstructionBaseStaticArraysExt = "StaticArrays" [[deps.Contour]] -git-tree-sha1 = "d05d9e7b7aedff4e5b51a029dced05cfb6125781" +git-tree-sha1 = "439e35b0b36e2e5881738abc8857bd92ad6ff9a8" uuid = "d38c429a-6771-53c6-b99e-75d170b6e991" -version = "0.6.2" +version = "0.6.3" [[deps.CpuId]] deps = ["Markdown"] @@ -359,16 +417,22 @@ git-tree-sha1 = "249fe38abf76d48563e2f4556bebd215aa317e15" uuid = "a8cc5b0e-0ffa-5ad4-8c14-923d3ee1735f" version = "4.1.1" +[[deps.DSP]] +deps = ["Compat", "FFTW", "IterTools", "LinearAlgebra", "Polynomials", "Random", "Reexport", "SpecialFunctions", "Statistics"] +git-tree-sha1 = "f7f4319567fe769debfcf7f8c03d8da1dd4e2fb0" +uuid = "717857b8-e6f2-59f4-9121-6e50c889abd2" +version = "0.7.9" + [[deps.DataAPI]] -git-tree-sha1 = "8da84edb865b0b5b0100c0666a9bc9a0b71c553c" +git-tree-sha1 = "abe83f3a2f1b857aac70ef8b269080af17764bbe" uuid = "9a962f9c-6df0-11e9-0e5d-c546b8b5ee8a" -version = "1.15.0" +version = "1.16.0" [[deps.DataInterpolations]] -deps = ["LinearAlgebra", "PrettyTables", "RecipesBase", "RecursiveArrayTools", "Reexport", "Requires"] -git-tree-sha1 = "97b5c6115165fc9f99908cbdd2ea4c0efda0843e" +deps = ["FindFirstFunctions", "ForwardDiff", "LinearAlgebra", "PrettyTables", "RecipesBase", "Reexport"] +git-tree-sha1 = "10b07a0c9edca784875c782206f66a4b68ac403f" uuid = "82cc6244-b520-54b8-b5a6-8a565e85f1d0" -version = "4.5.0" +version = "6.4.0" [deps.DataInterpolations.extensions] DataInterpolationsChainRulesCoreExt = "ChainRulesCore" @@ -381,12 +445,13 @@ version = "4.5.0" Optim = "429524aa-4258-5aef-a3af-852621145aeb" RegularizationTools = "29dad682-9a27-4bc3-9c72-016788665182" Symbolics = "0c5d862f-8b57-4792-8d23-62f2024744c7" + Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" [[deps.DataStructures]] deps = ["Compat", "InteractiveUtils", "OrderedCollections"] -git-tree-sha1 = "3dbd312d370723b6bb43ba9d02fc36abade4518d" +git-tree-sha1 = "1d0a14036acb104d9e89698bd408f63ab58cdc82" uuid = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8" -version = "0.18.15" +version = "0.18.20" [[deps.DataValueInterfaces]] git-tree-sha1 = "bfc1187b79289637fa0ef6d4436ebdfe6905cbd6" @@ -403,24 +468,25 @@ uuid = "ab62b9b5-e342-54a8-a765-a90f495de1a6" version = "1.2.0" [[deps.DelaunayTriangulation]] -deps = ["DataStructures", "EnumX", "ExactPredicates", "Random", "SimpleGraphs"] -git-tree-sha1 = "26eb8e2331b55735c3d305d949aabd7363f07ba7" +deps = ["AdaptivePredicates", "EnumX", "ExactPredicates", "Random"] +git-tree-sha1 = "b5f1c6532d2ea71e99b74231b0a3d53fba846ced" uuid = "927a84f5-c5f4-47a5-9785-b46e178433df" -version = "0.8.11" +version = "1.1.3" -[[deps.DelimitedFiles]] -deps = ["Mmap"] -git-tree-sha1 = "9e2f36d3c96a820c678f2f1f1782582fcf685bae" -uuid = "8bb1440f-4735-579b-a4ab-409b98df4dab" -version = "1.9.1" +[[deps.Dictionaries]] +deps = ["Indexing", "Random", "Serialization"] +git-tree-sha1 = "35b66b6744b2d92c778afd3a88d2571875664a2a" +uuid = "85a47980-9c8c-11e8-2b9f-f7ca1fa99fb4" +version = "0.4.2" [[deps.DiffEqBase]] -deps = ["ArrayInterface", "DataStructures", "DocStringExtensions", "EnumX", "EnzymeCore", "FastBroadcast", "ForwardDiff", "FunctionWrappers", "FunctionWrappersWrappers", "LinearAlgebra", "Logging", "Markdown", "MuladdMacro", "Parameters", "PreallocationTools", "PrecompileTools", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "SparseArrays", "Static", "StaticArraysCore", "Statistics", "Tricks", "TruncatedStacktraces"] -git-tree-sha1 = "309efb205c30d43b595466283bbecf2769283e22" +deps = ["ArrayInterface", "ConcreteStructs", "DataStructures", "DocStringExtensions", "EnumX", "EnzymeCore", "FastBroadcast", "FastClosures", "ForwardDiff", "FunctionWrappers", "FunctionWrappersWrappers", "LinearAlgebra", "Logging", "Markdown", "MuladdMacro", "Parameters", "PreallocationTools", "PrecompileTools", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "Static", "StaticArraysCore", "Statistics", "Tricks", "TruncatedStacktraces"] +git-tree-sha1 = "4cb796ab54311147b9c7191d34d502693b603a22" uuid = "2b5f629d-d688-5b77-993f-72d75c75574e" -version = "6.141.0" +version = "6.154.0" [deps.DiffEqBase.extensions] + DiffEqBaseCUDAExt = "CUDA" DiffEqBaseChainRulesCoreExt = "ChainRulesCore" DiffEqBaseDistributionsExt = "Distributions" DiffEqBaseEnzymeExt = ["ChainRulesCore", "Enzyme"] @@ -429,10 +495,12 @@ version = "6.141.0" DiffEqBaseMeasurementsExt = "Measurements" DiffEqBaseMonteCarloMeasurementsExt = "MonteCarloMeasurements" DiffEqBaseReverseDiffExt = "ReverseDiff" + DiffEqBaseSparseArraysExt = "SparseArrays" DiffEqBaseTrackerExt = "Tracker" DiffEqBaseUnitfulExt = "Unitful" [deps.DiffEqBase.weakdeps] + CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" Distributions = "31c24e10-a181-5473-b8eb-7969acd0382f" Enzyme = "7da242da-08ed-463a-9acd-ee780be4f1d9" @@ -441,9 +509,32 @@ version = "6.141.0" Measurements = "eff96d63-e80a-5855-80a2-b1b0885c5ab7" MonteCarloMeasurements = "0987c9cc-fe09-11e8-30f0-b96dd679fdca" ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" + SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" Unitful = "1986cc42-f94f-5a68-af5c-568840ba703d" +[[deps.DiffEqCallbacks]] +deps = ["DataStructures", "DiffEqBase", "ForwardDiff", "Functors", "LinearAlgebra", "Markdown", "NonlinearSolve", "Parameters", "RecipesBase", "RecursiveArrayTools", "SciMLBase", "StaticArraysCore"] +git-tree-sha1 = "befc86364d9b36abc6d874f91ab5d7b4d5e6bb62" +uuid = "459566f4-90b8-5000-8ac3-15dfb0a30def" +version = "3.8.0" + + [deps.DiffEqCallbacks.weakdeps] + OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed" + Sundials = "c3572dad-4567-51f8-b174-8c6c989267f4" + +[[deps.DiffEqNoiseProcess]] +deps = ["DiffEqBase", "Distributions", "GPUArraysCore", "LinearAlgebra", "Markdown", "Optim", "PoissonRandom", "QuadGK", "Random", "Random123", "RandomNumbers", "RecipesBase", "RecursiveArrayTools", "ResettableStacks", "SciMLBase", "StaticArraysCore", "Statistics"] +git-tree-sha1 = "ab1e6515ce15f01316a9825b02729fefa51726bd" +uuid = "77a26b50-5914-5dd7-bc55-306e6241c503" +version = "5.23.0" + + [deps.DiffEqNoiseProcess.extensions] + DiffEqNoiseProcessReverseDiffExt = "ReverseDiff" + + [deps.DiffEqNoiseProcess.weakdeps] + ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" + [[deps.DiffResults]] deps = ["StaticArraysCore"] git-tree-sha1 = "782dd5f4561f5d267313f23853baaaa4c52ea621" @@ -456,6 +547,42 @@ git-tree-sha1 = "23163d55f885173722d1e4cf0f6110cdbaf7e272" uuid = "b552c78f-8df3-52c6-915a-8e097449b14b" version = "1.15.1" +[[deps.DifferentiationInterface]] +deps = ["ADTypes", "Compat", "DocStringExtensions", "FillArrays", "LinearAlgebra", "PackageExtensionCompat", "SparseArrays", "SparseMatrixColorings"] +git-tree-sha1 = "e53e4eb7f8e7b25656ea17263b0c22f129091eeb" +uuid = "a0c0ee7d-e4b9-4e03-894e-1c5f64a51d63" +version = "0.5.15" + + [deps.DifferentiationInterface.extensions] + DifferentiationInterfaceChainRulesCoreExt = "ChainRulesCore" + DifferentiationInterfaceDiffractorExt = "Diffractor" + DifferentiationInterfaceEnzymeExt = "Enzyme" + DifferentiationInterfaceFastDifferentiationExt = "FastDifferentiation" + DifferentiationInterfaceFiniteDiffExt = "FiniteDiff" + DifferentiationInterfaceFiniteDifferencesExt = "FiniteDifferences" + DifferentiationInterfaceForwardDiffExt = "ForwardDiff" + DifferentiationInterfacePolyesterForwardDiffExt = "PolyesterForwardDiff" + DifferentiationInterfaceReverseDiffExt = "ReverseDiff" + DifferentiationInterfaceSymbolicsExt = "Symbolics" + DifferentiationInterfaceTapirExt = "Tapir" + DifferentiationInterfaceTrackerExt = "Tracker" + DifferentiationInterfaceZygoteExt = ["Zygote", "ForwardDiff"] + + [deps.DifferentiationInterface.weakdeps] + ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" + Diffractor = "9f5e2b26-1114-432f-b630-d3fe2085c51c" + Enzyme = "7da242da-08ed-463a-9acd-ee780be4f1d9" + FastDifferentiation = "eb9bf01b-bf85-4b60-bf87-ee5de06c00be" + FiniteDiff = "6a86dc24-6348-571c-b903-95158fe2bd41" + FiniteDifferences = "26cc04aa-876d-5657-8c51-4c34ba976000" + ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210" + PolyesterForwardDiff = "98d1487c-24ca-40b6-b7ab-df2af84e126b" + ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" + Symbolics = "0c5d862f-8b57-4792-8d23-62f2024744c7" + Tapir = "07d77754-e150-4737-8c94-cd238a1fb45b" + Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" + Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" + [[deps.Distances]] deps = ["LinearAlgebra", "Statistics", "StatsAPI"] git-tree-sha1 = "66c4c81f259586e8f002eacebc177e1fb06363b0" @@ -472,10 +599,10 @@ deps = ["Random", "Serialization", "Sockets"] uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b" [[deps.Distributions]] -deps = ["FillArrays", "LinearAlgebra", "PDMats", "Printf", "QuadGK", "Random", "SpecialFunctions", "Statistics", "StatsAPI", "StatsBase", "StatsFuns"] -git-tree-sha1 = "a6c00f894f24460379cb7136633cef54ac9f6f4a" +deps = ["AliasTables", "FillArrays", "LinearAlgebra", "PDMats", "Printf", "QuadGK", "Random", "SpecialFunctions", "Statistics", "StatsAPI", "StatsBase", "StatsFuns"] +git-tree-sha1 = "e6c693a0e4394f8fda0e51a5bdf5aef26f8235e9" uuid = "31c24e10-a181-5473-b8eb-7969acd0382f" -version = "0.25.103" +version = "0.25.111" [deps.Distributions.extensions] DistributionsChainRulesCoreExt = "ChainRulesCore" @@ -493,16 +620,44 @@ git-tree-sha1 = "2fb1e02f2b635d0845df5d7c167fec4dd739b00d" uuid = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae" version = "0.9.3" +[[deps.DomainSets]] +deps = ["CompositeTypes", "IntervalSets", "LinearAlgebra", "Random", "StaticArrays"] +git-tree-sha1 = "490392af2c7d63183bfa2c8aaa6ab981c5ba7561" +uuid = "5b8099bc-c8ec-5219-889f-1d9e522a28bf" +version = "0.7.14" +weakdeps = ["Makie"] + + [deps.DomainSets.extensions] + DomainSetsMakieExt = "Makie" + [[deps.Downloads]] deps = ["ArgTools", "FileWatching", "LibCURL", "NetworkOptions"] uuid = "f43a241f-c20a-4ad4-852c-f6b1247861c6" version = "1.6.0" -[[deps.DualNumbers]] -deps = ["Calculus", "NaNMath", "SpecialFunctions"] -git-tree-sha1 = "5837a837389fccf076445fce071c8ddaea35a566" -uuid = "fa6b7ba4-c1ee-5f82-b5fc-ecf0adba8f74" -version = "0.6.8" +[[deps.DynamicPolynomials]] +deps = ["Future", "LinearAlgebra", "MultivariatePolynomials", "MutableArithmetics", "Reexport", "Test"] +git-tree-sha1 = "bbf1ace0781d9744cb697fb856bd2c3f6568dadb" +uuid = "7c1d4256-1411-5781-91ec-d7bc3513ac07" +version = "0.6.0" + +[[deps.DynamicQuantities]] +deps = ["Compat", "PackageExtensionCompat", "Tricks"] +git-tree-sha1 = "412b25c7d99ec6b06967d315c7b29bb8e484f092" +uuid = "06fc5a27-2a28-4c7c-a15d-362465fb6821" +version = "0.13.2" + + [deps.DynamicQuantities.extensions] + DynamicQuantitiesLinearAlgebraExt = "LinearAlgebra" + DynamicQuantitiesMeasurementsExt = "Measurements" + DynamicQuantitiesScientificTypesExt = "ScientificTypes" + DynamicQuantitiesUnitfulExt = "Unitful" + + [deps.DynamicQuantities.weakdeps] + LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" + Measurements = "eff96d63-e80a-5855-80a2-b1b0885c5ab7" + ScientificTypes = "321657f4-b219-11e9-178b-2701a2544e81" + Unitful = "1986cc42-f94f-5a68-af5c-568840ba703d" [[deps.EarCut_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] @@ -510,67 +665,71 @@ git-tree-sha1 = "e3290f2d49e661fbd94046d7e3726ffcb2d41053" uuid = "5ae413db-bbd1-5e63-b57d-d24a61df00f5" version = "2.2.4+0" +[[deps.Einsum]] +deps = ["Compat"] +git-tree-sha1 = "4a6b3eee0161c89700b6c1949feae8b851da5494" +uuid = "b7d42ee7-0b51-5a75-98ca-779d3107e4c0" +version = "0.4.1" + [[deps.EnumX]] git-tree-sha1 = "bdb1942cd4c45e3c678fd11569d5cccd80976237" uuid = "4e289a0a-7415-4d19-859d-a7e5c4648b56" version = "1.0.4" [[deps.EnzymeCore]] -deps = ["Adapt"] -git-tree-sha1 = "2efe862de93cd87f620ad6ac9c9e3f83f1b2841b" +git-tree-sha1 = "8f205a601760f4798a10f138c3940f0451d95188" uuid = "f151be2c-9106-41f4-ab19-57ee4f262869" -version = "0.6.4" +version = "0.7.8" +weakdeps = ["Adapt"] -[[deps.ErrorfreeArithmetic]] -git-tree-sha1 = "d6863c556f1142a061532e79f611aa46be201686" -uuid = "90fa49ef-747e-5e6f-a989-263ba693cf1a" -version = "0.5.2" + [deps.EnzymeCore.extensions] + AdaptExt = "Adapt" [[deps.ExactPredicates]] -deps = ["IntervalArithmetic", "Random", "StaticArraysCore"] -git-tree-sha1 = "499b1ca78f6180c8f8bdf1cabde2d39120229e5c" +deps = ["IntervalArithmetic", "Random", "StaticArrays"] +git-tree-sha1 = "b3f2ff58735b5f024c392fde763f29b057e4b025" uuid = "429591f6-91af-11e9-00e2-59fbe8cec110" -version = "2.2.6" - -[[deps.ExceptionUnwrapping]] -deps = ["Test"] -git-tree-sha1 = "e90caa41f5a86296e014e148ee061bd6c3edec96" -uuid = "460bff9d-24e4-43bc-9d9f-a8973cb893f4" -version = "0.1.9" +version = "2.2.8" [[deps.Expat_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "4558ab818dcceaab612d1bb8c19cee87eda2b83c" +git-tree-sha1 = "1c6317308b9dc757616f0b5cb379db10494443a7" uuid = "2e619515-83b5-522b-bb60-26c02a35a201" -version = "2.5.0+0" +version = "2.6.2+0" [[deps.ExponentialUtilities]] deps = ["Adapt", "ArrayInterface", "GPUArraysCore", "GenericSchur", "LinearAlgebra", "PrecompileTools", "Printf", "SparseArrays", "libblastrampoline_jll"] -git-tree-sha1 = "602e4585bcbd5a25bc06f514724593d13ff9e862" +git-tree-sha1 = "8e18940a5ba7f4ddb41fe2b79b6acaac50880a86" uuid = "d4d017d3-3776-5f7e-afef-a10c40355c18" -version = "1.25.0" +version = "1.26.1" [[deps.ExprTools]] git-tree-sha1 = "27415f162e6028e81c72b82ef756bf321213b6ec" uuid = "e2ba6199-217a-4e67-a87a-7c52f15ade04" version = "0.1.10" +[[deps.Expronicon]] +deps = ["MLStyle", "Pkg", "TOML"] +git-tree-sha1 = "fc3951d4d398b5515f91d7fe5d45fc31dccb3c9b" +uuid = "6b7a57c9-7cc1-4fdf-b7f5-e857abae3636" +version = "0.8.5" + [[deps.Extents]] -git-tree-sha1 = "2140cd04483da90b2da7f99b2add0750504fc39c" +git-tree-sha1 = "81023caa0021a41712685887db1fc03db26f41f5" uuid = "411431e0-e8b7-467b-b5e0-f676ba4f2910" -version = "0.1.2" +version = "0.1.4" [[deps.FFMPEG_jll]] deps = ["Artifacts", "Bzip2_jll", "FreeType2_jll", "FriBidi_jll", "JLLWrappers", "LAME_jll", "Libdl", "Ogg_jll", "OpenSSL_jll", "Opus_jll", "PCRE2_jll", "Zlib_jll", "libaom_jll", "libass_jll", "libfdk_aac_jll", "libvorbis_jll", "x264_jll", "x265_jll"] -git-tree-sha1 = "466d45dc38e15794ec7d5d63ec03d776a9aff36e" +git-tree-sha1 = "8cc47f299902e13f90405ddb5bf87e5d474c0d38" uuid = "b22a6f82-2f65-5046-a5b2-351ab43fb4e5" -version = "4.4.4+1" +version = "6.1.2+0" [[deps.FFTW]] deps = ["AbstractFFTs", "FFTW_jll", "LinearAlgebra", "MKL_jll", "Preferences", "Reexport"] -git-tree-sha1 = "b4fbdd20c889804969571cc589900803edda16b7" +git-tree-sha1 = "4820348781ae578893311153d69049a93d05f39d" uuid = "7a1cc6ca-52ef-59f5-83cd-3a7055c09341" -version = "1.7.1" +version = "1.8.0" [[deps.FFTW_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] @@ -580,9 +739,9 @@ version = "3.3.10+0" [[deps.FastBroadcast]] deps = ["ArrayInterface", "LinearAlgebra", "Polyester", "Static", "StaticArrayInterface", "StrideArraysCore"] -git-tree-sha1 = "a6e756a880fc419c8b41592010aebe6a5ce09136" +git-tree-sha1 = "ab1b34570bcdf272899062e1a56285a53ecaae08" uuid = "7034ab61-46d4-4ed7-9d0f-46aef9175898" -version = "0.2.8" +version = "0.3.5" [[deps.FastClosures]] git-tree-sha1 = "acebe244d53ee1b461970f8910c235b259e772ef" @@ -591,21 +750,15 @@ version = "0.3.2" [[deps.FastLapackInterface]] deps = ["LinearAlgebra"] -git-tree-sha1 = "b12f05108e405dadcc2aff0008db7f831374e051" +git-tree-sha1 = "cbf5edddb61a43669710cbc2241bc08b36d9e660" uuid = "29a986be-02c6-4525-aec4-84b980013641" -version = "2.0.0" - -[[deps.FastRounding]] -deps = ["ErrorfreeArithmetic", "LinearAlgebra"] -git-tree-sha1 = "6344aa18f654196be82e62816935225b3b9abe44" -uuid = "fa42c844-2597-5d31-933b-ebd51ab2693f" -version = "0.3.1" +version = "2.0.4" [[deps.FileIO]] deps = ["Pkg", "Requires", "UUIDs"] -git-tree-sha1 = "299dc33549f68299137e51e6d49a13b5b1da9673" +git-tree-sha1 = "82d8afa92ecf4b52d78d869f038ebfb881267322" uuid = "5789e2e9-d7fb-5bc7-8068-2c6fae9b9549" -version = "1.16.1" +version = "1.16.3" [[deps.FilePaths]] deps = ["FilePathsBase", "MacroTools", "Reexport", "Requires"] @@ -614,19 +767,24 @@ uuid = "8fc22ac5-c921-52a6-82fd-178b2807b824" version = "0.8.3" [[deps.FilePathsBase]] -deps = ["Compat", "Dates", "Mmap", "Printf", "Test", "UUIDs"] -git-tree-sha1 = "9f00e42f8d99fdde64d40c8ea5d14269a2e2c1aa" +deps = ["Compat", "Dates"] +git-tree-sha1 = "7878ff7172a8e6beedd1dea14bd27c3c6340d361" uuid = "48062228-2e41-5def-b9a4-89aafe57970f" -version = "0.9.21" +version = "0.9.22" +weakdeps = ["Mmap", "Test"] + + [deps.FilePathsBase.extensions] + FilePathsBaseMmapExt = "Mmap" + FilePathsBaseTestExt = "Test" [[deps.FileWatching]] uuid = "7b1f6079-737a-58dc-b8bc-7a2ca5c1b5ee" [[deps.FillArrays]] -deps = ["LinearAlgebra", "Random"] -git-tree-sha1 = "01dba5dbad6b2766e2ddd7b9d64af0e6d68d95cd" +deps = ["LinearAlgebra"] +git-tree-sha1 = "fd0002c0b5362d7eb952450ad5eb742443340d6e" uuid = "1a297f60-69ca-5386-bcde-b61e274b549b" -version = "1.9.1" +version = "1.12.0" weakdeps = ["PDMats", "SparseArrays", "Statistics"] [deps.FillArrays.extensions] @@ -634,11 +792,16 @@ weakdeps = ["PDMats", "SparseArrays", "Statistics"] FillArraysSparseArraysExt = "SparseArrays" FillArraysStatisticsExt = "Statistics" +[[deps.FindFirstFunctions]] +git-tree-sha1 = "fa0ba2042021409deb144f868abafde0b06be8f0" +uuid = "64ca27bc-2ba2-4a57-88aa-44e436879224" +version = "1.3.0" + [[deps.FiniteDiff]] -deps = ["ArrayInterface", "LinearAlgebra", "Requires", "Setfield", "SparseArrays"] -git-tree-sha1 = "c6e4a1fbe73b31a3dea94b1da449503b8830c306" +deps = ["ArrayInterface", "LinearAlgebra", "Setfield", "SparseArrays"] +git-tree-sha1 = "f9219347ebf700e77ca1d48ef84e4a82a6701882" uuid = "6a86dc24-6348-571c-b903-95158fe2bd41" -version = "2.21.1" +version = "2.24.0" [deps.FiniteDiff.extensions] FiniteDiffBandedMatricesExt = "BandedMatrices" @@ -652,27 +815,26 @@ version = "2.21.1" [[deps.FiniteVolumeMethod]] deps = ["ChunkSplitters", "CommonSolve", "DelaunayTriangulation", "LinearAlgebra", "PreallocationTools", "PrecompileTools", "SciMLBase", "SparseArrays"] -git-tree-sha1 = "4a000442e807c67821f7ef07afed9e447e71b2c7" +git-tree-sha1 = "c4e31b97cd404f6c823f6d5a3937383abb655e54" uuid = "d4f04ab7-4f65-4d72-8a28-7087bc7f46f4" -version = "1.1.2" +version = "1.1.3" [[deps.FixedPointNumbers]] deps = ["Statistics"] -git-tree-sha1 = "335bfdceacc84c5cdf16aadc768aa5ddfc5383cc" +git-tree-sha1 = "05882d6995ae5c12bb5f36dd2ed3f61c98cbb172" uuid = "53c48c17-4a7d-5ca2-90c5-79b7896eea93" -version = "0.8.4" +version = "0.8.5" [[deps.Fontconfig_jll]] -deps = ["Artifacts", "Bzip2_jll", "Expat_jll", "FreeType2_jll", "JLLWrappers", "Libdl", "Libuuid_jll", "Pkg", "Zlib_jll"] -git-tree-sha1 = "21efd19106a55620a188615da6d3d06cd7f6ee03" +deps = ["Artifacts", "Bzip2_jll", "Expat_jll", "FreeType2_jll", "JLLWrappers", "Libdl", "Libuuid_jll", "Zlib_jll"] +git-tree-sha1 = "db16beca600632c95fc8aca29890d83788dd8b23" uuid = "a3f928ae-7b40-5064-980b-68af3947d34b" -version = "2.13.93+0" +version = "2.13.96+0" -[[deps.Formatting]] -deps = ["Printf"] -git-tree-sha1 = "8339d61043228fdd3eb658d86c926cb282ae72a8" -uuid = "59287772-0a20-5a39-b81b-1366585eb4c0" -version = "0.4.2" +[[deps.Format]] +git-tree-sha1 = "9c68794ef81b08086aeb32eeaf33531668d5f5fc" +uuid = "1fa38f19-a742-5d3f-a2b9-30dd87b9d5f8" +version = "1.3.7" [[deps.ForwardDiff]] deps = ["CommonSubexpressions", "DiffResults", "DiffRules", "LinearAlgebra", "LogExpFunctions", "NaNMath", "Preferences", "Printf", "Random", "SpecialFunctions"] @@ -686,27 +848,27 @@ weakdeps = ["StaticArrays"] [[deps.FreeType]] deps = ["CEnum", "FreeType2_jll"] -git-tree-sha1 = "50351f83f95282cf903e968d7c6e8d44a5f83d0b" +git-tree-sha1 = "907369da0f8e80728ab49c1c7e09327bf0d6d999" uuid = "b38be410-82b0-50bf-ab77-7b57e271db43" -version = "4.1.0" +version = "4.1.1" [[deps.FreeType2_jll]] deps = ["Artifacts", "Bzip2_jll", "JLLWrappers", "Libdl", "Zlib_jll"] -git-tree-sha1 = "d8db6a5a2fe1381c1ea4ef2cab7c69c2de7f9ea0" +git-tree-sha1 = "5c1d8ae0efc6c2e7b1fc502cbe25def8f661b7bc" uuid = "d7e528f0-a631-5988-bf34-fe36492bcfd7" -version = "2.13.1+0" +version = "2.13.2+0" [[deps.FreeTypeAbstraction]] deps = ["ColorVectorSpace", "Colors", "FreeType", "GeometryBasics"] -git-tree-sha1 = "38a92e40157100e796690421e34a11c107205c86" +git-tree-sha1 = "2493cdfd0740015955a8e46de4ef28f49460d8bc" uuid = "663a7486-cb36-511b-a19d-713bb74d65c9" -version = "0.10.0" +version = "0.10.3" [[deps.FriBidi_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "aa31987c2ba8704e23c6c8ba8a4f769d5d7e4f91" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "1ed150b39aebcc805c26b93a8d0122c940f64ce2" uuid = "559328eb-81f9-559d-9380-de523a88c83c" -version = "1.0.10+0" +version = "1.0.14+0" [[deps.FunctionWrappers]] git-tree-sha1 = "d62485945ce5ae9c0c48f124a84998d755bae00e" @@ -719,33 +881,39 @@ git-tree-sha1 = "b104d487b34566608f8b4e1c39fb0b10aa279ff8" uuid = "77dc65aa-8811-40c2-897b-53d922fa7daf" version = "0.1.3" +[[deps.Functors]] +deps = ["LinearAlgebra"] +git-tree-sha1 = "64d8e93700c7a3f28f717d265382d52fac9fa1c1" +uuid = "d9f16b24-f501-4c13-a1f2-28368ffc5196" +version = "0.4.12" + [[deps.Future]] deps = ["Random"] uuid = "9fa8497b-333b-5362-9e8d-4d0656e87820" [[deps.GPUArraysCore]] deps = ["Adapt"] -git-tree-sha1 = "2d6ca471a6c7b536127afccfa7564b5b39227fe0" +git-tree-sha1 = "ec632f177c0d990e64d955ccc1b8c04c485a0950" uuid = "46192b85-c4d5-4398-a991-12ede77f4527" -version = "0.1.5" +version = "0.1.6" [[deps.GenericSchur]] deps = ["LinearAlgebra", "Printf"] -git-tree-sha1 = "fb69b2a645fa69ba5f474af09221b9308b160ce6" +git-tree-sha1 = "af49a0851f8113fcfae2ef5027c6d49d0acec39b" uuid = "c145ed77-6b09-5dd9-b285-bf645a82121e" -version = "0.5.3" +version = "0.5.4" [[deps.GeoInterface]] deps = ["Extents"] -git-tree-sha1 = "d53480c0793b13341c40199190f92c611aa2e93c" +git-tree-sha1 = "9fff8990361d5127b770e3454488360443019bb3" uuid = "cf35fbd7-0cd7-5166-be24-54bfbe79505f" -version = "1.3.2" +version = "1.3.5" [[deps.GeometryBasics]] deps = ["EarCut_jll", "Extents", "GeoInterface", "IterTools", "LinearAlgebra", "StaticArrays", "StructArrays", "Tables"] -git-tree-sha1 = "424a5a6ce7c5d97cca7bcc4eac551b97294c54af" +git-tree-sha1 = "b62f2b2d76cee0d61a2ef2b3118cd2a3215d3134" uuid = "5c1252a2-5f33-56bf-86c9-59e7332b4326" -version = "0.4.9" +version = "0.4.11" [[deps.Gettext_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Libiconv_jll", "Pkg", "XML2_jll"] @@ -755,9 +923,14 @@ version = "0.21.0+0" [[deps.Glib_jll]] deps = ["Artifacts", "Gettext_jll", "JLLWrappers", "Libdl", "Libffi_jll", "Libiconv_jll", "Libmount_jll", "PCRE2_jll", "Zlib_jll"] -git-tree-sha1 = "e94c92c7bf4819685eb80186d51c43e71d4afa17" +git-tree-sha1 = "7c82e6a6cd34e9d935e9aa4051b66c6ff3af59ba" uuid = "7746bdde-850d-59dc-9ae8-88ece973131d" -version = "2.76.5+0" +version = "2.80.2+0" + +[[deps.Glob]] +git-tree-sha1 = "97285bbd5230dd766e9ef6749b80fc617126d496" +uuid = "c27321d9-0574-5035-807b-f59d2c89b15c" +version = "1.3.1" [[deps.Graphics]] deps = ["Colors", "LinearAlgebra", "NaNMath"] @@ -773,44 +946,50 @@ version = "1.3.14+0" [[deps.Graphs]] deps = ["ArnoldiMethod", "Compat", "DataStructures", "Distributed", "Inflate", "LinearAlgebra", "Random", "SharedArrays", "SimpleTraits", "SparseArrays", "Statistics"] -git-tree-sha1 = "899050ace26649433ef1af25bc17a815b3db52b7" +git-tree-sha1 = "ebd18c326fa6cee1efb7da9a3b45cf69da2ed4d9" uuid = "86223c79-3864-5bf0-83f7-82e725a168b6" -version = "1.9.0" +version = "1.11.2" [[deps.GridLayoutBase]] deps = ["GeometryBasics", "InteractiveUtils", "Observables"] -git-tree-sha1 = "af13a277efd8a6e716d79ef635d5342ccb75be61" +git-tree-sha1 = "fc713f007cff99ff9e50accba6373624ddd33588" uuid = "3955a311-db13-416c-9275-1d80ed98e5e9" -version = "0.10.0" +version = "0.11.0" [[deps.Grisu]] git-tree-sha1 = "53bb909d1151e57e2484c3d1b53e19552b887fb2" uuid = "42e2da0e-8278-4e71-bc24-59509adca0fe" version = "1.0.2" -[[deps.HTTP]] -deps = ["Base64", "CodecZlib", "ConcurrentUtilities", "Dates", "ExceptionUnwrapping", "Logging", "LoggingExtras", "MbedTLS", "NetworkOptions", "OpenSSL", "Random", "SimpleBufferStream", "Sockets", "URIs", "UUIDs"] -git-tree-sha1 = "abbbb9ec3afd783a7cbd82ef01dcd088ea051398" -uuid = "cd3eb016-35fb-5094-929b-558a96fad6f3" -version = "1.10.1" - [[deps.HarfBuzz_jll]] -deps = ["Artifacts", "Cairo_jll", "Fontconfig_jll", "FreeType2_jll", "Glib_jll", "Graphite2_jll", "JLLWrappers", "Libdl", "Libffi_jll", "Pkg"] -git-tree-sha1 = "129acf094d168394e80ee1dc4bc06ec835e510a3" +deps = ["Artifacts", "Cairo_jll", "Fontconfig_jll", "FreeType2_jll", "Glib_jll", "Graphite2_jll", "JLLWrappers", "Libdl", "Libffi_jll"] +git-tree-sha1 = "401e4f3f30f43af2c8478fc008da50096ea5240f" uuid = "2e76f6c2-a576-52d4-95c1-20adfe4de566" -version = "2.8.1+1" +version = "8.3.1+0" [[deps.HostCPUFeatures]] deps = ["BitTwiddlingConvenienceFunctions", "IfElse", "Libdl", "Static"] -git-tree-sha1 = "eb8fed28f4994600e29beef49744639d985a04b2" +git-tree-sha1 = "8e070b599339d622e9a081d17230d74a5c473293" uuid = "3e5b6fbb-0976-4d2c-9146-d79de83f2fb0" -version = "0.1.16" +version = "0.1.17" + +[[deps.Hwloc_jll]] +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "5e19e1e4fa3e71b774ce746274364aef0234634e" +uuid = "e33a78d0-f292-5ffc-b300-72abe9b543c8" +version = "2.11.1+0" + +[[deps.HybridArrays]] +deps = ["LinearAlgebra", "Requires", "StaticArrays"] +git-tree-sha1 = "6c3e57bc26728b99f470b267a437f0d380eac4fc" +uuid = "1baab800-613f-4b0a-84e4-9cd3431bfbb9" +version = "0.4.16" [[deps.HypergeometricFunctions]] -deps = ["DualNumbers", "LinearAlgebra", "OpenLibm_jll", "SpecialFunctions"] -git-tree-sha1 = "f218fe3736ddf977e0e772bc9a586b2383da2685" +deps = ["LinearAlgebra", "OpenLibm_jll", "SpecialFunctions"] +git-tree-sha1 = "7c4195be1649ae622304031ed46a2f4df989f1eb" uuid = "34004b35-14d8-5ef3-9330-4cdb6864b03a" -version = "0.3.23" +version = "0.3.24" [[deps.IfElse]] git-tree-sha1 = "debdd00ffef04665ccbb3e150747a77560e8fad1" @@ -825,21 +1004,21 @@ version = "0.6.11" [[deps.ImageBase]] deps = ["ImageCore", "Reexport"] -git-tree-sha1 = "b51bb8cae22c66d0f6357e3bcb6363145ef20835" +git-tree-sha1 = "eb49b82c172811fd2c86759fa0553a2221feb909" uuid = "c817782e-172a-44cc-b673-b171935fbb9e" -version = "0.1.5" +version = "0.1.7" [[deps.ImageCore]] -deps = ["AbstractFFTs", "ColorVectorSpace", "Colors", "FixedPointNumbers", "Graphics", "MappedArrays", "MosaicViews", "OffsetArrays", "PaddedViews", "Reexport"] -git-tree-sha1 = "acf614720ef026d38400b3817614c45882d75500" +deps = ["ColorVectorSpace", "Colors", "FixedPointNumbers", "MappedArrays", "MosaicViews", "OffsetArrays", "PaddedViews", "PrecompileTools", "Reexport"] +git-tree-sha1 = "b2a7eaa169c13f5bcae8131a83bc30eff8f71be0" uuid = "a09fc81d-aa75-5fe9-8630-4744c3626534" -version = "0.9.4" +version = "0.10.2" [[deps.ImageIO]] deps = ["FileIO", "IndirectArrays", "JpegTurbo", "LazyModules", "Netpbm", "OpenEXR", "PNGFiles", "QOI", "Sixel", "TiffImages", "UUIDs"] -git-tree-sha1 = "bca20b2f5d00c4fbc192c3212da8fa79f4688009" +git-tree-sha1 = "437abb322a41d527c197fa800455f79d414f0a3c" uuid = "82e4d734-157c-48bb-816b-45c225c6df19" -version = "0.6.7" +version = "0.6.8" [[deps.ImageMetadata]] deps = ["AxisArrays", "ImageAxes", "ImageBase", "ImageCore"] @@ -849,9 +1028,14 @@ version = "0.9.9" [[deps.Imath_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "3d09a9f60edf77f8a4d99f9e015e8fbf9989605d" +git-tree-sha1 = "0936ba688c6d201805a83da835b55c61a180db52" uuid = "905a6f67-0a94-5f89-b386-d35d92009cd1" -version = "3.1.7+0" +version = "3.1.11+0" + +[[deps.Indexing]] +git-tree-sha1 = "ce1566720fd6b19ff3411404d4b977acd4814f9f" +uuid = "313cdc1a-70c2-5d6a-ae34-0150d3930a38" +version = "1.1.1" [[deps.IndirectArrays]] git-tree-sha1 = "012e604e1c7458645cb8b436f8fba789a51b257f" @@ -859,9 +1043,9 @@ uuid = "9b13fd28-a010-5f03-acff-a1bbcff69959" version = "1.0.0" [[deps.Inflate]] -git-tree-sha1 = "ea8031dea4aff6bd41f1df8f2fdfb25b33626381" +git-tree-sha1 = "d1b1b796e47d94588b3757fe84fbf65a5ec4a80d" uuid = "d25df0c9-e2be-5dd7-82c8-3ad0b3e990b9" -version = "0.1.4" +version = "0.1.5" [[deps.IntegerMathUtils]] git-tree-sha1 = "b8ffb903da9f7b8cf695a8bead8e01814aa24b30" @@ -869,10 +1053,10 @@ uuid = "18e54dd8-cb9d-406c-a71d-865a43cbb235" version = "0.1.2" [[deps.IntelOpenMP_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "31d6adb719886d4e32e38197aae466e98881320b" +deps = ["Artifacts", "JLLWrappers", "LazyArtifacts", "Libdl"] +git-tree-sha1 = "10bd689145d2c3b2a9844005d01087cc1194e79e" uuid = "1d5cc7b8-4909-519e-a0f8-d0f5ad9712d0" -version = "2024.0.0+0" +version = "2024.2.1+0" [[deps.InteractiveUtils]] deps = ["Markdown"] @@ -880,37 +1064,64 @@ uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240" [[deps.Interpolations]] deps = ["Adapt", "AxisAlgorithms", "ChainRulesCore", "LinearAlgebra", "OffsetArrays", "Random", "Ratios", "Requires", "SharedArrays", "SparseArrays", "StaticArrays", "WoodburyMatrices"] -git-tree-sha1 = "721ec2cf720536ad005cb38f50dbba7b02419a15" +git-tree-sha1 = "88a101217d7cb38a7b481ccd50d21876e1d1b0e0" uuid = "a98d9a8b-a2ab-59e6-89dd-64a1c18fca59" -version = "0.14.7" +version = "0.15.1" +weakdeps = ["Unitful"] + + [deps.Interpolations.extensions] + InterpolationsUnitfulExt = "Unitful" [[deps.IntervalArithmetic]] -deps = ["CRlibm", "EnumX", "FastRounding", "LinearAlgebra", "Markdown", "Random", "RecipesBase", "RoundingEmulator", "SetRounding", "StaticArrays"] -git-tree-sha1 = "f59e639916283c1d2e106d2b00910b50f4dab76c" +deps = ["CRlibm_jll", "MacroTools", "RoundingEmulator"] +git-tree-sha1 = "433b0bb201cd76cb087b017e49244f10394ebe9c" uuid = "d1acc4aa-44c8-5952-acd4-ba5d80a2a253" -version = "0.21.2" +version = "0.22.14" +weakdeps = ["DiffRules", "ForwardDiff", "RecipesBase"] + + [deps.IntervalArithmetic.extensions] + IntervalArithmeticDiffRulesExt = "DiffRules" + IntervalArithmeticForwardDiffExt = "ForwardDiff" + IntervalArithmeticRecipesBaseExt = "RecipesBase" [[deps.IntervalSets]] -deps = ["Dates", "Random"] -git-tree-sha1 = "3d8866c029dd6b16e69e0d4a939c4dfcb98fac47" +git-tree-sha1 = "dba9ddf07f77f60450fe5d2e2beb9854d9a49bd0" uuid = "8197267c-284f-5f27-9208-e0e47529a953" -version = "0.7.8" -weakdeps = ["Statistics"] +version = "0.7.10" +weakdeps = ["Random", "RecipesBase", "Statistics"] [deps.IntervalSets.extensions] + IntervalSetsRandomExt = "Random" + IntervalSetsRecipesBaseExt = "RecipesBase" IntervalSetsStatisticsExt = "Statistics" [[deps.InverseFunctions]] -deps = ["Test"] -git-tree-sha1 = "68772f49f54b479fa88ace904f6127f0a3bb2e46" +git-tree-sha1 = "2787db24f4e03daf859c6509ff87764e4182f7d1" uuid = "3587e190-3f89-42d0-90ee-14403ec27112" -version = "0.1.12" +version = "0.1.16" +weakdeps = ["Dates", "Test"] + + [deps.InverseFunctions.extensions] + InverseFunctionsDatesExt = "Dates" + InverseFunctionsTestExt = "Test" [[deps.InvertedIndices]] git-tree-sha1 = "0dc7b50b8d436461be01300fd8cd45aa0274b038" uuid = "41ab1584-1d38-5bbf-9106-f11c6c58b48f" version = "1.3.0" +[[deps.Ipopt]] +deps = ["Ipopt_jll", "LinearAlgebra", "MathOptInterface", "OpenBLAS32_jll", "PrecompileTools"] +git-tree-sha1 = "92588db78296190d27668a560df3997719fc2a25" +uuid = "b6b21f68-93f8-5de0-b562-5493be1d77c9" +version = "1.6.6" + +[[deps.Ipopt_jll]] +deps = ["ASL_jll", "Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "MUMPS_seq_jll", "SPRAL_jll", "libblastrampoline_jll"] +git-tree-sha1 = "a0950d209a055b3adb6d29ade5cbdf005a6bd290" +uuid = "9cc047cb-c261-5740-88fc-0cf96f7bdcc7" +version = "300.1400.1600+0" + [[deps.IrrationalConstants]] git-tree-sha1 = "630b497eafcc20001bba38a4651b327dcfc491d2" uuid = "92d709cd-6900-40b7-9082-c6be49f344b6" @@ -923,9 +1134,9 @@ uuid = "f1662d9f-8043-43de-a69a-05efc1cc6ff4" version = "0.1.1" [[deps.IterTools]] -git-tree-sha1 = "4ced6667f9974fc5c5943fa5e2ef1ca43ea9e450" +git-tree-sha1 = "42d5f897009e7ff2cf88db414a389e5ed1bdd023" uuid = "c8e1da08-722c-5040-9ed9-7db0dc04731e" -version = "1.8.0" +version = "1.10.0" [[deps.IteratorInterfaceExtensions]] git-tree-sha1 = "a3f24677c21f5bbe9d2a714f95dcd58337fb2856" @@ -946,80 +1157,138 @@ version = "0.21.4" [[deps.JpegTurbo]] deps = ["CEnum", "FileIO", "ImageCore", "JpegTurbo_jll", "TOML"] -git-tree-sha1 = "d65930fa2bc96b07d7691c652d701dcbe7d9cf0b" +git-tree-sha1 = "fa6d0bcff8583bac20f1ffa708c3913ca605c611" uuid = "b835a17e-a41a-41e7-81f0-2f016b05efe0" -version = "0.1.4" +version = "0.1.5" [[deps.JpegTurbo_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "6f2675ef130a300a112286de91973805fcc5ffbc" +git-tree-sha1 = "c84a835e1a09b289ffcd2271bf2a337bbdda6637" uuid = "aacddb02-875f-59d6-b918-886e6ef4fbf8" -version = "2.1.91+0" +version = "3.0.3+0" + +[[deps.JuliaFormatter]] +deps = ["CSTParser", "CommonMark", "DataStructures", "Glob", "PrecompileTools", "TOML", "Tokenize"] +git-tree-sha1 = "bb4696471330275adfd6c78c6173f276e8c067aa" +uuid = "98e50ef6-434e-11e9-1051-2b60c6c9e899" +version = "1.0.60" + +[[deps.JumpProcesses]] +deps = ["ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "FunctionWrappers", "Graphs", "LinearAlgebra", "Markdown", "PoissonRandom", "Random", "RandomNumbers", "RecursiveArrayTools", "Reexport", "SciMLBase", "Setfield", "StaticArrays", "SymbolicIndexingInterface", "UnPack"] +git-tree-sha1 = "51e36012c396b7b3af25594bedc3e253f06ba65a" +uuid = "ccbc3e58-028d-4f4c-8cd5-9ae44345cda5" +version = "9.13.4" +weakdeps = ["FastBroadcast"] [[deps.KLU]] deps = ["LinearAlgebra", "SparseArrays", "SuiteSparse_jll"] -git-tree-sha1 = "884c2968c2e8e7e6bf5956af88cb46aa745c854b" +git-tree-sha1 = "07649c499349dad9f08dde4243a4c597064663e9" uuid = "ef3ab10e-7fda-4108-b977-705223b18434" -version = "0.4.1" +version = "0.6.0" [[deps.KernelDensity]] deps = ["Distributions", "DocStringExtensions", "FFTW", "Interpolations", "StatsBase"] -git-tree-sha1 = "90442c50e202a5cdf21a7899c66b240fdef14035" +git-tree-sha1 = "7d703202e65efa1369de1279c162b915e245eed1" uuid = "5ab0869b-81aa-558d-bb23-cbf5423bbe9b" -version = "0.6.7" +version = "0.6.9" + +[[deps.Kronecker]] +deps = ["LinearAlgebra", "NamedDims", "SparseArrays", "StatsBase"] +git-tree-sha1 = "9253429e28cceae6e823bec9ffde12460d79bb38" +uuid = "2c470bb0-bcc8-11e8-3dad-c9649493f05e" +version = "0.5.5" [[deps.Krylov]] deps = ["LinearAlgebra", "Printf", "SparseArrays"] -git-tree-sha1 = "17e462054b42dcdda73e9a9ba0c67754170c88ae" +git-tree-sha1 = "267dad6b4b7b5d529c76d40ff48d33f7e94cb834" uuid = "ba0b0d4f-ebba-5204-a429-3ac8c609bfb7" -version = "0.9.4" +version = "0.9.6" [[deps.LAME_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "f6250b16881adf048549549fba48b1161acdac8c" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "170b660facf5df5de098d866564877e119141cbd" uuid = "c1c5ebd0-6772-5130-a774-d5fcae4a789d" -version = "3.100.1+0" +version = "3.100.2+0" + +[[deps.LBFGSB]] +deps = ["L_BFGS_B_jll"] +git-tree-sha1 = "e2e6f53ee20605d0ea2be473480b7480bd5091b5" +uuid = "5be7bae1-8223-5378-bac3-9e7378a2f6e6" +version = "0.4.1" [[deps.LLVMOpenMP_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "f689897ccbe049adb19a065c495e75f372ecd42b" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "e16271d212accd09d52ee0ae98956b8a05c4b626" uuid = "1d63c593-3942-5779-bab2-d838dc0a180e" -version = "15.0.4+0" +version = "17.0.6+0" [[deps.LZO_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "e5b909bcf985c5e2605737d2ce278ed791b89be6" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "70c5da094887fd2cae843b8db33920bac4b6f07d" uuid = "dd4b983a-f0e5-5f8d-a1b7-129d4a5fb1ac" -version = "2.10.1+0" +version = "2.10.2+0" + +[[deps.L_BFGS_B_jll]] +deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Pkg"] +git-tree-sha1 = "77feda930ed3f04b2b0fbb5bea89e69d3677c6b0" +uuid = "81d17ec3-03a1-5e46-b53e-bddc35a13473" +version = "3.0.1+0" [[deps.LaTeXStrings]] git-tree-sha1 = "50901ebc375ed41dbf8058da26f9de442febbbec" uuid = "b964fa9f-0449-5b57-a5c2-d3ea65f4040f" version = "1.3.1" +[[deps.LambertW]] +git-tree-sha1 = "c5ffc834de5d61d00d2b0e18c96267cffc21f648" +uuid = "984bce1d-4616-540c-a9ee-88d1112d94c9" +version = "0.4.6" + +[[deps.Latexify]] +deps = ["Format", "InteractiveUtils", "LaTeXStrings", "MacroTools", "Markdown", "OrderedCollections", "Requires"] +git-tree-sha1 = "ce5f5621cac23a86011836badfedf664a612cee4" +uuid = "23fbe1c1-3f47-55db-b15f-69d7ec21a316" +version = "0.16.5" + + [deps.Latexify.extensions] + DataFramesExt = "DataFrames" + SparseArraysExt = "SparseArrays" + SymEngineExt = "SymEngine" + + [deps.Latexify.weakdeps] + DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0" + SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" + SymEngine = "123dc426-2d89-5057-bbad-38513e3affd8" + [[deps.LatinHypercubeSampling]] deps = ["Random", "StableRNGs", "StatsBase", "Test"] git-tree-sha1 = "825289d43c753c7f1bf9bed334c253e9913997f8" uuid = "a5e1c1ea-c99a-51d3-a14d-a9a37257b02d" version = "1.9.0" -[[deps.LatticeRules]] -deps = ["Random"] -git-tree-sha1 = "7f5b02258a3ca0221a6a9710b0a0a2e8fb4957fe" -uuid = "73f95e8e-ec14-4e6a-8b18-0d2e271c4e55" -version = "0.0.1" - [[deps.LayoutPointers]] deps = ["ArrayInterface", "LinearAlgebra", "ManualMemory", "SIMDTypes", "Static", "StaticArrayInterface"] -git-tree-sha1 = "62edfee3211981241b57ff1cedf4d74d79519277" +git-tree-sha1 = "a9eaadb366f5493a5654e843864c13d8b107548c" uuid = "10f19ff3-798f-405d-979b-55457f8fc047" -version = "0.1.15" +version = "0.1.17" -[[deps.Lazy]] -deps = ["MacroTools"] -git-tree-sha1 = "1370f8202dac30758f3c345f9909b97f53d87d3f" -uuid = "50d2b5c4-7a5e-59d5-8109-a42b560f39c0" -version = "0.15.1" +[[deps.LazyArrays]] +deps = ["ArrayLayouts", "FillArrays", "LinearAlgebra", "MacroTools", "SparseArrays"] +git-tree-sha1 = "507b423197fdd9e77b74aa2532c0a05eb7eb4004" +uuid = "5078a376-72f3-5289-bfd5-ec5146d43c02" +version = "2.2.0" + + [deps.LazyArrays.extensions] + LazyArraysBandedMatricesExt = "BandedMatrices" + LazyArraysBlockArraysExt = "BlockArrays" + LazyArraysBlockBandedMatricesExt = "BlockBandedMatrices" + LazyArraysStaticArraysExt = "StaticArrays" + + [deps.LazyArrays.weakdeps] + BandedMatrices = "aae01518-5342-5314-be14-df237901396f" + BlockArrays = "8e7c35d0-a365-5155-bbbb-fb81a777f24e" + BlockBandedMatrices = "ffab5731-97b5-5995-9138-79e8c1846df0" + StaticArrays = "90137ffa-7385-5640-81b9-e52037218182" [[deps.LazyArtifacts]] deps = ["Artifacts", "Pkg"] @@ -1070,16 +1339,16 @@ uuid = "e9f186c6-92d2-5b65-8a66-fee21dc1b490" version = "3.2.2+1" [[deps.Libgcrypt_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Libgpg_error_jll", "Pkg"] -git-tree-sha1 = "64613c82a59c120435c067c2b809fc61cf5166ae" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Libgpg_error_jll"] +git-tree-sha1 = "9fd170c4bbfd8b935fdc5f8b7aa33532c991a673" uuid = "d4300ac3-e22c-5743-9152-c294e39db1e4" -version = "1.8.7+0" +version = "1.8.11+0" [[deps.Libgpg_error_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "c333716e46366857753e273ce6a69ee0945a6db9" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "fbb1f2bef882392312feb1ede3615ddc1e9b99ed" uuid = "7add5ba3-2f88-524e-9cd5-f83b8a55f7b8" -version = "1.42.0+0" +version = "1.49.0+0" [[deps.Libiconv_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] @@ -1088,50 +1357,51 @@ uuid = "94ce4f54-9a6c-5748-9c1c-f9c7231a4531" version = "1.17.0+0" [[deps.Libmount_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "9c30530bf0effd46e15e0fdcf2b8636e78cbbd73" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "0c4f9c4f1a50d8f35048fa0532dabbadf702f81e" uuid = "4b2f31a3-9ecc-558c-b454-b3730dcb73e9" -version = "2.35.0+0" +version = "2.40.1+0" [[deps.Libuuid_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "7f3efec06033682db852f8b3bc3c1d2b0a0ab066" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "5ee6203157c120d79034c748a2acba45b82b8807" uuid = "38a345b3-de98-5d2b-a5d3-14cd9215e700" -version = "2.36.0+0" - -[[deps.LightXML]] -deps = ["Libdl", "XML2_jll"] -git-tree-sha1 = "3a994404d3f6709610701c7dabfc03fed87a81f8" -uuid = "9c8b4983-aa76-5018-a973-4c85ecc9e179" -version = "0.9.1" +version = "2.40.1+0" [[deps.LineSearches]] deps = ["LinearAlgebra", "NLSolversBase", "NaNMath", "Parameters", "Printf"] -git-tree-sha1 = "7bbea35cec17305fc70a0e5b4641477dc0789d9d" +git-tree-sha1 = "e4c3be53733db1051cc15ecf573b1042b3a712a1" uuid = "d3d80556-e9d4-5f37-9878-2ab0fcc64255" -version = "7.2.0" +version = "7.3.0" [[deps.LinearAlgebra]] deps = ["Libdl", "OpenBLAS_jll", "libblastrampoline_jll"] uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e" -[[deps.LinearAlgebraX]] -deps = ["LinearAlgebra", "Mods", "Permutations", "Primes", "SimplePolynomials"] -git-tree-sha1 = "89ed93300377e0742ae8a7423f7543c8f5eb73a4" -uuid = "9b3f67b0-2d00-526e-9884-9e4938f8fb88" -version = "0.2.5" +[[deps.LinearMaps]] +deps = ["LinearAlgebra"] +git-tree-sha1 = "ee79c3208e55786de58f8dcccca098ced79f743f" +uuid = "7a12625a-238d-50fd-b39a-03d52299707e" +version = "3.11.3" +weakdeps = ["ChainRulesCore", "SparseArrays", "Statistics"] + + [deps.LinearMaps.extensions] + LinearMapsChainRulesCoreExt = "ChainRulesCore" + LinearMapsSparseArraysExt = "SparseArrays" + LinearMapsStatisticsExt = "Statistics" [[deps.LinearSolve]] -deps = ["ArrayInterface", "ConcreteStructs", "DocStringExtensions", "EnumX", "EnzymeCore", "FastLapackInterface", "GPUArraysCore", "InteractiveUtils", "KLU", "Krylov", "Libdl", "LinearAlgebra", "MKL_jll", "PrecompileTools", "Preferences", "RecursiveFactorization", "Reexport", "Requires", "SciMLBase", "SciMLOperators", "Setfield", "SparseArrays", "Sparspak", "UnPack"] -git-tree-sha1 = "051943b8b8e81c548e9d099d6eb3d3ed23093c35" +deps = ["ArrayInterface", "ChainRulesCore", "ConcreteStructs", "CpuId", "DocStringExtensions", "EnumX", "FastLapackInterface", "GPUArraysCore", "InteractiveUtils", "KLU", "Krylov", "LazyArrays", "Libdl", "LinearAlgebra", "MKL_jll", "Markdown", "PrecompileTools", "Preferences", "RecursiveFactorization", "Reexport", "SciMLBase", "SciMLOperators", "Setfield", "SparseArrays", "Sparspak", "StaticArraysCore", "UnPack"] +git-tree-sha1 = "6b7011b27e35453f68a8f851776271b31fce021c" uuid = "7ed4a6bd-45f5-4d41-b270-4a48e9bafcae" -version = "2.20.0" +version = "2.33.0" [deps.LinearSolve.extensions] LinearSolveBandedMatricesExt = "BandedMatrices" LinearSolveBlockDiagonalsExt = "BlockDiagonals" LinearSolveCUDAExt = "CUDA" - LinearSolveEnzymeExt = "Enzyme" + LinearSolveCUDSSExt = "CUDSS" + LinearSolveEnzymeExt = ["Enzyme", "EnzymeCore"] LinearSolveFastAlmostBandedMatricesExt = ["FastAlmostBandedMatrices"] LinearSolveHYPREExt = "HYPRE" LinearSolveIterativeSolversExt = "IterativeSolvers" @@ -1145,7 +1415,9 @@ version = "2.20.0" BandedMatrices = "aae01518-5342-5314-be14-df237901396f" BlockDiagonals = "0a1fb500-61f7-11e9-3c65-f5ef3456f9f0" CUDA = "052768ef-5323-5732-b1bb-66c8b64840ba" + CUDSS = "45b445bb-4962-46a0-9369-b4df9d0f772e" Enzyme = "7da242da-08ed-463a-9acd-ee780be4f1d9" + EnzymeCore = "f151be2c-9106-41f4-ab19-57ee4f262869" FastAlmostBandedMatrices = "9d29842c-ecb8-4973-b1e9-a27b1157504e" HYPRE = "b5ffcf37-a2bd-41ab-a3da-4bd9bc8ad771" IterativeSolvers = "42fd0dbc-a981-5370-80f2-aaf504508153" @@ -1157,9 +1429,9 @@ version = "2.20.0" [[deps.LogExpFunctions]] deps = ["DocStringExtensions", "IrrationalConstants", "LinearAlgebra"] -git-tree-sha1 = "7d6dd4e9212aebaeed356de34ccf262a3cd415aa" +git-tree-sha1 = "a2d09619db4e765091ee5c6ffe8872849de0feea" uuid = "2ab3a3ac-af41-5b50-aa03-7779005ae688" -version = "0.3.26" +version = "0.3.28" [deps.LogExpFunctions.extensions] LogExpFunctionsChainRulesCoreExt = "ChainRulesCore" @@ -1182,38 +1454,116 @@ version = "1.0.3" [[deps.LoopVectorization]] deps = ["ArrayInterface", "CPUSummary", "CloseOpenIntervals", "DocStringExtensions", "HostCPUFeatures", "IfElse", "LayoutPointers", "LinearAlgebra", "OffsetArrays", "PolyesterWeave", "PrecompileTools", "SIMDTypes", "SLEEFPirates", "Static", "StaticArrayInterface", "ThreadingUtilities", "UnPack", "VectorizationBase"] -git-tree-sha1 = "0f5648fbae0d015e3abe5867bca2b362f67a5894" +git-tree-sha1 = "8084c25a250e00ae427a379a5b607e7aed96a2dd" uuid = "bdcacae8-1622-11e9-2a5c-532679323890" -version = "0.12.166" +version = "0.12.171" weakdeps = ["ChainRulesCore", "ForwardDiff", "SpecialFunctions"] [deps.LoopVectorization.extensions] ForwardDiffExt = ["ChainRulesCore", "ForwardDiff"] SpecialFunctionsExt = "SpecialFunctions" +[[deps.METIS_jll]] +deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] +git-tree-sha1 = "1fd0a97409e418b78c53fac671cf4622efdf0f21" +uuid = "d00139f3-1899-568f-a2f0-47f597d42d70" +version = "5.1.2+0" + [[deps.MKL_jll]] -deps = ["Artifacts", "IntelOpenMP_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "Pkg"] -git-tree-sha1 = "eb006abbd7041c28e0d16260e50a24f8f9104913" +deps = ["Artifacts", "IntelOpenMP_jll", "JLLWrappers", "LazyArtifacts", "Libdl", "oneTBB_jll"] +git-tree-sha1 = "f046ccd0c6db2832a9f639e2c669c6fe867e5f4f" uuid = "856f044c-d86e-5d09-b602-aeab76dc8ba7" -version = "2023.2.0+0" +version = "2024.2.0+0" + +[[deps.MLStyle]] +git-tree-sha1 = "bc38dff0548128765760c79eb7388a4b37fae2c8" +uuid = "d8e11817-5142-5d16-987a-aa16d5891078" +version = "0.4.17" + +[[deps.MUMPS_seq_jll]] +deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "METIS_jll", "libblastrampoline_jll"] +git-tree-sha1 = "85047ac569761e3387717480a38a61d2a67df45c" +uuid = "d7ed1dd3-d0ae-5e8e-bfb4-87a502085b8d" +version = "500.700.300+0" [[deps.MacroTools]] deps = ["Markdown", "Random"] -git-tree-sha1 = "9ee1618cbf5240e6d4e0371d6f24065083f60c48" +git-tree-sha1 = "2fa9ee3e63fd3a4f7a9a4f4744a52f4856de82df" uuid = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09" -version = "0.5.11" +version = "0.5.13" [[deps.Makie]] -deps = ["Animations", "Base64", "CRC32c", "ColorBrewer", "ColorSchemes", "ColorTypes", "Colors", "Contour", "DelaunayTriangulation", "Distributions", "DocStringExtensions", "Downloads", "FFMPEG_jll", "FileIO", "FilePaths", "FixedPointNumbers", "Formatting", "FreeType", "FreeTypeAbstraction", "GeometryBasics", "GridLayoutBase", "ImageIO", "InteractiveUtils", "IntervalSets", "Isoband", "KernelDensity", "LaTeXStrings", "LinearAlgebra", "MacroTools", "MakieCore", "Markdown", "MathTeXEngine", "Observables", "OffsetArrays", "Packing", "PlotUtils", "PolygonOps", "PrecompileTools", "Printf", "REPL", "Random", "RelocatableFolders", "Setfield", "ShaderAbstractions", "Showoff", "SignedDistanceFields", "SparseArrays", "StableHashTraits", "Statistics", "StatsBase", "StatsFuns", "StructArrays", "TriplotBase", "UnicodeFun"] -git-tree-sha1 = "db14b5ba682d431317435c866734995a89302c3c" +deps = ["Animations", "Base64", "CRC32c", "ColorBrewer", "ColorSchemes", "ColorTypes", "Colors", "Contour", "Dates", "DelaunayTriangulation", "Distributions", "DocStringExtensions", "Downloads", "FFMPEG_jll", "FileIO", "FilePaths", "FixedPointNumbers", "Format", "FreeType", "FreeTypeAbstraction", "GeometryBasics", "GridLayoutBase", "ImageIO", "InteractiveUtils", "IntervalSets", "Isoband", "KernelDensity", "LaTeXStrings", "LinearAlgebra", "MacroTools", "MakieCore", "Markdown", "MathTeXEngine", "Observables", "OffsetArrays", "Packing", "PlotUtils", "PolygonOps", "PrecompileTools", "Printf", "REPL", "Random", "RelocatableFolders", "Scratch", "ShaderAbstractions", "Showoff", "SignedDistanceFields", "SparseArrays", "Statistics", "StatsBase", "StatsFuns", "StructArrays", "TriplotBase", "UnicodeFun", "Unitful"] +git-tree-sha1 = "204f06860af9008fa08b3a4842f48116e1209a2c" uuid = "ee78f7c6-11fb-53f2-987a-cfe4a2b5a57a" -version = "0.20.2" +version = "0.21.9" [[deps.MakieCore]] -deps = ["Observables", "REPL"] -git-tree-sha1 = "e81e6f1e8a0e96bf2bf267e4bf7f94608bf09b5c" +deps = ["ColorTypes", "GeometryBasics", "IntervalSets", "Observables"] +git-tree-sha1 = "b0e2e3473af351011e598f9219afb521121edd2b" uuid = "20f20a25-4f0e-4fdf-b5d1-57303727442b" -version = "0.7.1" +version = "0.8.6" + +[[deps.ManifoldDiff]] +deps = ["LinearAlgebra", "ManifoldsBase", "Markdown", "Random", "Requires"] +git-tree-sha1 = "d1c10fbb0562004a456c1ec0da3deb55e09c23ee" +uuid = "af67fdf4-a580-4b9f-bbec-742ef357defd" +version = "0.3.11" + + [deps.ManifoldDiff.extensions] + ManifoldDiffFiniteDiffExt = "FiniteDiff" + ManifoldDiffFiniteDifferencesExt = "FiniteDifferences" + ManifoldDiffForwardDiffExt = "ForwardDiff" + ManifoldDiffReverseDiffExt = "ReverseDiff" + ManifoldDiffZygoteExt = "Zygote" + + [deps.ManifoldDiff.weakdeps] + FiniteDiff = "6a86dc24-6348-571c-b903-95158fe2bd41" + FiniteDifferences = "26cc04aa-876d-5657-8c51-4c34ba976000" + ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210" + ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" + Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" + +[[deps.Manifolds]] +deps = ["Distributions", "Einsum", "Graphs", "HybridArrays", "Kronecker", "LinearAlgebra", "ManifoldDiff", "ManifoldsBase", "Markdown", "MatrixEquations", "Quaternions", "Random", "RecursiveArrayTools", "Requires", "SimpleWeightedGraphs", "SpecialFunctions", "StaticArrays", "Statistics", "StatsBase"] +git-tree-sha1 = "58eb09899273a3ed17aae1f56435f440669b810c" +uuid = "1cead3c2-87b3-11e9-0ccd-23c62b72b94e" +version = "0.9.20" + + [deps.Manifolds.extensions] + ManifoldsBoundaryValueDiffEqExt = "BoundaryValueDiffEq" + ManifoldsNLsolveExt = "NLsolve" + ManifoldsOrdinaryDiffEqDiffEqCallbacksExt = ["DiffEqCallbacks", "OrdinaryDiffEq"] + ManifoldsOrdinaryDiffEqExt = "OrdinaryDiffEq" + ManifoldsRecipesBaseExt = ["Colors", "RecipesBase"] + ManifoldsTestExt = "Test" + + [deps.Manifolds.weakdeps] + BoundaryValueDiffEq = "764a87c0-6b3e-53db-9096-fe964310641d" + Colors = "5ae59095-9a9b-59fe-a467-6f913c188581" + DiffEqCallbacks = "459566f4-90b8-5000-8ac3-15dfb0a30def" + NLsolve = "2774e3e8-f4cf-5e23-947b-6d7e65073b56" + OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed" + RecipesBase = "3cdcf5f2-1ef4-517c-9805-6587b60abb01" + Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" + +[[deps.ManifoldsBase]] +deps = ["LinearAlgebra", "Markdown", "Printf", "Random", "Requires"] +git-tree-sha1 = "000599aeb2406f7c63085f4904b9736e52f5795b" +uuid = "3362f125-f0bb-47a3-aa74-596ffd7ef2fb" +version = "0.15.15" + + [deps.ManifoldsBase.extensions] + ManifoldsBasePlotsExt = "Plots" + ManifoldsBaseQuaternionsExt = "Quaternions" + ManifoldsBaseRecursiveArrayToolsExt = "RecursiveArrayTools" + ManifoldsBaseStatisticsExt = "Statistics" + + [deps.ManifoldsBase.weakdeps] + Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80" + Quaternions = "94ee1d12-ae83-5a48-8b1c-48b8ff168ae0" + RecursiveArrayTools = "731186ca-8d62-57ce-b412-fbd966d074cd" + Statistics = "10745b16-79ce-11e8-11f9-7d13ad32a3b2" [[deps.ManualMemory]] git-tree-sha1 = "bcaef4fc7a0cfe2cba636d84cda54b5e4e4ca3cd" @@ -1231,27 +1581,31 @@ uuid = "d6f4376e-aef5-505a-96c1-9c027394607a" [[deps.MathOptInterface]] deps = ["BenchmarkTools", "CodecBzip2", "CodecZlib", "DataStructures", "ForwardDiff", "JSON", "LinearAlgebra", "MutableArithmetics", "NaNMath", "OrderedCollections", "PrecompileTools", "Printf", "SparseArrays", "SpecialFunctions", "Test", "Unicode"] -git-tree-sha1 = "362ae34a5291a79e16b8eb87b5738532c5e799ff" +git-tree-sha1 = "5b246fca5420ae176d65ed43a2d0ee5897775216" uuid = "b8f27783-ece8-5eb3-8dc8-9495eed66fee" -version = "1.23.0" - -[[deps.MathProgBase]] -deps = ["LinearAlgebra", "SparseArrays"] -git-tree-sha1 = "9abbe463a1e9fc507f12a69e7f29346c2cdc472c" -uuid = "fdba3010-5040-5b88-9595-932c9decdf73" -version = "0.7.8" +version = "1.31.2" [[deps.MathTeXEngine]] deps = ["AbstractTrees", "Automa", "DataStructures", "FreeTypeAbstraction", "GeometryBasics", "LaTeXStrings", "REPL", "RelocatableFolders", "UnicodeFun"] -git-tree-sha1 = "96ca8a313eb6437db5ffe946c457a401bbb8ce1d" +git-tree-sha1 = "e1641f32ae592e415e3dbae7f4a188b5316d4b62" uuid = "0a4f8689-d25c-4efe-a92b-7142dfc1aa53" -version = "0.5.7" +version = "0.6.1" + +[[deps.MatrixEquations]] +deps = ["LinearAlgebra", "LinearMaps"] +git-tree-sha1 = "f765b4eda3ea9be8e644b9127809ca5151f3d9ea" +uuid = "99c1a7ee-ab34-5fd5-8076-27c950a045f4" +version = "2.4.2" + +[[deps.MaybeInplace]] +deps = ["ArrayInterface", "LinearAlgebra", "MacroTools"] +git-tree-sha1 = "54e2fdc38130c05b42be423e90da3bade29b74bd" +uuid = "bb5d69b7-63fc-4a16-80bd-7e42200c7bdb" +version = "0.1.4" +weakdeps = ["SparseArrays"] -[[deps.MbedTLS]] -deps = ["Dates", "MbedTLS_jll", "MozillaCACerts_jll", "NetworkOptions", "Random", "Sockets"] -git-tree-sha1 = "c067a280ddc25f196b5e7df3877c6b226d390aaf" -uuid = "739be429-bea8-5141-9913-cc70e7f3736d" -version = "1.1.9" + [deps.MaybeInplace.extensions] + MaybeInplaceSparseArraysExt = "SparseArrays" [[deps.MbedTLS_jll]] deps = ["Artifacts", "Libdl"] @@ -1260,17 +1614,30 @@ version = "2.28.2+1" [[deps.Missings]] deps = ["DataAPI"] -git-tree-sha1 = "f66bdc5de519e8f8ae43bdc598782d35a25b1272" +git-tree-sha1 = "ec4f7fbeab05d7747bdf98eb74d130a2a2ed298d" uuid = "e1d29d7a-bbdc-5cf2-9ac0-f12de2c33e28" -version = "1.1.0" +version = "1.2.0" [[deps.Mmap]] uuid = "a63ad114-7e13-5084-954f-fe012c677804" -[[deps.Mods]] -git-tree-sha1 = "c703557e9194fce2417b6afc3e1f0318213c401a" -uuid = "7475f97c-0381-53b1-977b-4c60186c8d62" -version = "2.1.0" +[[deps.ModelingToolkit]] +deps = ["AbstractTrees", "ArrayInterface", "BlockArrays", "Combinatorics", "Compat", "ConstructionBase", "DataStructures", "DiffEqBase", "DiffEqCallbacks", "DiffEqNoiseProcess", "DiffRules", "Distributed", "Distributions", "DocStringExtensions", "DomainSets", "DynamicQuantities", "ExprTools", "Expronicon", "FindFirstFunctions", "ForwardDiff", "FunctionWrappersWrappers", "Graphs", "InteractiveUtils", "JuliaFormatter", "JumpProcesses", "Latexify", "Libdl", "LinearAlgebra", "MLStyle", "NaNMath", "NonlinearSolve", "OrderedCollections", "PrecompileTools", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLBase", "SciMLStructures", "Serialization", "Setfield", "SimpleNonlinearSolve", "SparseArrays", "SpecialFunctions", "StaticArrays", "SymbolicIndexingInterface", "SymbolicUtils", "Symbolics", "URIs", "UnPack", "Unitful"] +git-tree-sha1 = "10a774e16878b8059b2b31394c86d348644b2aee" +uuid = "961ee093-0014-501f-94e3-6117800e7a78" +version = "9.34.0" + + [deps.ModelingToolkit.extensions] + MTKBifurcationKitExt = "BifurcationKit" + MTKChainRulesCoreExt = "ChainRulesCore" + MTKDeepDiffsExt = "DeepDiffs" + MTKLabelledArraysExt = "LabelledArrays" + + [deps.ModelingToolkit.weakdeps] + BifurcationKit = "0f109fa4-8a5d-4b75-95aa-f515264e7665" + ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" + DeepDiffs = "ab62b9b5-e342-54a8-a765-a90f495de1a6" + LabelledArrays = "2ee39098-c373-598a-b85f-a56591580800" [[deps.MosaicViews]] deps = ["MappedArrays", "OffsetArrays", "PaddedViews", "StackViews"] @@ -1293,16 +1660,17 @@ git-tree-sha1 = "cac9cc5499c25554cba55cd3c30543cff5ca4fab" uuid = "46d2c3a1-f734-5fdb-9937-b9b9aeba4221" version = "0.2.4" -[[deps.Multisets]] -git-tree-sha1 = "8d852646862c96e226367ad10c8af56099b4047e" -uuid = "3b2b4ff1-bcff-5658-a3ee-dbcf1ce5ac09" -version = "0.4.4" +[[deps.MultivariatePolynomials]] +deps = ["ChainRulesCore", "DataStructures", "LinearAlgebra", "MutableArithmetics"] +git-tree-sha1 = "5c1d1d9361e1417e5a065e1f84dc3686cbdaea21" +uuid = "102ac46a-7ee4-5c85-9060-abc95bfdeaa3" +version = "0.5.6" [[deps.MutableArithmetics]] deps = ["LinearAlgebra", "SparseArrays", "Test"] -git-tree-sha1 = "806eea990fb41f9b36f1253e5697aa645bf6a9f8" +git-tree-sha1 = "d0a6b1096b584a2b88efb70a92f8cb8c881eb38a" uuid = "d8a4904e-b15c-11e9-3269-09a3773c0cb0" -version = "1.4.0" +version = "1.4.6" [[deps.NLSolversBase]] deps = ["DiffResults", "Distributed", "FiniteDiff", "ForwardDiff"] @@ -1311,22 +1679,20 @@ uuid = "d41bc354-129a-5804-8e4c-c37616107c6c" version = "7.8.3" [[deps.NLopt]] -deps = ["MathOptInterface", "MathProgBase", "NLopt_jll"] -git-tree-sha1 = "5a7e32c569200a8a03c3d55d286254b0321cd262" +deps = ["CEnum", "NLopt_jll"] +git-tree-sha1 = "42b49cad384c55b6352e0a57b84bb8797a4bbcab" uuid = "76087f3c-5699-56af-9a33-bf431cd00edd" -version = "0.6.5" +version = "1.1.0" +weakdeps = ["MathOptInterface"] + + [deps.NLopt.extensions] + NLoptMathOptInterfaceExt = ["MathOptInterface"] [[deps.NLopt_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "9b1f15a08f9d00cdb2761dcfa6f453f5d0d6f973" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "3d1eefa627faeabc59ab9edbf00d17f70123ad69" uuid = "079eb43e-fd8e-5478-9966-2cf3e3edb778" -version = "2.7.1+0" - -[[deps.NLsolve]] -deps = ["Distances", "LineSearches", "LinearAlgebra", "NLSolversBase", "Printf", "Reexport"] -git-tree-sha1 = "019f12e9a1a7880459d0173c182e6a99365d7ac1" -uuid = "2774e3e8-f4cf-5e23-947b-6d7e65073b56" -version = "4.5.1" +version = "2.8.0+0" [[deps.NaNMath]] deps = ["OpenLibm_jll"] @@ -1334,6 +1700,25 @@ git-tree-sha1 = "0877504529a3e5c3343c6f8b4c0381e57e4387e4" uuid = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3" version = "1.0.2" +[[deps.NamedDims]] +deps = ["LinearAlgebra", "Pkg", "Statistics"] +git-tree-sha1 = "90178dc801073728b8b2d0d8677d10909feb94d8" +uuid = "356022a1-0364-5f58-8944-0da4b18d706f" +version = "1.2.2" + + [deps.NamedDims.extensions] + AbstractFFTsExt = "AbstractFFTs" + ChainRulesCoreExt = "ChainRulesCore" + CovarianceEstimationExt = "CovarianceEstimation" + TrackerExt = "Tracker" + + [deps.NamedDims.weakdeps] + AbstractFFTs = "621f4979-c628-5d54-868e-fcf4e3e8185c" + ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" + CovarianceEstimation = "587fd27a-f159-11e8-2dae-1979310e6154" + Requires = "ae029012-a4dd-5104-9daa-d747884805df" + Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" + [[deps.Netpbm]] deps = ["FileIO", "ImageCore", "ImageMetadata"] git-tree-sha1 = "d92b107dbb887293622df7697a2223f9f8176fcd" @@ -1345,20 +1730,36 @@ uuid = "ca575930-c2e3-43a9-ace4-1e988b2c1908" version = "1.2.0" [[deps.NonlinearSolve]] -deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "EnumX", "FastBroadcast", "FiniteDiff", "ForwardDiff", "LineSearches", "LinearAlgebra", "LinearSolve", "PrecompileTools", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SimpleNonlinearSolve", "SparseArrays", "SparseDiffTools", "StaticArraysCore", "UnPack"] -git-tree-sha1 = "6166ccd8f79c93c636ca61ab4cd18f555932563d" +deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "FastBroadcast", "FastClosures", "FiniteDiff", "ForwardDiff", "LazyArrays", "LineSearches", "LinearAlgebra", "LinearSolve", "MaybeInplace", "PrecompileTools", "Preferences", "Printf", "RecursiveArrayTools", "Reexport", "SciMLBase", "SimpleNonlinearSolve", "SparseArrays", "SparseDiffTools", "StaticArraysCore", "SymbolicIndexingInterface", "TimerOutputs"] +git-tree-sha1 = "bcd8812e751326ff1d4b2dd50764b93df51f143b" uuid = "8913a72c-1f9b-4ce2-8d82-65094dcecaec" -version = "2.8.2" +version = "3.14.0" [deps.NonlinearSolve.extensions] NonlinearSolveBandedMatricesExt = "BandedMatrices" NonlinearSolveFastLevenbergMarquardtExt = "FastLevenbergMarquardt" + NonlinearSolveFixedPointAccelerationExt = "FixedPointAcceleration" NonlinearSolveLeastSquaresOptimExt = "LeastSquaresOptim" + NonlinearSolveMINPACKExt = "MINPACK" + NonlinearSolveNLSolversExt = "NLSolvers" + NonlinearSolveNLsolveExt = "NLsolve" + NonlinearSolveSIAMFANLEquationsExt = "SIAMFANLEquations" + NonlinearSolveSpeedMappingExt = "SpeedMapping" + NonlinearSolveSymbolicsExt = "Symbolics" + NonlinearSolveZygoteExt = "Zygote" [deps.NonlinearSolve.weakdeps] BandedMatrices = "aae01518-5342-5314-be14-df237901396f" FastLevenbergMarquardt = "7a0df574-e128-4d35-8cbd-3d84502bf7ce" + FixedPointAcceleration = "817d07cb-a79a-5c30-9a31-890123675176" LeastSquaresOptim = "0fc2ff8b-aaa3-5acd-a817-1944a5e08891" + MINPACK = "4854310b-de5a-5eb6-a2a5-c1dee2bd17f9" + NLSolvers = "337daf1e-9722-11e9-073e-8b9effe078ba" + NLsolve = "2774e3e8-f4cf-5e23-947b-6d7e65073b56" + SIAMFANLEquations = "084e46ad-d928-497d-ad5e-07fa361a48c4" + SpeedMapping = "f1835b91-879b-4a3f-a438-e4baacf14412" + Symbolics = "0c5d862f-8b57-4792-8d23-62f2024744c7" + Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" [[deps.Observables]] git-tree-sha1 = "7438a59546cf62428fc9d1bc94729146d37a7225" @@ -1366,10 +1767,13 @@ uuid = "510215fc-4207-5dde-b226-833fc4488ee2" version = "0.5.5" [[deps.OffsetArrays]] -deps = ["Adapt"] -git-tree-sha1 = "2ac17d29c523ce1cd38e27785a7d23024853a4bb" +git-tree-sha1 = "1a27764e945a152f7ca7efa04de513d473e9542e" uuid = "6fe1bfb0-de20-5000-8ca7-80f57d26f881" -version = "1.12.10" +version = "1.14.1" +weakdeps = ["Adapt"] + + [deps.OffsetArrays.extensions] + OffsetArraysAdaptExt = "Adapt" [[deps.Ogg_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] @@ -1377,10 +1781,16 @@ git-tree-sha1 = "887579a3eb005446d514ab7aeac5d1d027658b8f" uuid = "e7412a2a-1a6e-54c0-be00-318e2571c051" version = "1.3.5+1" +[[deps.OpenBLAS32_jll]] +deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl"] +git-tree-sha1 = "6065c4cff8fee6c6770b277af45d5082baacdba1" +uuid = "656ef2d0-ae68-5445-9ca0-591084a874a2" +version = "0.3.24+0" + [[deps.OpenBLAS_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "Libdl"] uuid = "4536629a-c528-5b80-bd46-f80d51c5b363" -version = "0.3.23+2" +version = "0.3.23+4" [[deps.OpenEXR]] deps = ["Colors", "FileIO", "OpenEXR_jll"] @@ -1390,26 +1800,20 @@ version = "0.3.2" [[deps.OpenEXR_jll]] deps = ["Artifacts", "Imath_jll", "JLLWrappers", "Libdl", "Zlib_jll"] -git-tree-sha1 = "a4ca623df1ae99d09bc9868b008262d0c0ac1e4f" +git-tree-sha1 = "8292dd5c8a38257111ada2174000a33745b06d4e" uuid = "18a262bb-aa17-5467-a713-aee519bc75cb" -version = "3.1.4+0" +version = "3.2.4+0" [[deps.OpenLibm_jll]] deps = ["Artifacts", "Libdl"] uuid = "05823500-19ac-5b8b-9628-191a04bc5112" version = "0.8.1+2" -[[deps.OpenSSL]] -deps = ["BitFlags", "Dates", "MozillaCACerts_jll", "OpenSSL_jll", "Sockets"] -git-tree-sha1 = "51901a49222b09e3743c65b8847687ae5fc78eb2" -uuid = "4d8831e6-92b7-49fb-bdf8-b643e874388c" -version = "1.4.1" - [[deps.OpenSSL_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] -git-tree-sha1 = "cc6e1927ac521b659af340e0ca45828a3ffc748f" +git-tree-sha1 = "a028ee3cb5641cccc4c24e90c36b0a4f7707bdf5" uuid = "458c3c95-2e84-50aa-8efc-19380b2a3a95" -version = "3.0.12+0" +version = "3.0.14+0" [[deps.OpenSpecFun_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "Libdl", "Pkg"] @@ -1419,60 +1823,75 @@ version = "0.5.5+0" [[deps.Optim]] deps = ["Compat", "FillArrays", "ForwardDiff", "LineSearches", "LinearAlgebra", "NLSolversBase", "NaNMath", "Parameters", "PositiveFactorizations", "Printf", "SparseArrays", "StatsBase"] -git-tree-sha1 = "01f85d9269b13fedc61e63cc72ee2213565f7a72" +git-tree-sha1 = "d9b79c4eed437421ac4285148fcadf42e0700e89" uuid = "429524aa-4258-5aef-a3af-852621145aeb" -version = "1.7.8" +version = "1.9.4" +weakdeps = ["MathOptInterface"] + + [deps.Optim.extensions] + OptimMOIExt = "MathOptInterface" [[deps.Optimization]] -deps = ["ADTypes", "ArrayInterface", "ConsoleProgressMonitor", "DocStringExtensions", "LinearAlgebra", "Logging", "LoggingExtras", "Pkg", "Printf", "ProgressLogging", "Reexport", "Requires", "SciMLBase", "SparseArrays", "TerminalLoggers"] -git-tree-sha1 = "1aa7ffea6e171167e9cae620d749e16d5874414a" +deps = ["ADTypes", "ArrayInterface", "ConsoleProgressMonitor", "DocStringExtensions", "LBFGSB", "LinearAlgebra", "Logging", "LoggingExtras", "OptimizationBase", "Pkg", "Printf", "ProgressLogging", "Reexport", "SciMLBase", "SparseArrays", "TerminalLoggers"] +git-tree-sha1 = "e51c209075bf413ee1dbf4a2473972276965022c" uuid = "7f7a1694-90dd-40f0-9382-eb1efda571ba" -version = "3.19.3" +version = "3.27.0" + +[[deps.OptimizationBBO]] +deps = ["BlackBoxOptim", "Optimization", "Reexport"] +git-tree-sha1 = "22d678748e01473d5ea51c478f2a4ffcef4b8f4e" +uuid = "3e6eede4-6085-4f62-9a71-46d9bc1eb92b" +version = "0.3.0" - [deps.Optimization.extensions] +[[deps.OptimizationBase]] +deps = ["ADTypes", "ArrayInterface", "DocStringExtensions", "LinearAlgebra", "PDMats", "Reexport", "Requires", "SciMLBase", "SparseArrays", "SymbolicAnalysis", "SymbolicIndexingInterface", "Symbolics"] +git-tree-sha1 = "3e5e5e8cbe572200dcd94a6084a63ca68fe76279" +uuid = "bca83a33-5cc9-4baa-983d-23429ab6bcbb" +version = "1.5.0" + + [deps.OptimizationBase.extensions] OptimizationEnzymeExt = "Enzyme" OptimizationFiniteDiffExt = "FiniteDiff" OptimizationForwardDiffExt = "ForwardDiff" OptimizationMTKExt = "ModelingToolkit" OptimizationReverseDiffExt = "ReverseDiff" - OptimizationSparseDiffExt = ["SparseDiffTools", "Symbolics", "ReverseDiff"] + OptimizationSparseDiffExt = ["SparseDiffTools", "ReverseDiff"] OptimizationTrackerExt = "Tracker" OptimizationZygoteExt = "Zygote" - [deps.Optimization.weakdeps] + [deps.OptimizationBase.weakdeps] Enzyme = "7da242da-08ed-463a-9acd-ee780be4f1d9" FiniteDiff = "6a86dc24-6348-571c-b903-95158fe2bd41" ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210" ModelingToolkit = "961ee093-0014-501f-94e3-6117800e7a78" ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" SparseDiffTools = "47a9eef4-7e08-11e9-0b38-333d64bd3804" - Symbolics = "0c5d862f-8b57-4792-8d23-62f2024744c7" Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" -[[deps.OptimizationBBO]] -deps = ["BlackBoxOptim", "Optimization", "Reexport"] -git-tree-sha1 = "939b19f2c213901aa544d1fd50e5f0065e66127c" -uuid = "3e6eede4-6085-4f62-9a71-46d9bc1eb92b" -version = "0.1.5" +[[deps.OptimizationMOI]] +deps = ["MathOptInterface", "ModelingToolkit", "Optimization", "Reexport", "SciMLStructures", "SparseArrays", "SymbolicIndexingInterface", "Symbolics"] +git-tree-sha1 = "830acbb62243562642427903ea16d79e969e87d1" +uuid = "fd9f6733-72f4-499f-8506-86b2bdd0dea1" +version = "0.4.3" [[deps.OptimizationNLopt]] deps = ["NLopt", "Optimization", "Reexport"] -git-tree-sha1 = "dc1b76eae7c47ae77560803587911d4d219af531" +git-tree-sha1 = "83b7f5218c6ff83f65fff32923630fe8be9f5131" uuid = "4e6fcdb7-1186-4e1f-a706-475e75c168bb" -version = "0.1.8" +version = "0.2.2" [[deps.OptimizationOptimJL]] deps = ["Optim", "Optimization", "Reexport", "SparseArrays"] -git-tree-sha1 = "bea24fb320d58cb639e3cbc63f8eedde6c667bd3" +git-tree-sha1 = "43870d726f883a47d158beebb1fc3c9fab1da9d6" uuid = "36348300-93cb-4f02-beb5-3c3902f8871e" -version = "0.1.14" +version = "0.3.2" [[deps.Opus_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "51a08fb14ec28da2ec7a927c4337e4332c2a4720" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "6703a85cb3781bd5909d48730a67205f3f31a575" uuid = "91d4177d-7536-5919-b921-800302f37372" -version = "1.3.2+0" +version = "1.3.3+0" [[deps.OrderedCollections]] git-tree-sha1 = "dfdf5519f235516220579f949664f1bf44e741c5" @@ -1480,10 +1899,194 @@ uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d" version = "1.6.3" [[deps.OrdinaryDiffEq]] -deps = ["ADTypes", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "ExponentialUtilities", "FastBroadcast", "FastClosures", "FiniteDiff", "ForwardDiff", "FunctionWrappersWrappers", "IfElse", "InteractiveUtils", "LineSearches", "LinearAlgebra", "LinearSolve", "Logging", "LoopVectorization", "MacroTools", "MuladdMacro", "NLsolve", "NonlinearSolve", "Polyester", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLNLSolve", "SciMLOperators", "SimpleNonlinearSolve", "SimpleUnPack", "SparseArrays", "SparseDiffTools", "StaticArrayInterface", "StaticArrays", "TruncatedStacktraces"] -git-tree-sha1 = "5f9e7ce227d0e447c3803cc05ef5d8f75f84b9ea" +deps = ["ADTypes", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "EnumX", "ExponentialUtilities", "FastBroadcast", "FastClosures", "FillArrays", "FiniteDiff", "ForwardDiff", "FunctionWrappersWrappers", "InteractiveUtils", "LineSearches", "LinearAlgebra", "LinearSolve", "Logging", "MacroTools", "MuladdMacro", "NonlinearSolve", "OrdinaryDiffEqAdamsBashforthMoulton", "OrdinaryDiffEqBDF", "OrdinaryDiffEqCore", "OrdinaryDiffEqDefault", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqExplicitRK", "OrdinaryDiffEqExponentialRK", "OrdinaryDiffEqExtrapolation", "OrdinaryDiffEqFIRK", "OrdinaryDiffEqFeagin", "OrdinaryDiffEqFunctionMap", "OrdinaryDiffEqHighOrderRK", "OrdinaryDiffEqIMEXMultistep", "OrdinaryDiffEqLinear", "OrdinaryDiffEqLowOrderRK", "OrdinaryDiffEqLowStorageRK", "OrdinaryDiffEqNonlinearSolve", "OrdinaryDiffEqNordsieck", "OrdinaryDiffEqPDIRK", "OrdinaryDiffEqPRK", "OrdinaryDiffEqQPRK", "OrdinaryDiffEqRKN", "OrdinaryDiffEqRosenbrock", "OrdinaryDiffEqSDIRK", "OrdinaryDiffEqSSPRK", "OrdinaryDiffEqStabilizedIRK", "OrdinaryDiffEqStabilizedRK", "OrdinaryDiffEqSymplecticRK", "OrdinaryDiffEqTsit5", "OrdinaryDiffEqVerner", "Polyester", "PreallocationTools", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SciMLStructures", "SimpleNonlinearSolve", "SimpleUnPack", "SparseArrays", "SparseDiffTools", "Static", "StaticArrayInterface", "StaticArrays", "TruncatedStacktraces"] +git-tree-sha1 = "cd892f12371c287dc50d6ad3af075b088b6f2d48" uuid = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed" -version = "6.59.3" +version = "6.89.0" + +[[deps.OrdinaryDiffEqAdamsBashforthMoulton]] +deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqLowOrderRK", "Polyester", "RecursiveArrayTools", "Reexport", "Static"] +git-tree-sha1 = "8e3c5978d0531a961f70d2f2730d1d16ed3bbd12" +uuid = "89bda076-bce5-4f1c-845f-551c83cdda9a" +version = "1.1.0" + +[[deps.OrdinaryDiffEqBDF]] +deps = ["ArrayInterface", "DiffEqBase", "FastBroadcast", "LinearAlgebra", "MacroTools", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "OrdinaryDiffEqSDIRK", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "StaticArrays", "TruncatedStacktraces"] +git-tree-sha1 = "9fbf064774890313ab0b95bc2a450913c123e22a" +uuid = "6ad6398a-0878-4a85-9266-38940aa047c8" +version = "1.1.0" + +[[deps.OrdinaryDiffEqCore]] +deps = ["ADTypes", "Adapt", "ArrayInterface", "DataStructures", "DiffEqBase", "DocStringExtensions", "EnumX", "FastBroadcast", "FastClosures", "FillArrays", "FunctionWrappersWrappers", "InteractiveUtils", "LinearAlgebra", "Logging", "MacroTools", "MuladdMacro", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators", "SciMLStructures", "SimpleUnPack", "Static", "StaticArrayInterface", "StaticArraysCore", "TruncatedStacktraces"] +git-tree-sha1 = "880ebdd92ba7994b9a836c8e95ee31c44e97dd21" +uuid = "bbf590c4-e513-4bbe-9b18-05decba2e5d8" +version = "1.3.0" +weakdeps = ["EnzymeCore"] + + [deps.OrdinaryDiffEqCore.extensions] + OrdinaryDiffEqCoreEnzymeCoreExt = "EnzymeCore" + +[[deps.OrdinaryDiffEqDefault]] +deps = ["DiffEqBase", "EnumX", "LinearAlgebra", "LinearSolve", "OrdinaryDiffEqBDF", "OrdinaryDiffEqCore", "OrdinaryDiffEqRosenbrock", "OrdinaryDiffEqTsit5", "OrdinaryDiffEqVerner", "PrecompileTools", "Preferences", "Reexport"] +git-tree-sha1 = "c8223e487d58bef28a3535b33ddf8ffdb44f46fb" +uuid = "50262376-6c5a-4cf5-baba-aaf4f84d72d7" +version = "1.1.0" + +[[deps.OrdinaryDiffEqDifferentiation]] +deps = ["ADTypes", "ArrayInterface", "DiffEqBase", "FastBroadcast", "FiniteDiff", "ForwardDiff", "FunctionWrappersWrappers", "LinearAlgebra", "LinearSolve", "OrdinaryDiffEqCore", "SciMLBase", "SparseArrays", "SparseDiffTools", "StaticArrayInterface", "StaticArrays"] +git-tree-sha1 = "e63ec633b1efa99e3caa2e26a01faaa88ba6cef9" +uuid = "4302a76b-040a-498a-8c04-15b101fed76b" +version = "1.1.0" + +[[deps.OrdinaryDiffEqExplicitRK]] +deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "TruncatedStacktraces"] +git-tree-sha1 = "4dbce3f9e6974567082ce5176e21aab0224a69e9" +uuid = "9286f039-9fbf-40e8-bf65-aa933bdc4db0" +version = "1.1.0" + +[[deps.OrdinaryDiffEqExponentialRK]] +deps = ["DiffEqBase", "ExponentialUtilities", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqSDIRK", "OrdinaryDiffEqVerner", "RecursiveArrayTools", "Reexport", "SciMLBase"] +git-tree-sha1 = "f63938b8e9e5d3a05815defb3ebdbdcf61ec0a74" +uuid = "e0540318-69ee-4070-8777-9e2de6de23de" +version = "1.1.0" + +[[deps.OrdinaryDiffEqExtrapolation]] +deps = ["DiffEqBase", "FastBroadcast", "LinearSolve", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "Polyester", "RecursiveArrayTools", "Reexport"] +git-tree-sha1 = "fea595528a160ed5cade9eee217a9691b1d97714" +uuid = "becaefa8-8ca2-5cf9-886d-c06f3d2bd2c4" +version = "1.1.0" + +[[deps.OrdinaryDiffEqFIRK]] +deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "LinearSolve", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "RecursiveArrayTools", "Reexport", "SciMLOperators"] +git-tree-sha1 = "92deb4a8e4a2bc011fd3b919e858d7a16568d3b1" +uuid = "5960d6e9-dd7a-4743-88e7-cf307b64f125" +version = "1.1.0" + +[[deps.OrdinaryDiffEqFeagin]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "RecursiveArrayTools", "Reexport", "Static"] +git-tree-sha1 = "a7cc74d3433db98e59dc3d58bc28174c6c290adf" +uuid = "101fe9f7-ebb6-4678-b671-3a81e7194747" +version = "1.1.0" + +[[deps.OrdinaryDiffEqFunctionMap]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "SciMLBase", "Static"] +git-tree-sha1 = "e249f54a438307968ac1748e3ec39c00743e6464" +uuid = "d3585ca7-f5d3-4ba6-8057-292ed1abd90f" +version = "1.1.0" + +[[deps.OrdinaryDiffEqHighOrderRK]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "Static"] +git-tree-sha1 = "103e017ff186ac39d731904045781c9bacfca2b0" +uuid = "d28bc4f8-55e1-4f49-af69-84c1a99f0f58" +version = "1.1.0" + +[[deps.OrdinaryDiffEqIMEXMultistep]] +deps = ["DiffEqBase", "FastBroadcast", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "Reexport"] +git-tree-sha1 = "9f8f52aad2399d7714b400ff9d203254b0a89c4a" +uuid = "9f002381-b378-40b7-97a6-27a27c83f129" +version = "1.1.0" + +[[deps.OrdinaryDiffEqLinear]] +deps = ["DiffEqBase", "ExponentialUtilities", "LinearAlgebra", "OrdinaryDiffEqCore", "OrdinaryDiffEqTsit5", "OrdinaryDiffEqVerner", "RecursiveArrayTools", "Reexport", "SciMLBase", "SciMLOperators"] +git-tree-sha1 = "0f81a77ede3da0dc714ea61e81c76b25db4ab87a" +uuid = "521117fe-8c41-49f8-b3b6-30780b3f0fb5" +version = "1.1.0" + +[[deps.OrdinaryDiffEqLowOrderRK]] +deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "SciMLBase", "Static"] +git-tree-sha1 = "1938fd639ae6688a46d606a5435e523dfdd80776" +uuid = "1344f307-1e59-4825-a18e-ace9aa3fa4c6" +version = "1.1.0" + +[[deps.OrdinaryDiffEqLowStorageRK]] +deps = ["Adapt", "DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static", "StaticArrays"] +git-tree-sha1 = "f5c712a32e1856fa6f8578f1219dcf44e3441684" +uuid = "b0944070-b475-4768-8dec-fb6eb410534d" +version = "1.2.0" + +[[deps.OrdinaryDiffEqNonlinearSolve]] +deps = ["ADTypes", "ArrayInterface", "DiffEqBase", "FastBroadcast", "FastClosures", "ForwardDiff", "LinearAlgebra", "LinearSolve", "MuladdMacro", "NonlinearSolve", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "PreallocationTools", "RecursiveArrayTools", "SciMLBase", "SciMLOperators", "SciMLStructures", "SimpleNonlinearSolve", "StaticArrays"] +git-tree-sha1 = "dab59b48708c15b0713d131759309c98ec9bac07" +uuid = "127b3ac7-2247-4354-8eb6-78cf4e7c58e8" +version = "1.1.0" + +[[deps.OrdinaryDiffEqNordsieck]] +deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqTsit5", "Polyester", "RecursiveArrayTools", "Reexport", "Static"] +git-tree-sha1 = "ef44754f10e0dfb9bb55ded382afed44cd94ab57" +uuid = "c9986a66-5c92-4813-8696-a7ec84c806c8" +version = "1.1.0" + +[[deps.OrdinaryDiffEqPDIRK]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "Polyester", "Reexport", "StaticArrays"] +git-tree-sha1 = "a8b7f8107c477e07c6a6c00d1d66cac68b801bbc" +uuid = "5dd0a6cf-3d4b-4314-aa06-06d4e299bc89" +version = "1.1.0" + +[[deps.OrdinaryDiffEqPRK]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "Reexport"] +git-tree-sha1 = "da525d277962a1b76102c79f30cb0c31e13fe5b9" +uuid = "5b33eab2-c0f1-4480-b2c3-94bc1e80bda1" +version = "1.1.0" + +[[deps.OrdinaryDiffEqQPRK]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "Static"] +git-tree-sha1 = "332f9d17d0229218f66a73492162267359ba85e9" +uuid = "04162be5-8125-4266-98ed-640baecc6514" +version = "1.1.0" + +[[deps.OrdinaryDiffEqRKN]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "RecursiveArrayTools", "Reexport"] +git-tree-sha1 = "41c09d9c20877546490f907d8dffdd52690dd65f" +uuid = "af6ede74-add8-4cfd-b1df-9a4dbb109d7a" +version = "1.1.0" + +[[deps.OrdinaryDiffEqRosenbrock]] +deps = ["ADTypes", "DiffEqBase", "FastBroadcast", "FiniteDiff", "ForwardDiff", "LinearAlgebra", "LinearSolve", "MacroTools", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static"] +git-tree-sha1 = "920b52bef5ee155127727609033696920bb88e56" +uuid = "43230ef6-c299-4910-a778-202eb28ce4ce" +version = "1.1.0" + +[[deps.OrdinaryDiffEqSDIRK]] +deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MacroTools", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "RecursiveArrayTools", "Reexport", "SciMLBase", "TruncatedStacktraces"] +git-tree-sha1 = "f6683803a58de600ab7a26d2f49411c9923e9721" +uuid = "2d112036-d095-4a1e-ab9a-08536f3ecdbf" +version = "1.1.0" + +[[deps.OrdinaryDiffEqSSPRK]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static", "StaticArrays"] +git-tree-sha1 = "7dbe4ac56f930df5e9abd003cedb54e25cbbea86" +uuid = "669c94d9-1f4b-4b64-b377-1aa079aa2388" +version = "1.2.0" + +[[deps.OrdinaryDiffEqStabilizedIRK]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "OrdinaryDiffEqDifferentiation", "OrdinaryDiffEqNonlinearSolve", "RecursiveArrayTools", "Reexport", "StaticArrays"] +git-tree-sha1 = "348fd6def9a88518715425025eadd58517017325" +uuid = "e3e12d00-db14-5390-b879-ac3dd2ef6296" +version = "1.1.0" + +[[deps.OrdinaryDiffEqStabilizedRK]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "RecursiveArrayTools", "Reexport", "StaticArrays"] +git-tree-sha1 = "1b0d894c880e25f7d0b022d7257638cf8ce5b311" +uuid = "358294b1-0aab-51c3-aafe-ad5ab194a2ad" +version = "1.1.0" + +[[deps.OrdinaryDiffEqSymplecticRK]] +deps = ["DiffEqBase", "FastBroadcast", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "RecursiveArrayTools", "Reexport"] +git-tree-sha1 = "4e8b8c8b81df3df17e2eb4603115db3b30a88235" +uuid = "fa646aed-7ef9-47eb-84c4-9443fc8cbfa8" +version = "1.1.0" + +[[deps.OrdinaryDiffEqTsit5]] +deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static", "TruncatedStacktraces"] +git-tree-sha1 = "96552f7d4619fabab4038a29ed37dd55e9eb513a" +uuid = "b1df2697-797e-41e3-8120-5422d3b24e4a" +version = "1.1.0" + +[[deps.OrdinaryDiffEqVerner]] +deps = ["DiffEqBase", "FastBroadcast", "LinearAlgebra", "MuladdMacro", "OrdinaryDiffEqCore", "Polyester", "PrecompileTools", "Preferences", "RecursiveArrayTools", "Reexport", "Static", "TruncatedStacktraces"] +git-tree-sha1 = "5bcb51505de78bdd7ad7e58c49c48dea672f6ac8" +uuid = "79d7bb75-1356-48c1-b8c0-6832512096c2" +version = "1.1.0" [[deps.PCRE2_jll]] deps = ["Artifacts", "Libdl"] @@ -1492,15 +2095,15 @@ version = "10.42.0+1" [[deps.PDMats]] deps = ["LinearAlgebra", "SparseArrays", "SuiteSparse"] -git-tree-sha1 = "4e5be6bb265d33669f98eb55d2a57addd1eeb72c" +git-tree-sha1 = "949347156c25054de2db3b166c52ac4728cbad65" uuid = "90014a1f-27ba-587c-ab20-58faa44d9150" -version = "0.11.30" +version = "0.11.31" [[deps.PNGFiles]] deps = ["Base64", "CEnum", "ImageCore", "IndirectArrays", "OffsetArrays", "libpng_jll"] -git-tree-sha1 = "eed372b0fa15624273a9cdb188b1b88476e6a233" +git-tree-sha1 = "67186a2bc9a90f9f85ff3cc8277868961fb57cbd" uuid = "f57f5aa1-a3ce-4bc8-8ab9-96f992907883" -version = "0.4.2" +version = "0.4.3" [[deps.PackageExtensionCompat]] git-tree-sha1 = "fb28e33b8a95c4cee25ce296c817d89cc2e53518" @@ -1522,9 +2125,9 @@ version = "0.5.12" [[deps.Pango_jll]] deps = ["Artifacts", "Cairo_jll", "Fontconfig_jll", "FreeType2_jll", "FriBidi_jll", "Glib_jll", "HarfBuzz_jll", "JLLWrappers", "Libdl"] -git-tree-sha1 = "4745216e94f71cb768d58330b059c9b76f32cb66" +git-tree-sha1 = "e127b609fb9ecba6f201ba7ab753d5a605d53801" uuid = "36c8627f-9965-5494-a995-c6b170f724f3" -version = "1.50.14+0" +version = "1.54.1+0" [[deps.Parameters]] deps = ["OrderedCollections", "UnPack"] @@ -1534,21 +2137,15 @@ version = "0.12.3" [[deps.Parsers]] deps = ["Dates", "PrecompileTools", "UUIDs"] -git-tree-sha1 = "a935806434c9d4c506ba941871b327b96d41f2bf" +git-tree-sha1 = "8489905bcdbcfac64d1daa51ca07c0d8f0283821" uuid = "69de0a69-1ddd-5017-9359-2bf0b02dc9f0" -version = "2.8.0" - -[[deps.Permutations]] -deps = ["Combinatorics", "LinearAlgebra", "Random"] -git-tree-sha1 = "c7745750b8a829bc6039b7f1f0981bcda526a946" -uuid = "2ae35dd2-176d-5d53-8349-f30d82d94d4f" -version = "0.4.19" +version = "2.8.1" [[deps.Pixman_jll]] deps = ["Artifacts", "CompilerSupportLibraries_jll", "JLLWrappers", "LLVMOpenMP_jll", "Libdl"] -git-tree-sha1 = "64779bc4c9784fee475689a1752ef4d5747c5e87" +git-tree-sha1 = "35621f10a7531bc8fa58f74610b1bfb70a3cfc6b" uuid = "30392449-352a-5448-841d-b1acce4e97dc" -version = "0.42.2+0" +version = "0.43.4+0" [[deps.Pkg]] deps = ["Artifacts", "Dates", "Downloads", "FileWatching", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "Serialization", "TOML", "Tar", "UUIDs", "p7zip_jll"] @@ -1563,21 +2160,27 @@ version = "0.3.3" [[deps.PlotUtils]] deps = ["ColorSchemes", "Colors", "Dates", "PrecompileTools", "Printf", "Random", "Reexport", "Statistics"] -git-tree-sha1 = "f92e1315dadf8c46561fb9396e525f7200cdc227" +git-tree-sha1 = "7b1a9df27f072ac4c9c7cbe5efb198489258d1f5" uuid = "995b91a9-d308-5afd-9ec6-746e21dbc043" -version = "1.3.5" +version = "1.4.1" + +[[deps.PoissonRandom]] +deps = ["Random"] +git-tree-sha1 = "a0f1159c33f846aa77c3f30ebbc69795e5327152" +uuid = "e409e4f3-bfea-5376-8464-e040bb5c01ab" +version = "0.4.4" [[deps.Polyester]] -deps = ["ArrayInterface", "BitTwiddlingConvenienceFunctions", "CPUSummary", "IfElse", "ManualMemory", "PolyesterWeave", "Requires", "Static", "StaticArrayInterface", "StrideArraysCore", "ThreadingUtilities"] -git-tree-sha1 = "fca25670784a1ae44546bcb17288218310af2778" +deps = ["ArrayInterface", "BitTwiddlingConvenienceFunctions", "CPUSummary", "IfElse", "ManualMemory", "PolyesterWeave", "Static", "StaticArrayInterface", "StrideArraysCore", "ThreadingUtilities"] +git-tree-sha1 = "6d38fea02d983051776a856b7df75b30cf9a3c1f" uuid = "f517fe37-dbe3-4b94-8317-1923a5111588" -version = "0.7.9" +version = "0.7.16" [[deps.PolyesterWeave]] deps = ["BitTwiddlingConvenienceFunctions", "CPUSummary", "IfElse", "Static", "ThreadingUtilities"] -git-tree-sha1 = "240d7170f5ffdb285f9427b92333c3463bf65bf6" +git-tree-sha1 = "645bed98cd47f72f67316fd42fc47dee771aefcd" uuid = "1d0040c9-8b98-4ee7-8388-3f51789ca0ad" -version = "0.2.1" +version = "0.2.2" [[deps.PolygonInbounds]] git-tree-sha1 = "8d50c96f4ba5e1e2fd524116b4ef97b29d5f77da" @@ -1590,10 +2193,10 @@ uuid = "647866c9-e3ac-4575-94e7-e3d426903924" version = "0.1.2" [[deps.Polynomials]] -deps = ["LinearAlgebra", "RecipesBase", "Setfield", "SparseArrays"] -git-tree-sha1 = "a9c7a523d5ed375be3983db190f6a5874ae9286d" +deps = ["LinearAlgebra", "RecipesBase", "Requires", "Setfield", "SparseArrays"] +git-tree-sha1 = "1a9cfb2dc2c2f1bd63f1906d72af39a79b49b736" uuid = "f27b6e38-b328-58d1-80ce-0feddd5e7a45" -version = "4.0.6" +version = "4.0.11" weakdeps = ["ChainRulesCore", "FFTW", "MakieCore", "MutableArithmetics"] [deps.Polynomials.extensions] @@ -1609,10 +2212,10 @@ uuid = "85a6dd25-e78a-55b7-8502-1745935b8125" version = "0.2.4" [[deps.PreallocationTools]] -deps = ["Adapt", "ArrayInterface", "ForwardDiff", "Requires"] -git-tree-sha1 = "f739b1b3cc7b9949af3b35089931f2b58c289163" +deps = ["Adapt", "ArrayInterface", "ForwardDiff"] +git-tree-sha1 = "6c62ce45f268f3f958821a1e5192cf91c75ae89c" uuid = "d236fae5-4411-538c-8e31-a6e3d9e00b46" -version = "0.4.12" +version = "0.4.24" [deps.PreallocationTools.extensions] PreallocationToolsReverseDiffExt = "ReverseDiff" @@ -1622,27 +2225,27 @@ version = "0.4.12" [[deps.PrecompileTools]] deps = ["Preferences"] -git-tree-sha1 = "03b4c25b43cb84cee5c90aa9b5ea0a78fd848d2f" +git-tree-sha1 = "5aa36f7049a63a1528fe8f7c3f2113413ffd4e1f" uuid = "aea7be01-6a6a-4083-8856-8a6e6704d82a" -version = "1.2.0" +version = "1.2.1" [[deps.Preferences]] deps = ["TOML"] -git-tree-sha1 = "00805cd429dcb4870060ff49ef443486c262e38e" +git-tree-sha1 = "9306f6085165d270f7e3db02af26a400d580f5c6" uuid = "21216c6a-2e73-6563-6e65-726566657250" -version = "1.4.1" +version = "1.4.3" [[deps.PrettyTables]] deps = ["Crayons", "LaTeXStrings", "Markdown", "PrecompileTools", "Printf", "Reexport", "StringManipulation", "Tables"] -git-tree-sha1 = "88b895d13d53b5577fd53379d913b9ab9ac82660" +git-tree-sha1 = "66b20dd35966a748321d3b2537c4584cf40387c7" uuid = "08abe8d2-0d0c-5749-adfa-8a2ac140af0d" -version = "2.3.1" +version = "2.3.2" [[deps.Primes]] deps = ["IntegerMathUtils"] -git-tree-sha1 = "1d05623b5952aed1307bf8b43bec8b8d1ef94b6e" +git-tree-sha1 = "cb420f77dc474d23ee47ca8d14c90810cafe69e7" uuid = "27ebfcd6-29c5-5fa9-bf4b-fb8fc14df3ae" -version = "0.5.5" +version = "0.5.6" [[deps.Printf]] deps = ["Unicode"] @@ -1660,9 +2263,14 @@ version = "0.1.4" [[deps.ProgressMeter]] deps = ["Distributed", "Printf"] -git-tree-sha1 = "00099623ffee15972c16111bcf84c58a0051257c" +git-tree-sha1 = "8f6bc219586aef8baf0ff9a5fe16ee9c70cb65e4" uuid = "92933f4c-e287-5a05-a399-4b506db050ca" -version = "1.9.0" +version = "1.10.2" + +[[deps.PtrArrays]] +git-tree-sha1 = "f011fbb92c4d401059b2212c05c0601b70f8b759" +uuid = "43287f4e-b6f4-7ad1-bb20-aadabca52c3d" +version = "1.2.0" [[deps.QOI]] deps = ["ColorTypes", "FileIO", "FixedPointNumbers"] @@ -1672,19 +2280,15 @@ version = "1.0.0" [[deps.QuadGK]] deps = ["DataStructures", "LinearAlgebra"] -git-tree-sha1 = "9ebcd48c498668c7fa0e97a9cae873fbee7bfee1" +git-tree-sha1 = "e237232771fdafbae3db5c31275303e056afaa9f" uuid = "1fd47b50-473d-5c70-9696-f719f8f3bcdc" -version = "2.9.1" +version = "2.10.1" -[[deps.QuasiMonteCarlo]] -deps = ["Accessors", "ConcreteStructs", "LatticeRules", "LinearAlgebra", "Primes", "Random", "Requires", "Sobol", "StatsBase"] -git-tree-sha1 = "cc086f8485bce77b6187141e1413c3b55f9a4341" -uuid = "8a4e6c94-4038-4cdc-81c3-7e6ffdb2a71b" -version = "0.3.3" -weakdeps = ["Distributions"] - - [deps.QuasiMonteCarlo.extensions] - QuasiMonteCarloDistributionsExt = "Distributions" +[[deps.Quaternions]] +deps = ["LinearAlgebra", "Random", "RealDot"] +git-tree-sha1 = "994cc27cdacca10e68feb291673ec3a76aa2fae9" +uuid = "94ee1d12-ae83-5a48-8b1c-48b8ff168ae0" +version = "0.7.6" [[deps.REPL]] deps = ["InteractiveUtils", "Markdown", "Sockets", "Unicode"] @@ -1694,6 +2298,18 @@ uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb" deps = ["SHA"] uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c" +[[deps.Random123]] +deps = ["Random", "RandomNumbers"] +git-tree-sha1 = "4743b43e5a9c4a2ede372de7061eed81795b12e7" +uuid = "74087812-796a-5b5d-8853-05524746bad3" +version = "1.7.0" + +[[deps.RandomNumbers]] +deps = ["Random"] +git-tree-sha1 = "c6ec94d2aaba1ab2ff983052cf6a606ca5985902" +uuid = "e6cf234a-135c-5ec9-84dd-332b85af5143" +version = "1.6.0" + [[deps.RangeArrays]] git-tree-sha1 = "b9039e93773ddcfc828f12aadf7115b4b4d225f5" uuid = "b3c3ace0-ae52-54e7-9d0b-2c1406fd6b9d" @@ -1709,6 +2325,12 @@ weakdeps = ["FixedPointNumbers"] [deps.Ratios.extensions] RatiosFixedPointNumbersExt = "FixedPointNumbers" +[[deps.RealDot]] +deps = ["LinearAlgebra"] +git-tree-sha1 = "9f0a1b71baaf7650f4fa8a1d168c7fb6ee41f0c9" +uuid = "c1ae055f-0cd5-4b69-90a6-9a35b1a98df9" +version = "0.1.0" + [[deps.RecipesBase]] deps = ["PrecompileTools"] git-tree-sha1 = "5c3d09cc4f31f5fc6af001c250bf1278733100ff" @@ -1716,28 +2338,36 @@ uuid = "3cdcf5f2-1ef4-517c-9805-6587b60abb01" version = "1.3.4" [[deps.RecursiveArrayTools]] -deps = ["Adapt", "ArrayInterface", "DocStringExtensions", "GPUArraysCore", "IteratorInterfaceExtensions", "LinearAlgebra", "RecipesBase", "Requires", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"] -git-tree-sha1 = "d7087c013e8a496ff396bae843b1e16d9a30ede8" +deps = ["Adapt", "ArrayInterface", "DocStringExtensions", "GPUArraysCore", "IteratorInterfaceExtensions", "LinearAlgebra", "RecipesBase", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"] +git-tree-sha1 = "b034171b93aebc81b3e1890a036d13a9c4a9e3e0" uuid = "731186ca-8d62-57ce-b412-fbd966d074cd" -version = "2.38.10" +version = "3.27.0" [deps.RecursiveArrayTools.extensions] + RecursiveArrayToolsFastBroadcastExt = "FastBroadcast" + RecursiveArrayToolsForwardDiffExt = "ForwardDiff" RecursiveArrayToolsMeasurementsExt = "Measurements" RecursiveArrayToolsMonteCarloMeasurementsExt = "MonteCarloMeasurements" + RecursiveArrayToolsReverseDiffExt = ["ReverseDiff", "Zygote"] + RecursiveArrayToolsSparseArraysExt = ["SparseArrays"] RecursiveArrayToolsTrackerExt = "Tracker" RecursiveArrayToolsZygoteExt = "Zygote" [deps.RecursiveArrayTools.weakdeps] + FastBroadcast = "7034ab61-46d4-4ed7-9d0f-46aef9175898" + ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210" Measurements = "eff96d63-e80a-5855-80a2-b1b0885c5ab7" MonteCarloMeasurements = "0987c9cc-fe09-11e8-30f0-b96dd679fdca" + ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" + SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf" Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" [[deps.RecursiveFactorization]] deps = ["LinearAlgebra", "LoopVectorization", "Polyester", "PrecompileTools", "StrideArraysCore", "TriangularSolve"] -git-tree-sha1 = "8bc86c78c7d8e2a5fe559e3721c0f9c9e303b2ed" +git-tree-sha1 = "6db1a75507051bc18bfa131fbc7c3f169cc4b2f6" uuid = "f2c3362d-daeb-58d1-803e-2bc74f2840b4" -version = "0.2.21" +version = "0.2.23" [[deps.Reexport]] git-tree-sha1 = "45e428421666073eab6f2da5c9d310d99bb12f9b" @@ -1746,9 +2376,9 @@ version = "1.2.2" [[deps.ReferenceTests]] deps = ["Colors", "DeepDiffs", "Distances", "FileIO", "ImageCore", "LazyModules", "Random", "SHA", "Test", "XTermColors"] -git-tree-sha1 = "041ee07b5651a7cc01cfd9d790c309e8fb7837ec" +git-tree-sha1 = "ce6661add3d5a76c6e2e2c56f14b41a50577276c" uuid = "324d217c-45ce-50fc-942e-d289b448e8cf" -version = "0.10.2" +version = "0.10.4" [[deps.RelocatableFolders]] deps = ["SHA", "Scratch"] @@ -1762,11 +2392,11 @@ git-tree-sha1 = "838a3a4188e2ded87a4f9f184b4b0d78a1e91cb7" uuid = "ae029012-a4dd-5104-9daa-d747884805df" version = "1.3.0" -[[deps.RingLists]] -deps = ["Random"] -git-tree-sha1 = "f39da63aa6d2d88e0c1bd20ed6a3ff9ea7171ada" -uuid = "286e9d63-9694-5540-9e3c-4e6708fa07b2" -version = "0.2.8" +[[deps.ResettableStacks]] +deps = ["StaticArrays"] +git-tree-sha1 = "256eeeec186fa7f26f2801732774ccf277f05db9" +uuid = "ae5879a3-cd67-5da8-be7f-38c6eb64a37b" +version = "1.1.1" [[deps.Rmath]] deps = ["Random", "Rmath_jll"] @@ -1775,10 +2405,10 @@ uuid = "79098fc4-a85e-5d69-aa6a-4863f24498fa" version = "0.7.1" [[deps.Rmath_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "6ed52fdd3382cf21947b15e8870ac0ddbff736da" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "e60724fd3beea548353984dc61c943ecddb0e29a" uuid = "f50d1b31-88e8-58de-be2c-1cc44531875f" -version = "0.4.0+0" +version = "0.4.3+0" [[deps.RoundingEmulator]] git-tree-sha1 = "40b9edad2e5287e05bd413a38f61a8ff55b9557b" @@ -1787,14 +2417,20 @@ version = "0.2.1" [[deps.RuntimeGeneratedFunctions]] deps = ["ExprTools", "SHA", "Serialization"] -git-tree-sha1 = "6aacc5eefe8415f47b3e34214c1d79d2674a0ba2" +git-tree-sha1 = "04c968137612c4a5629fa531334bb81ad5680f00" uuid = "7e49a35a-f44a-4d26-94aa-eba1b4ca6b47" -version = "0.5.12" +version = "0.5.13" [[deps.SHA]] uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce" version = "0.7.0" +[[deps.SIMD]] +deps = ["PrecompileTools"] +git-tree-sha1 = "2803cab51702db743f3fda07dd1745aadfbf43bd" +uuid = "fdea26ae-647d-5447-a871-4b548cad5224" +version = "3.5.0" + [[deps.SIMDTypes]] git-tree-sha1 = "330289636fb8107c5f32088d2741e9fd7a061a5c" uuid = "94e857df-77ce-4151-89e5-788b33177be4" @@ -1802,9 +2438,15 @@ version = "0.1.0" [[deps.SLEEFPirates]] deps = ["IfElse", "Static", "VectorizationBase"] -git-tree-sha1 = "3aac6d68c5e57449f5b9b865c9ba50ac2970c4cf" +git-tree-sha1 = "456f610ca2fbd1c14f5fcf31c6bfadc55e7d66e0" uuid = "476501e8-09a2-5ece-8869-fb82de89a1fa" -version = "0.6.42" +version = "0.6.43" + +[[deps.SPRAL_jll]] +deps = ["Artifacts", "CompilerSupportLibraries_jll", "Hwloc_jll", "JLLWrappers", "Libdl", "METIS_jll", "libblastrampoline_jll"] +git-tree-sha1 = "11f3da4b25efacd1cec8e263421f2a9003a5e8e0" +uuid = "319450e9-13b8-58e8-aa9f-8fd1420848ab" +version = "2024.5.8+0" [[deps.SafeTestsets]] git-tree-sha1 = "81ec49d645af090901120a1542e67ecbbe044db3" @@ -1812,13 +2454,14 @@ uuid = "1bc83da4-3b8d-516f-aca4-4fe02f6d838f" version = "0.1.0" [[deps.SciMLBase]] -deps = ["ADTypes", "ArrayInterface", "CommonSolve", "ConstructionBase", "Distributed", "DocStringExtensions", "EnumX", "FillArrays", "FunctionWrappersWrappers", "IteratorInterfaceExtensions", "LinearAlgebra", "Logging", "Markdown", "PrecompileTools", "Preferences", "Printf", "QuasiMonteCarlo", "RecipesBase", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLOperators", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables", "TruncatedStacktraces"] -git-tree-sha1 = "d432b4c4cc922fb7b21b555c138aa87f9fb7beb8" +deps = ["ADTypes", "Accessors", "ArrayInterface", "CommonSolve", "ConstructionBase", "Distributed", "DocStringExtensions", "EnumX", "Expronicon", "FunctionWrappersWrappers", "IteratorInterfaceExtensions", "LinearAlgebra", "Logging", "Markdown", "PrecompileTools", "Preferences", "Printf", "RecipesBase", "RecursiveArrayTools", "Reexport", "RuntimeGeneratedFunctions", "SciMLOperators", "SciMLStructures", "StaticArraysCore", "Statistics", "SymbolicIndexingInterface", "Tables"] +git-tree-sha1 = "92d9aa6fc3c273933c9e55e04868fbe77416ee75" uuid = "0bca4576-84f4-4d90-8ffe-ffa030f20462" -version = "2.9.1" +version = "2.50.5" [deps.SciMLBase.extensions] SciMLBaseChainRulesCoreExt = "ChainRulesCore" + SciMLBaseMakieExt = "Makie" SciMLBasePartialFunctionsExt = "PartialFunctions" SciMLBasePyCallExt = "PyCall" SciMLBasePythonCallExt = "PythonCall" @@ -1828,23 +2471,29 @@ version = "2.9.1" [deps.SciMLBase.weakdeps] ChainRules = "082447d4-558c-5d27-93f4-14fc19e9eca2" ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" + Makie = "ee78f7c6-11fb-53f2-987a-cfe4a2b5a57a" PartialFunctions = "570af359-4316-4cb7-8c74-252c00c2016b" PyCall = "438e738f-606a-5dbb-bf0a-cddfbfd45ab0" PythonCall = "6099a3de-0909-46bc-b1f4-468b9a2dfc0d" RCall = "6f49c342-dc21-5d91-9882-a32aef131414" Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" -[[deps.SciMLNLSolve]] -deps = ["DiffEqBase", "LineSearches", "NLsolve", "Reexport", "SciMLBase"] -git-tree-sha1 = "765b788339abd7d983618c09cfc0192e2b6b15fd" -uuid = "e9a6253c-8580-4d32-9898-8661bb511710" -version = "0.1.9" - [[deps.SciMLOperators]] -deps = ["ArrayInterface", "DocStringExtensions", "Lazy", "LinearAlgebra", "Setfield", "SparseArrays", "StaticArraysCore", "Tricks"] -git-tree-sha1 = "51ae235ff058a64815e0a2c34b1db7578a06813d" +deps = ["Accessors", "ArrayInterface", "DocStringExtensions", "LinearAlgebra", "MacroTools"] +git-tree-sha1 = "e39c5f217f9aca640c8e27ab21acf557a3967db5" uuid = "c0aeaf25-5076-4817-a8d5-81caf7dfa961" -version = "0.3.7" +version = "0.3.10" +weakdeps = ["SparseArrays", "StaticArraysCore"] + + [deps.SciMLOperators.extensions] + SciMLOperatorsSparseArraysExt = "SparseArrays" + SciMLOperatorsStaticArraysCoreExt = "StaticArraysCore" + +[[deps.SciMLStructures]] +deps = ["ArrayInterface"] +git-tree-sha1 = "20ad3e7c137156c50c93c888d0f2bc5b7883c729" +uuid = "53ae85a6-f571-4167-b2af-e1d143709226" +version = "1.4.2" [[deps.Scratch]] deps = ["Dates"] @@ -1855,11 +2504,6 @@ version = "1.2.1" [[deps.Serialization]] uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b" -[[deps.SetRounding]] -git-tree-sha1 = "d7a25e439d07a17b7cdf97eecee504c50fedf5f6" -uuid = "3cc68bcd-71a2-5612-b932-767ffbe40ab0" -version = "0.2.1" - [[deps.Setfield]] deps = ["ConstructionBase", "Future", "MacroTools", "StaticArraysCore"] git-tree-sha1 = "e2cc6d8c88613c05e1defb55170bf5ff211fbeac" @@ -1868,9 +2512,9 @@ version = "1.1.1" [[deps.ShaderAbstractions]] deps = ["ColorTypes", "FixedPointNumbers", "GeometryBasics", "LinearAlgebra", "Observables", "StaticArrays", "StructArrays", "Tables"] -git-tree-sha1 = "db0219befe4507878b1a90e07820fed3e62c289d" +git-tree-sha1 = "79123bc60c5507f035e6d1d9e563bb2971954ec8" uuid = "65257c39-d410-5151-9873-9b3e5be5013e" -version = "0.4.0" +version = "0.4.1" [[deps.SharedArrays]] deps = ["Distributed", "Mmap", "Random", "Serialization"] @@ -1888,46 +2532,23 @@ git-tree-sha1 = "d263a08ec505853a5ff1c1ebde2070419e3f28e9" uuid = "73760f76-fbc4-59ce-8f25-708e95d2df96" version = "0.4.0" -[[deps.SimpleBufferStream]] -git-tree-sha1 = "874e8867b33a00e784c8a7e4b60afe9e037b74e1" -uuid = "777ac1f9-54b0-4bf8-805c-2214025038e7" -version = "1.1.0" - -[[deps.SimpleGraphs]] -deps = ["AbstractLattices", "Combinatorics", "DataStructures", "IterTools", "LightXML", "LinearAlgebra", "LinearAlgebraX", "Optim", "Primes", "Random", "RingLists", "SimplePartitions", "SimplePolynomials", "SimpleRandom", "SparseArrays", "Statistics"] -git-tree-sha1 = "f65caa24a622f985cc341de81d3f9744435d0d0f" -uuid = "55797a34-41de-5266-9ec1-32ac4eb504d3" -version = "0.8.6" - [[deps.SimpleNonlinearSolve]] -deps = ["ArrayInterface", "DiffEqBase", "FiniteDiff", "ForwardDiff", "LinearAlgebra", "PrecompileTools", "Reexport", "SciMLBase", "StaticArraysCore"] -git-tree-sha1 = "69b1a53374dd14d7c165d98cb646aeb5f36f8d07" +deps = ["ADTypes", "ArrayInterface", "ConcreteStructs", "DiffEqBase", "DiffResults", "DifferentiationInterface", "FastClosures", "FiniteDiff", "ForwardDiff", "LinearAlgebra", "MaybeInplace", "PrecompileTools", "Reexport", "SciMLBase", "Setfield", "StaticArraysCore"] +git-tree-sha1 = "4d7a7c177bcb4c6dc465f09db91bfdb28c578919" uuid = "727e6d20-b764-4bd8-a329-72de5adea6c7" -version = "0.1.25" +version = "1.12.0" [deps.SimpleNonlinearSolve.extensions] - SimpleNonlinearSolveNNlibExt = "NNlib" + SimpleNonlinearSolveChainRulesCoreExt = "ChainRulesCore" + SimpleNonlinearSolveReverseDiffExt = "ReverseDiff" + SimpleNonlinearSolveTrackerExt = "Tracker" + SimpleNonlinearSolveZygoteExt = "Zygote" [deps.SimpleNonlinearSolve.weakdeps] - NNlib = "872c559c-99b0-510c-b3b7-b6c96a88d5cd" - -[[deps.SimplePartitions]] -deps = ["AbstractLattices", "DataStructures", "Permutations"] -git-tree-sha1 = "e9330391d04241eafdc358713b48396619c83bcb" -uuid = "ec83eff0-a5b5-5643-ae32-5cbf6eedec9d" -version = "0.3.1" - -[[deps.SimplePolynomials]] -deps = ["Mods", "Multisets", "Polynomials", "Primes"] -git-tree-sha1 = "7063828369cafa93f3187b3d0159f05582011405" -uuid = "cc47b68c-3164-5771-a705-2bc0097375a0" -version = "0.2.17" - -[[deps.SimpleRandom]] -deps = ["Distributions", "LinearAlgebra", "Random"] -git-tree-sha1 = "3a6fb395e37afab81aeea85bae48a4db5cd7244a" -uuid = "a6525b86-64cd-54fa-8f65-62fc48bdc0e8" -version = "0.3.1" + ChainRulesCore = "d360d2e6-b24c-11e9-a2a3-2a2ae2dbcce4" + ReverseDiff = "37e2e3b7-166d-5795-8a7a-e32c996b4267" + Tracker = "9f7883ad-71c0-57eb-9f7f-b5c9e6d3789c" + Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" [[deps.SimpleTraits]] deps = ["InteractiveUtils", "MacroTools"] @@ -1940,26 +2561,26 @@ git-tree-sha1 = "58e6353e72cde29b90a69527e56df1b5c3d8c437" uuid = "ce78b400-467f-4804-87d8-8f486da07d0a" version = "1.1.0" +[[deps.SimpleWeightedGraphs]] +deps = ["Graphs", "LinearAlgebra", "Markdown", "SparseArrays"] +git-tree-sha1 = "4b33e0e081a825dbfaf314decf58fa47e53d6acb" +uuid = "47aef6b3-ad0c-573a-a1e2-d07658019622" +version = "1.4.0" + [[deps.Sixel]] deps = ["Dates", "FileIO", "ImageCore", "IndirectArrays", "OffsetArrays", "REPL", "libsixel_jll"] git-tree-sha1 = "2da10356e31327c7096832eb9cd86307a50b1eb6" uuid = "45858cf5-a6b0-47a3-bbea-62219f50df47" version = "0.1.3" -[[deps.Sobol]] -deps = ["DelimitedFiles", "Random"] -git-tree-sha1 = "5a74ac22a9daef23705f010f72c81d6925b19df8" -uuid = "ed01d8cd-4d21-5b2a-85b4-cc3bdc58bad4" -version = "1.5.0" - [[deps.Sockets]] uuid = "6462fe0b-24de-5631-8697-dd941f90decc" [[deps.SortingAlgorithms]] deps = ["DataStructures"] -git-tree-sha1 = "5165dfb9fd131cf0c6957a3a7605dede376e7b63" +git-tree-sha1 = "66e0a8e672a0bdfca2c3f5937efb8538b9ddc085" uuid = "a2af1166-a08f-5f64-846c-94a0d3cef48c" -version = "1.2.0" +version = "1.2.1" [[deps.SparseArrays]] deps = ["Libdl", "LinearAlgebra", "Random", "Serialization", "SuiteSparse_jll"] @@ -1968,20 +2589,30 @@ version = "1.10.0" [[deps.SparseDiffTools]] deps = ["ADTypes", "Adapt", "ArrayInterface", "Compat", "DataStructures", "FiniteDiff", "ForwardDiff", "Graphs", "LinearAlgebra", "PackageExtensionCompat", "Random", "Reexport", "SciMLOperators", "Setfield", "SparseArrays", "StaticArrayInterface", "StaticArrays", "Tricks", "UnPack", "VertexSafeGraphs"] -git-tree-sha1 = "07272c80c278947baca092df0a01da4a10622ad5" +git-tree-sha1 = "c9e5d7ee75cf6a1ca3a22c9a6a4ef451792cf62b" uuid = "47a9eef4-7e08-11e9-0b38-333d64bd3804" -version = "2.13.0" +version = "2.20.0" [deps.SparseDiffTools.extensions] SparseDiffToolsEnzymeExt = "Enzyme" + SparseDiffToolsPolyesterExt = "Polyester" + SparseDiffToolsPolyesterForwardDiffExt = "PolyesterForwardDiff" SparseDiffToolsSymbolicsExt = "Symbolics" SparseDiffToolsZygoteExt = "Zygote" [deps.SparseDiffTools.weakdeps] Enzyme = "7da242da-08ed-463a-9acd-ee780be4f1d9" + Polyester = "f517fe37-dbe3-4b94-8317-1923a5111588" + PolyesterForwardDiff = "98d1487c-24ca-40b6-b7ab-df2af84e126b" Symbolics = "0c5d862f-8b57-4792-8d23-62f2024744c7" Zygote = "e88e6eb3-aa80-5325-afca-941959d7151f" +[[deps.SparseMatrixColorings]] +deps = ["ADTypes", "Compat", "DataStructures", "DocStringExtensions", "LinearAlgebra", "Random", "SparseArrays"] +git-tree-sha1 = "996dff77d814c45c3f2342fa0113e4ad31e712e8" +uuid = "0a514795-09f3-496d-8182-132a7b665d35" +version = "0.4.0" + [[deps.Sparspak]] deps = ["Libdl", "LinearAlgebra", "Logging", "OffsetArrays", "Printf", "SparseArrays", "Test"] git-tree-sha1 = "342cf4b449c299d8d1ceaf00b7a49f4fbc7940e7" @@ -1995,25 +2626,19 @@ version = "0.1.6" [[deps.SpecialFunctions]] deps = ["IrrationalConstants", "LogExpFunctions", "OpenLibm_jll", "OpenSpecFun_jll"] -git-tree-sha1 = "e2cfc4012a19088254b3950b85c3c1d8882d864d" +git-tree-sha1 = "2f5d4697f21388cbe1ff299430dd169ef97d7e14" uuid = "276daf66-3868-5448-9aa4-cd146d93841b" -version = "2.3.1" +version = "2.4.0" weakdeps = ["ChainRulesCore"] [deps.SpecialFunctions.extensions] SpecialFunctionsChainRulesCoreExt = "ChainRulesCore" -[[deps.StableHashTraits]] -deps = ["Compat", "SHA", "Tables", "TupleTools"] -git-tree-sha1 = "d29023a76780bb8a3f2273b29153fd00828cb73f" -uuid = "c5dd0088-6c3f-4803-b00e-f31a60c170fa" -version = "1.1.1" - [[deps.StableRNGs]] -deps = ["Random", "Test"] -git-tree-sha1 = "3be7d49667040add7ee151fefaf1f8c04c8c8276" +deps = ["Random"] +git-tree-sha1 = "83e6cce8324d49dfaf9ef059227f91ed4441a8e5" uuid = "860ef19b-820b-49d6-a774-d7a799459cd3" -version = "1.0.0" +version = "1.0.2" [[deps.StackViews]] deps = ["OffsetArrays"] @@ -2022,16 +2647,16 @@ uuid = "cae243ae-269e-4f55-b966-ac2d0dc13c15" version = "0.1.1" [[deps.Static]] -deps = ["IfElse"] -git-tree-sha1 = "f295e0a1da4ca425659c57441bcb59abb035a4bc" +deps = ["CommonWorldInvalidations", "IfElse", "PrecompileTools"] +git-tree-sha1 = "87d51a3ee9a4b0d2fe054bdd3fc2436258db2603" uuid = "aedffcd0-7271-4cad-89d0-dc628f76c6d3" -version = "0.8.8" +version = "1.1.1" [[deps.StaticArrayInterface]] -deps = ["ArrayInterface", "Compat", "IfElse", "LinearAlgebra", "PrecompileTools", "Requires", "SparseArrays", "Static", "SuiteSparse"] -git-tree-sha1 = "03fec6800a986d191f64f5c0996b59ed526eda25" +deps = ["ArrayInterface", "Compat", "IfElse", "LinearAlgebra", "PrecompileTools", "Static"] +git-tree-sha1 = "96381d50f1ce85f2663584c8e886a6ca97e60554" uuid = "0d7ed370-da01-4f52-bd93-41d350b8b718" -version = "1.4.1" +version = "1.8.0" weakdeps = ["OffsetArrays", "StaticArrays"] [deps.StaticArrayInterface.extensions] @@ -2040,18 +2665,19 @@ weakdeps = ["OffsetArrays", "StaticArrays"] [[deps.StaticArrays]] deps = ["LinearAlgebra", "PrecompileTools", "Random", "StaticArraysCore"] -git-tree-sha1 = "5ef59aea6f18c25168842bded46b16662141ab87" +git-tree-sha1 = "eeafab08ae20c62c44c8399ccb9354a04b80db50" uuid = "90137ffa-7385-5640-81b9-e52037218182" -version = "1.7.0" -weakdeps = ["Statistics"] +version = "1.9.7" +weakdeps = ["ChainRulesCore", "Statistics"] [deps.StaticArrays.extensions] + StaticArraysChainRulesCoreExt = "ChainRulesCore" StaticArraysStatisticsExt = "Statistics" [[deps.StaticArraysCore]] -git-tree-sha1 = "36b3d696ce6366023a0ea192b4cd442268995a0d" +git-tree-sha1 = "192954ef1208c7019899fbf8049e717f92959682" uuid = "1e83bf80-4336-4d27-bf5d-d5a4f845583c" -version = "1.4.2" +version = "1.4.3" [[deps.Statistics]] deps = ["LinearAlgebra", "SparseArrays"] @@ -2066,15 +2692,15 @@ version = "1.7.0" [[deps.StatsBase]] deps = ["DataAPI", "DataStructures", "LinearAlgebra", "LogExpFunctions", "Missings", "Printf", "Random", "SortingAlgorithms", "SparseArrays", "Statistics", "StatsAPI"] -git-tree-sha1 = "d1bf48bfcc554a3761a133fe3a9bb01488e06916" +git-tree-sha1 = "5cf7606d6cef84b543b483848d4ae08ad9832b21" uuid = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91" -version = "0.33.21" +version = "0.34.3" [[deps.StatsFuns]] deps = ["HypergeometricFunctions", "IrrationalConstants", "LogExpFunctions", "Reexport", "Rmath", "SpecialFunctions"] -git-tree-sha1 = "f625d686d5a88bcd2b15cd81f18f98186fdc0c9a" +git-tree-sha1 = "cef0472124fab0695b58ca35a77c6fb942fdab8a" uuid = "4c63d2b9-4356-54db-8cca-17b64c39e42c" -version = "1.3.0" +version = "1.3.1" weakdeps = ["ChainRulesCore", "InverseFunctions"] [deps.StatsFuns.extensions] @@ -2082,10 +2708,10 @@ weakdeps = ["ChainRulesCore", "InverseFunctions"] StatsFunsInverseFunctionsExt = "InverseFunctions" [[deps.StrideArraysCore]] -deps = ["ArrayInterface", "CloseOpenIntervals", "IfElse", "LayoutPointers", "ManualMemory", "SIMDTypes", "Static", "StaticArrayInterface", "ThreadingUtilities"] -git-tree-sha1 = "d6415f66f3d89c615929af907fdc6a3e17af0d8c" +deps = ["ArrayInterface", "CloseOpenIntervals", "IfElse", "LayoutPointers", "LinearAlgebra", "ManualMemory", "SIMDTypes", "Static", "StaticArrayInterface", "ThreadingUtilities"] +git-tree-sha1 = "f35f6ab602df8413a50c4a25ca14de821e8605fb" uuid = "7792a7ef-975c-4747-a70f-980b88e8d1da" -version = "0.5.2" +version = "0.5.7" [[deps.StringManipulation]] deps = ["PrecompileTools"] @@ -2094,26 +2720,85 @@ uuid = "892a3eda-7b42-436c-8928-eab12a02cf0e" version = "0.3.4" [[deps.StructArrays]] -deps = ["Adapt", "ConstructionBase", "DataAPI", "GPUArraysCore", "StaticArraysCore", "Tables"] -git-tree-sha1 = "0a3db38e4cce3c54fe7a71f831cd7b6194a54213" +deps = ["ConstructionBase", "DataAPI", "Tables"] +git-tree-sha1 = "f4dc295e983502292c4c3f951dbb4e985e35b3be" uuid = "09ab397b-f2b6-538f-b94a-2f83cf4a842a" -version = "0.6.16" +version = "0.6.18" +weakdeps = ["Adapt", "GPUArraysCore", "SparseArrays", "StaticArrays"] + + [deps.StructArrays.extensions] + StructArraysAdaptExt = "Adapt" + StructArraysGPUArraysCoreExt = "GPUArraysCore" + StructArraysSparseArraysExt = "SparseArrays" + StructArraysStaticArraysExt = "StaticArrays" + +[[deps.StructEquality]] +deps = ["Compat"] +git-tree-sha1 = "192a9f1de3cfef80ab1a4ba7b150bb0e11ceedcf" +uuid = "6ec83bb0-ed9f-11e9-3b4c-2b04cb4e219c" +version = "2.1.0" [[deps.SuiteSparse]] deps = ["Libdl", "LinearAlgebra", "Serialization", "SparseArrays"] uuid = "4607b0f0-06f3-5cda-b6b1-a6196a1729e9" [[deps.SuiteSparse_jll]] -deps = ["Artifacts", "Libdl", "Pkg", "libblastrampoline_jll"] +deps = ["Artifacts", "Libdl", "libblastrampoline_jll"] uuid = "bea87d4a-7f5b-5778-9afe-8cc45184846c" version = "7.2.1+1" +[[deps.SymbolicAnalysis]] +deps = ["DSP", "DataStructures", "Dictionaries", "Distributions", "DomainSets", "IfElse", "LinearAlgebra", "LogExpFunctions", "Manifolds", "PDMats", "RecursiveArrayTools", "StatsBase", "SymbolicUtils", "Symbolics"] +git-tree-sha1 = "64f26bb4a666bb97baa16f063164ade83ca29ec9" +uuid = "4297ee4d-0239-47d8-ba5d-195ecdf594fe" +version = "0.3.0" + [[deps.SymbolicIndexingInterface]] -deps = ["DocStringExtensions"] -git-tree-sha1 = "f8ab052bfcbdb9b48fad2c80c873aa0d0344dfe5" +deps = ["Accessors", "ArrayInterface", "RuntimeGeneratedFunctions", "StaticArraysCore"] +git-tree-sha1 = "c9fce29fb41a10677e24f74421ebe31220b81ad0" uuid = "2efcf032-c050-4f8e-a9bb-153293bab1f5" +version = "0.3.28" + +[[deps.SymbolicLimits]] +deps = ["SymbolicUtils"] +git-tree-sha1 = "fabf4650afe966a2ba646cabd924c3fd43577fc3" +uuid = "19f23fe9-fdab-4a78-91af-e7b7767979c3" version = "0.2.2" +[[deps.SymbolicUtils]] +deps = ["AbstractTrees", "Bijections", "ChainRulesCore", "Combinatorics", "ConstructionBase", "DataStructures", "DocStringExtensions", "DynamicPolynomials", "IfElse", "LinearAlgebra", "MultivariatePolynomials", "NaNMath", "Setfield", "SparseArrays", "SpecialFunctions", "StaticArrays", "SymbolicIndexingInterface", "TermInterface", "TimerOutputs", "Unityper"] +git-tree-sha1 = "40b48f4eb06a4bd450c50b4206f7f490556214e1" +uuid = "d1185830-fcd6-423d-90d6-eec64667417b" +version = "3.5.0" + + [deps.SymbolicUtils.extensions] + SymbolicUtilsLabelledArraysExt = "LabelledArrays" + + [deps.SymbolicUtils.weakdeps] + LabelledArrays = "2ee39098-c373-598a-b85f-a56591580800" + +[[deps.Symbolics]] +deps = ["ADTypes", "ArrayInterface", "Bijections", "CommonWorldInvalidations", "ConstructionBase", "DataStructures", "DiffRules", "Distributions", "DocStringExtensions", "DomainSets", "DynamicPolynomials", "IfElse", "LaTeXStrings", "LambertW", "Latexify", "Libdl", "LinearAlgebra", "LogExpFunctions", "MacroTools", "Markdown", "NaNMath", "PrecompileTools", "Primes", "RecipesBase", "Reexport", "RuntimeGeneratedFunctions", "SciMLBase", "Setfield", "SparseArrays", "SpecialFunctions", "StaticArraysCore", "SymbolicIndexingInterface", "SymbolicLimits", "SymbolicUtils", "TermInterface"] +git-tree-sha1 = "0c647ac55dbfeeea85ed5c0fd5646977fa71e0b4" +uuid = "0c5d862f-8b57-4792-8d23-62f2024744c7" +version = "6.4.0" + + [deps.Symbolics.extensions] + SymbolicsForwardDiffExt = "ForwardDiff" + SymbolicsGroebnerExt = "Groebner" + SymbolicsLuxCoreExt = "LuxCore" + SymbolicsNemoExt = "Nemo" + SymbolicsPreallocationToolsExt = ["PreallocationTools", "ForwardDiff"] + SymbolicsSymPyExt = "SymPy" + + [deps.Symbolics.weakdeps] + ForwardDiff = "f6369f11-7733-5829-9624-2563aa707210" + Groebner = "0b43b601-686d-58a3-8a1c-6623616c7cd4" + LuxCore = "bb33d45b-7691-41d6-9220-0943567d0623" + Nemo = "2edaba10-b0f1-5616-af89-8c11ac63239a" + PreallocationTools = "d236fae5-4411-538c-8e31-a6e3d9e00b46" + SymPy = "24249f21-da20-56a4-8eb1-6a02cf4ae2e6" + [[deps.TOML]] deps = ["Dates"] uuid = "fa267f1f-6049-4f14-aa54-33bafae1ed76" @@ -2126,10 +2811,10 @@ uuid = "3783bdb8-4a98-5b6b-af9a-565f29a5fe9c" version = "1.0.1" [[deps.Tables]] -deps = ["DataAPI", "DataValueInterfaces", "IteratorInterfaceExtensions", "LinearAlgebra", "OrderedCollections", "TableTraits"] -git-tree-sha1 = "cb76cf677714c095e535e3501ac7954732aeea2d" +deps = ["DataAPI", "DataValueInterfaces", "IteratorInterfaceExtensions", "OrderedCollections", "TableTraits"] +git-tree-sha1 = "598cd7c1f68d1e205689b1c2fe65a9f85846f297" uuid = "bd369af6-aec1-5ad0-b16a-f7cc5008161c" -version = "1.11.1" +version = "1.12.0" [[deps.Tar]] deps = ["ArgTools", "SHA"] @@ -2142,6 +2827,11 @@ git-tree-sha1 = "1feb45f88d133a655e001435632f019a9a1bcdb6" uuid = "62fd8b95-f654-4bbd-a8a5-9c27f68ccd50" version = "0.1.1" +[[deps.TermInterface]] +git-tree-sha1 = "d673e0aca9e46a2f63720201f55cc7b3e7169b16" +uuid = "8ea1fca8-c5ef-4a55-8b96-4e9afe9c9a3c" +version = "2.0.0" + [[deps.TerminalLoggers]] deps = ["LeftChildRightSiblingTrees", "Logging", "Markdown", "Printf", "ProgressLogging", "UUIDs"] git-tree-sha1 = "f133fab380933d042f6796eda4e130272ba520ca" @@ -2153,9 +2843,9 @@ deps = ["InteractiveUtils", "Logging", "Random", "Serialization"] uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40" [[deps.TestItems]] -git-tree-sha1 = "8621ba2637b49748e2dc43ba3d84340be2938022" +git-tree-sha1 = "42fd9023fef18b9b78c8343a4e2f3813ffbcefcb" uuid = "1c621080-faea-4a02-84b6-bbd5e436b8fe" -version = "0.1.1" +version = "1.0.0" [[deps.ThreadingUtilities]] deps = ["ManualMemory"] @@ -2164,30 +2854,37 @@ uuid = "8290d209-cae3-49c0-8002-c8c24d57dab5" version = "0.5.2" [[deps.TiffImages]] -deps = ["ColorTypes", "DataStructures", "DocStringExtensions", "FileIO", "FixedPointNumbers", "IndirectArrays", "Inflate", "Mmap", "OffsetArrays", "PkgVersion", "ProgressMeter", "UUIDs"] -git-tree-sha1 = "34cc045dd0aaa59b8bbe86c644679bc57f1d5bd0" +deps = ["ColorTypes", "DataStructures", "DocStringExtensions", "FileIO", "FixedPointNumbers", "IndirectArrays", "Inflate", "Mmap", "OffsetArrays", "PkgVersion", "ProgressMeter", "SIMD", "UUIDs"] +git-tree-sha1 = "bc7fd5c91041f44636b2c134041f7e5263ce58ae" uuid = "731e570b-9d59-4bfa-96dc-6df516fadf69" -version = "0.6.8" +version = "0.10.0" + +[[deps.TimerOutputs]] +deps = ["ExprTools", "Printf"] +git-tree-sha1 = "5a13ae8a41237cff5ecf34f73eb1b8f42fff6531" +uuid = "a759f4b9-e2f1-59dc-863e-4aeb61b1ea8f" +version = "0.5.24" + +[[deps.Tokenize]] +git-tree-sha1 = "468b4685af4abe0e9fd4d7bf495a6554a6276e75" +uuid = "0796e94c-ce3b-5d07-9a54-7f471281c624" +version = "0.5.29" [[deps.TranscodingStreams]] -git-tree-sha1 = "1fbeaaca45801b4ba17c251dd8603ef24801dd84" +git-tree-sha1 = "e84b3a11b9bece70d14cce63406bbc79ed3464d2" uuid = "3bb67fe8-82b1-5028-8e26-92a6c54297fa" -version = "0.10.2" -weakdeps = ["Random", "Test"] - - [deps.TranscodingStreams.extensions] - TestExt = ["Test", "Random"] +version = "0.11.2" [[deps.TriangularSolve]] deps = ["CloseOpenIntervals", "IfElse", "LayoutPointers", "LinearAlgebra", "LoopVectorization", "Polyester", "Static", "VectorizationBase"] -git-tree-sha1 = "fadebab77bf3ae041f77346dd1c290173da5a443" +git-tree-sha1 = "be986ad9dac14888ba338c2554dcfec6939e1393" uuid = "d5829a12-d9aa-46ab-831f-fb7c9ab06edf" -version = "0.1.20" +version = "0.2.1" [[deps.Tricks]] -git-tree-sha1 = "eae1bb484cd63b36999ee58be2de6c178105112f" +git-tree-sha1 = "7822b97e99a1672bfb1b49b668a6d46d58d8cbcb" uuid = "410a4b4d-49e4-4fbc-ab6d-cb71b17b3775" -version = "0.1.8" +version = "0.1.9" [[deps.TriplotBase]] git-tree-sha1 = "4d4ed7f294cda19382ff7de4c137d24d16adc89b" @@ -2200,11 +2897,6 @@ git-tree-sha1 = "ea3e54c2bdde39062abf5a9758a23735558705e1" uuid = "781d530d-4396-4725-bb49-402e4bee1e77" version = "1.4.0" -[[deps.TupleTools]] -git-tree-sha1 = "155515ed4c4236db30049ac1495e2969cc06be9d" -uuid = "9d95972d-f1c8-5527-a6e0-b4b365fa01f6" -version = "1.4.3" - [[deps.URIs]] git-tree-sha1 = "67db6cc7b3821e19ebe75791a9dd19c9b1188f2b" uuid = "5c2747f8-b7ea-4ff2-ba2e-563bfd36b1d4" @@ -2228,11 +2920,28 @@ git-tree-sha1 = "53915e50200959667e78a92a418594b428dffddf" uuid = "1cfade01-22cf-5700-b092-accc4b62d6e1" version = "0.4.1" +[[deps.Unitful]] +deps = ["Dates", "LinearAlgebra", "Random"] +git-tree-sha1 = "d95fe458f26209c66a187b1114df96fd70839efd" +uuid = "1986cc42-f94f-5a68-af5c-568840ba703d" +version = "1.21.0" +weakdeps = ["ConstructionBase", "InverseFunctions"] + + [deps.Unitful.extensions] + ConstructionBaseUnitfulExt = "ConstructionBase" + InverseFunctionsUnitfulExt = "InverseFunctions" + +[[deps.Unityper]] +deps = ["ConstructionBase"] +git-tree-sha1 = "25008b734a03736c41e2a7dc314ecb95bd6bbdb0" +uuid = "a7c27f48-0311-42f6-a7f8-2c11e75eb415" +version = "0.1.6" + [[deps.VectorizationBase]] deps = ["ArrayInterface", "CPUSummary", "HostCPUFeatures", "IfElse", "LayoutPointers", "Libdl", "LinearAlgebra", "SIMDTypes", "Static", "StaticArrayInterface"] -git-tree-sha1 = "7209df901e6ed7489fe9b7aa3e46fb788e15db85" +git-tree-sha1 = "e7f5b81c65eb858bed630fe006837b935518aca5" uuid = "3d5dd08c-fd9d-11e8-17fa-ed2836048c2f" -version = "0.21.65" +version = "0.21.70" [[deps.VertexSafeGraphs]] deps = ["Graphs"] @@ -2242,21 +2951,21 @@ version = "0.2.0" [[deps.WoodburyMatrices]] deps = ["LinearAlgebra", "SparseArrays"] -git-tree-sha1 = "5f24e158cf4cee437052371455fe361f526da062" +git-tree-sha1 = "c1a7aa6219628fcd757dede0ca95e245c5cd9511" uuid = "efce3f68-66dc-5838-9240-27a6d6f5f9b6" -version = "0.5.6" +version = "1.0.0" [[deps.XML2_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Libiconv_jll", "Zlib_jll"] -git-tree-sha1 = "da69178aacc095066bad1f69d2f59a60a1dd8ad1" +git-tree-sha1 = "1165b0443d0eca63ac1e32b8c0eb69ed2f4f8127" uuid = "02c8fc9c-b97f-50b9-bbe4-9be30ff0a78a" -version = "2.12.0+0" +version = "2.13.3+0" [[deps.XSLT_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Libgcrypt_jll", "Libgpg_error_jll", "Libiconv_jll", "Pkg", "XML2_jll", "Zlib_jll"] -git-tree-sha1 = "91844873c4085240b95e795f692c4cec4d805f8a" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Libgcrypt_jll", "Libgpg_error_jll", "Libiconv_jll", "XML2_jll", "Zlib_jll"] +git-tree-sha1 = "a54ee957f4c86b526460a720dbc882fa5edcbefc" uuid = "aed1982a-8fda-507f-9586-7b0439959a61" -version = "1.1.34+0" +version = "1.1.41+0" [[deps.XTermColors]] deps = ["Crayons", "ImageBase", "OffsetArrays"] @@ -2283,16 +2992,16 @@ uuid = "a3789734-cfe1-5b06-b2d0-1dd0d9d62d05" version = "1.1.4+0" [[deps.Xorg_libXext_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libX11_jll"] -git-tree-sha1 = "b7c0aa8c376b31e4852b360222848637f481f8c3" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libX11_jll"] +git-tree-sha1 = "d2d1a5c49fae4ba39983f63de6afcbea47194e85" uuid = "1082639a-0dae-5f34-9b06-72781eeb8cb3" -version = "1.3.4+4" +version = "1.3.6+0" [[deps.Xorg_libXrender_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Xorg_libX11_jll"] -git-tree-sha1 = "19560f30fd49f4d4efbe7002a1037f8c43d43b96" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Xorg_libX11_jll"] +git-tree-sha1 = "47e45cd78224c53109495b3e324df0c37bb61fbe" uuid = "ea2f1a96-1ddc-540d-b46f-429655e07cfa" -version = "0.9.10+4" +version = "0.9.11+0" [[deps.Xorg_libpthread_stubs_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] @@ -2302,9 +3011,9 @@ version = "0.1.1+0" [[deps.Xorg_libxcb_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "XSLT_jll", "Xorg_libXau_jll", "Xorg_libXdmcp_jll", "Xorg_libpthread_stubs_jll"] -git-tree-sha1 = "b4bfde5d5b652e22b9c790ad00af08b6d042b97d" +git-tree-sha1 = "bcd466676fef0878338c61e655629fa7bbc69d8e" uuid = "c7cfdc94-dc32-55de-ac96-5a1b8d977c5b" -version = "1.15.0+0" +version = "1.17.0+0" [[deps.Xorg_xtrans_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl"] @@ -2324,16 +3033,16 @@ uuid = "9a68df92-36a6-505f-a73e-abb412b6bfb4" version = "0.2.3+0" [[deps.libaom_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "3a2ea60308f0996d26f1e5354e10c24e9ef905d4" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "1827acba325fdcdf1d2647fc8d5301dd9ba43a9d" uuid = "a4ae2306-e953-59d6-aa16-d00cac43593b" -version = "3.4.0+0" +version = "3.9.0+0" [[deps.libass_jll]] -deps = ["Artifacts", "Bzip2_jll", "FreeType2_jll", "FriBidi_jll", "HarfBuzz_jll", "JLLWrappers", "Libdl", "Pkg", "Zlib_jll"] -git-tree-sha1 = "5982a94fcba20f02f42ace44b9894ee2b140fe47" +deps = ["Artifacts", "Bzip2_jll", "FreeType2_jll", "FriBidi_jll", "HarfBuzz_jll", "JLLWrappers", "Libdl", "Zlib_jll"] +git-tree-sha1 = "e17c115d55c5fbb7e52ebedb427a0dca79d4484e" uuid = "0ac62f75-1d6f-5e53-bd7c-93b484bb37c0" -version = "0.15.1+0" +version = "0.15.2+0" [[deps.libblastrampoline_jll]] deps = ["Artifacts", "Libdl"] @@ -2341,16 +3050,16 @@ uuid = "8e850b90-86db-534c-a0d3-1478176c7d93" version = "5.8.0+1" [[deps.libfdk_aac_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "daacc84a041563f965be61859a36e17c4e4fcd55" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "8a22cf860a7d27e4f3498a0fe0811a7957badb38" uuid = "f638f0a6-7fb0-5443-88ba-1cc74229b280" -version = "2.0.2+0" +version = "2.0.3+0" [[deps.libpng_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg", "Zlib_jll"] -git-tree-sha1 = "94d180a6d2b5e55e447e2d27a29ed04fe79eb30c" +deps = ["Artifacts", "JLLWrappers", "Libdl", "Zlib_jll"] +git-tree-sha1 = "d7015d2e18a5fd9a4f47de711837e980519781a4" uuid = "b53b4c65-9356-5827-b1ea-8c7a1a84506f" -version = "1.6.38+0" +version = "1.6.43+1" [[deps.libsixel_jll]] deps = ["Artifacts", "JLLWrappers", "JpegTurbo_jll", "Libdl", "Pkg", "libpng_jll"] @@ -2360,28 +3069,34 @@ version = "1.10.3+0" [[deps.libvorbis_jll]] deps = ["Artifacts", "JLLWrappers", "Libdl", "Ogg_jll", "Pkg"] -git-tree-sha1 = "b910cb81ef3fe6e78bf6acee440bda86fd6ae00c" +git-tree-sha1 = "490376214c4721cdaca654041f635213c6165cb3" uuid = "f27f6e37-5d2b-51aa-960f-b287f2bc3b7a" -version = "1.3.7+1" +version = "1.3.7+2" [[deps.nghttp2_jll]] deps = ["Artifacts", "Libdl"] uuid = "8e850ede-7688-5339-a07c-302acd2aaf8d" version = "1.52.0+1" +[[deps.oneTBB_jll]] +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "7d0ea0f4895ef2f5cb83645fa689e52cb55cf493" +uuid = "1317d2d5-d96f-522e-a858-c73665f53c3e" +version = "2021.12.0+0" + [[deps.p7zip_jll]] deps = ["Artifacts", "Libdl"] uuid = "3f19e933-33d8-53b3-aaab-bd5110c3b7a0" version = "17.4.0+2" [[deps.x264_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "4fea590b89e6ec504593146bf8b988b2c00922b2" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "35976a1216d6c066ea32cba2150c4fa682b276fc" uuid = "1270edf5-f2f9-52d2-97e9-ab00b5d0237a" -version = "2021.5.5+0" +version = "10164.0.0+0" [[deps.x265_jll]] -deps = ["Artifacts", "JLLWrappers", "Libdl", "Pkg"] -git-tree-sha1 = "ee567a171cce03570d77ad3a43e90218e38937a9" +deps = ["Artifacts", "JLLWrappers", "Libdl"] +git-tree-sha1 = "dcc541bb19ed5b0ede95581fb2e41ecf179527d2" uuid = "dfaa095f-4041-5dcd-9319-2fabd8486b76" -version = "3.5.0+0" +version = "3.6.0+0" diff --git a/test/Project.toml b/test/Project.toml index 33c5c74..889bf08 100644 --- a/test/Project.toml +++ b/test/Project.toml @@ -1,8 +1,9 @@ [deps] -AbbreviatedStackTraces = "ac637c84-cc71-43bf-9c33-c1b4316be3d4" +Accessors = "7d9f7c33-5ae7-4f3b-8dc6-eff91059b697" BenchmarkTools = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf" CairoMakie = "13f3f980-e62b-5c42-98c6-ff1f3baf88f0" ChunkSplitters = "ae650224-84b6-46f8-82ea-d812ca08434e" +ConcreteStructs = "2569d6c7-a4a2-43d3-a901-331e8e4be471" Contour = "d38c429a-6771-53c6-b99e-75d170b6e991" DataInterpolations = "82cc6244-b520-54b8-b5a6-8a565e85f1d0" DelaunayTriangulation = "927a84f5-c5f4-47a5-9785-b46e178433df" @@ -38,4 +39,6 @@ SciMLBase = "0bca4576-84f4-4d90-8ffe-ffa030f20462" StableRNGs = "860ef19b-820b-49d6-a774-d7a799459cd3" StaticArraysCore = "1e83bf80-4336-4d27-bf5d-d5a4f845583c" StatsBase = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91" +StructEquality = "6ec83bb0-ed9f-11e9-3b4c-2b04cb4e219c" +SymbolicIndexingInterface = "2efcf032-c050-4f8e-a9bb-153293bab1f5" Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" diff --git a/test/bivariate_profile.jl b/test/bivariate_profile.jl index 1eda6b2..795fc2d 100644 --- a/test/bivariate_profile.jl +++ b/test/bivariate_profile.jl @@ -15,6 +15,7 @@ using Interpolations using PolygonOps using DelaunayTriangulation using PolygonInbounds +using SymbolicIndexingInterface using StatsBase using InteractiveUtils const SAVE_FIGURE = false @@ -675,7 +676,7 @@ for results in (results_mle, results_near, results_int, results_par, results_nea @test ProfileLikelihood.get_other_mles(results, :λ, :K) == results.other_mles[(1, 2)] @test ProfileLikelihood.get_other_mles(results, 3, 1) == results.other_mles[(3, 1)] @test ProfileLikelihood.get_other_mles(results, :u₀, :λ) == results.other_mles[(3, 1)] - @test ProfileLikelihood.get_syms(results) == [:λ, :K, :u₀] + @test variable_symbols(ProfileLikelihood.get_syms(results)) == [:λ, :K, :u₀] @test ProfileLikelihood.get_syms(results, 1, 2) == (:λ, :K) @test ProfileLikelihood.get_syms(results, 3, 1) == (:u₀, :λ) @test ProfileLikelihood.profiled_parameters(results) == [(1, 2), (3, 1)] diff --git a/test/custom_hessian.jl b/test/custom_hessian.jl index 5885217..461d6ce 100644 --- a/test/custom_hessian.jl +++ b/test/custom_hessian.jl @@ -1,19 +1,18 @@ using Optimization using ProfileLikelihood -using Ipopt -using OptimizationMOI +using OptimizationOptimJL using ForwardDiff using Test - +using SymbolicIndexingInterface rosenbrock(x, p) = (1.0 - x[1])^2 + 100.0 * (x[2] - x[1]^2)^2 -_∇f = (G, u, p) -> begin +_∇f = (G, u, p) -> begin p = Float64[] _f = (x) -> rosenbrock(x, p) ForwardDiff.gradient!(G, _f, u) end -_Δf = (H, u, p) -> begin +_Δf = (H, u, p) -> begin p = Float64[] _f = (x) -> rosenbrock(x, p) ForwardDiff.hessian!(H, _f, u) @@ -22,39 +21,39 @@ end x0 = zeros(2) .+ 0.5 xnames = [:x1, :x2] optimization_function = Optimization.OptimizationFunction(rosenbrock; - grad = _∇f, - hess = _Δf, - syms=xnames) -prob = OptimizationProblem(optimization_function, x0, lb = [-1.0, -1.0], ub = [0.8, 0.8]) + grad=_∇f, + hess=_Δf, + sys=SymbolCache([:x1, :x2]; defaults=Dict(:x1 => 0.5, :x2 => 0.5))) +prob = OptimizationProblem(optimization_function, x0, lb=[-1.0, -1.0], ub=[0.8, 0.8]) _likelihood_problem = LikelihoodProblem{length(x0), - typeof(prob), - typeof(SciMLBase.NullParameters()), - typeof(prob.f), - typeof(x0), - typeof(xnames)}(prob, - SciMLBase.NullParameters(), - prob.f, - x0, - xnames) -sol = mle(_likelihood_problem, Ipopt.Optimizer()) + typeof(prob), + typeof(SciMLBase.NullParameters()), + typeof(prob.f), + typeof(x0), + typeof(ProfileLikelihood._to_symbolcache(xnames, x0))}(prob, + SciMLBase.NullParameters(), + prob.f, + x0, + ProfileLikelihood._to_symbolcache(xnames, x0)) +sol = mle(_likelihood_problem, Optim.LBFGS()) prof1 = profile(_likelihood_problem, sol) # Trusting the AD x0 = zeros(2) .+ 0.5 optimization_function = Optimization.OptimizationFunction(rosenbrock, Optimization.AutoForwardDiff(); - syms=xnames) -prob = OptimizationProblem(optimization_function, x0, lb = [-1.0, -1.0], ub = [0.8, 0.8]) + syms=xnames) +prob = OptimizationProblem(optimization_function, x0, lb=[-1.0, -1.0], ub=[0.8, 0.8]) _likelihood_problem = LikelihoodProblem{length(x0), - typeof(prob), - typeof(SciMLBase.NullParameters()), - typeof(prob.f), - typeof(x0), - typeof(xnames)}(prob, - SciMLBase.NullParameters(), - prob.f, - x0, - xnames) -sol = mle(_likelihood_problem, Ipopt.Optimizer()) + typeof(prob), + typeof(SciMLBase.NullParameters()), + typeof(prob.f), + typeof(x0), + typeof(ProfileLikelihood._to_symbolcache(xnames, x0))}(prob, + SciMLBase.NullParameters(), + prob.f, + x0, + ProfileLikelihood._to_symbolcache(xnames, x0)) + sol = mle(_likelihood_problem, Optim.LBFGS()) prof2 = profile(_likelihood_problem, sol) @test prof1.confidence_intervals == prof2.confidence_intervals \ No newline at end of file diff --git a/test/figures/regression_profiles_a.png b/test/figures/regression_profiles_a.png index 8aaa6d6..989b56e 100644 Binary files a/test/figures/regression_profiles_a.png and b/test/figures/regression_profiles_a.png differ diff --git a/test/figures/regression_profiles_b.png b/test/figures/regression_profiles_b.png index 7d56c94..492ba67 100644 Binary files a/test/figures/regression_profiles_b.png and b/test/figures/regression_profiles_b.png differ diff --git a/test/figures/regression_profiles_c.png b/test/figures/regression_profiles_c.png index 52ec79c..1779a70 100644 Binary files a/test/figures/regression_profiles_c.png and b/test/figures/regression_profiles_c.png differ diff --git a/test/figures/regression_profiles_d.png b/test/figures/regression_profiles_d.png index f06e37e..925949d 100644 Binary files a/test/figures/regression_profiles_d.png and b/test/figures/regression_profiles_d.png differ diff --git a/test/likelihood_problem.jl b/test/likelihood_problem.jl index 6ab1efe..773af49 100644 --- a/test/likelihood_problem.jl +++ b/test/likelihood_problem.jl @@ -1,6 +1,23 @@ using ..ProfileLikelihood using Optimization using OrdinaryDiffEq +using SymbolicIndexingInterface +using StructEquality +@struct_equal SymbolCache +@struct_equal OptimizationFunction + +@testset "_to_symbolcache" begin + sys1 = ProfileLikelihood._to_symbolcache(1:5, [2, 4, 3, 1, 5]) + sys2 = SymbolCache(1:5, defaults = Dict(1 => 2, 2 => 4, 3 => 3, 4 => 1, 5 => 5)) + @test sys1.variables == sys2.variables + @test sys1.defaults == sys2.defaults + sys1 = ProfileLikelihood._to_symbolcache([:a, :b, :c], [2.0, 3.4, 1.0]) + sys2 = SymbolCache([:a, :b, :c], defaults = Dict(:a => 2.0, :b => 3.4, :c => 1.0)) + @test sys1.variables == sys2.variables + @test sys1.defaults == sys2.defaults + sys = SymbolCache([:a, :b, :c]) + @test ProfileLikelihood._to_symbolcache(sys, [1, 2, 3]) === sys +end @testset "Test that we are correctly negating the likelihood" begin loglik = (θ, p) -> 2.0 @@ -17,19 +34,19 @@ end loglik = (θ, p) -> θ[1] * p[1] + θ[2] negloglik = ProfileLikelihood.negate_loglik(loglik) optf_1 = ProfileLikelihood.construct_optimisation_function(negloglik, 1:5) - @test optf_1 == OptimizationFunction(negloglik, SciMLBase.NoAD(); syms=1:5) + @test optf_1 == OptimizationFunction(negloglik, SciMLBase.NoAD(); sys=1:5) paramsym_vec = [:a, :sys] optf_2 = ProfileLikelihood.construct_optimisation_function(negloglik, 1:5; paramsyms=paramsym_vec) - @test optf_2 === OptimizationFunction(negloglik, SciMLBase.NoAD(); syms=1:5, paramsyms=paramsym_vec) + @test optf_2 == OptimizationFunction(negloglik, SciMLBase.NoAD(); sys=1:5, paramsyms=paramsym_vec) adtype = Optimization.AutoFiniteDiff() optf_3 = ProfileLikelihood.construct_optimisation_function(negloglik, 1:5; adtype=adtype, paramsyms=paramsym_vec) - @test optf_3 === OptimizationFunction(negloglik, adtype; syms=1:5, paramsyms=paramsym_vec) + @test optf_3 == OptimizationFunction(negloglik, adtype; sys=1:5, paramsyms=paramsym_vec) end @testset "Test the construction of the OptimizationProblem" begin - loglik = (θ, p) -> θ[1] * p[1] + θ[2] + loglik = (θ, p) -> θ[1] * p[1][1] + θ[2] negloglik = ProfileLikelihood.negate_loglik(loglik) θ₀ = rand(3) data = (rand(100), [:a, :b]) @@ -85,7 +102,7 @@ end @test ProfileLikelihood.get_θ₀(prob) == θ₀ == prob.θ₀ == prob.problem.u0 @test ProfileLikelihood.get_θ₀(prob, 1) == 5.0 @test ProfileLikelihood.get_θ₀(prob, 2) == 2.0 - @test ProfileLikelihood.get_syms(prob) == syms == prob.syms + @test ProfileLikelihood.get_syms(prob) == SymbolCache([:a, :b]; defaults = Dict(:a => 5.0, :b => 2.0)) == prob.problem.f.sys @test !ProfileLikelihood.has_upper_bounds(prob) @test !ProfileLikelihood.has_lower_bounds(prob) @test !ProfileLikelihood.finite_lower_bounds(prob) @@ -99,7 +116,7 @@ end @test ProfileLikelihood.get_data(prob) == prob.data @test ProfileLikelihood.get_log_likelihood_function(prob) == loglik @test ProfileLikelihood.get_θ₀(prob) == θ₀ == prob.θ₀ == prob.problem.u0 - @test ProfileLikelihood.get_syms(prob) == syms == prob.syms + @test ProfileLikelihood.get_syms(prob) == SymbolCache([:a, :b]; defaults = Dict(:a => 5.0, :b => 2.0)) == prob.problem.f.sys @test prob.problem.f.adtype isa Optimization.AutoFiniteDiff @test prob.problem.lb === nothing == ProfileLikelihood.get_lower_bounds(prob) @test prob.problem.ub === nothing == ProfileLikelihood.get_upper_bounds(prob) @@ -120,7 +137,7 @@ end @test ProfileLikelihood.get_data(prob) == data == prob.data @test ProfileLikelihood.get_log_likelihood_function(prob) == loglik @test ProfileLikelihood.get_θ₀(prob) == θ₀ == prob.θ₀ == prob.problem.u0 - @test ProfileLikelihood.get_syms(prob) == 1:2 + @test ProfileLikelihood.get_syms(prob) == SymbolCache([1, 2]; defaults = Dict(1 => 5.0, 2 => 2.0)) == prob.problem.f.sys @test prob.problem.f.adtype isa Optimization.AutoFiniteDiff @test prob.problem.lb == lb == ProfileLikelihood.get_lower_bounds(prob) @test prob.problem.ub == ub == ProfileLikelihood.get_upper_bounds(prob) @@ -141,7 +158,7 @@ end @test ProfileLikelihood.get_data(prob) == data == prob.data @test ProfileLikelihood.get_log_likelihood_function(prob) == loglik @test ProfileLikelihood.get_θ₀(prob) == θ₀ == prob.θ₀ == prob.problem.u0 - @test ProfileLikelihood.get_syms(prob) == 1:2 + @test ProfileLikelihood.get_syms(prob) == SymbolCache([1, 2]; defaults = Dict(1 => 5.0, 2 => 2.0)) == prob.problem.f.sys @test prob.problem.f.adtype isa Optimization.AutoFiniteDiff @test prob.problem.lb == lb == ProfileLikelihood.get_lower_bounds(prob) @test prob.problem.ub == ub == ProfileLikelihood.get_upper_bounds(prob) @@ -169,7 +186,7 @@ end @test ProfileLikelihood.get_data(prob) == SciMLBase.NullParameters() @test ProfileLikelihood.get_log_likelihood_function(prob).loglik == loglik @test ProfileLikelihood.get_θ₀(prob) == u₀ == prob.θ₀ == prob.problem.u0 - @test ProfileLikelihood.get_syms(prob) == [1] + @test ProfileLikelihood.get_syms(prob) == SymbolCache([1]; defaults = Dict(1 => 0.5)) == prob.problem.f.sys @test ProfileLikelihood.get_log_likelihood_function(prob).integrator.alg == ode_alg @test ProfileLikelihood.get_log_likelihood_function(prob).integrator.p == p @test ProfileLikelihood.get_log_likelihood_function(prob).integrator.opts.saveat.valtree == 0.25:0.25:1.0 @@ -197,7 +214,7 @@ end @test ProfileLikelihood.get_data(prob) == dat @test ProfileLikelihood.get_log_likelihood_function(prob).loglik == loglik @test ProfileLikelihood.get_θ₀(prob) == u₀ == prob.θ₀ == prob.problem.u0 - @test ProfileLikelihood.get_syms(prob) == syms + @test ProfileLikelihood.get_syms(prob) == SymbolCache([:u]; defaults = Dict(:u => 0.5)) == prob.problem.f.sys @test ProfileLikelihood.get_log_likelihood_function(prob).integrator.alg == init(ODEProblem(f, u₀, tspan, p), ode_alg).alg @test ProfileLikelihood.get_log_likelihood_function(prob).integrator.p == p @test ProfileLikelihood.get_log_likelihood_function(prob).integrator.opts.saveat.valtree == 0.25:0.25:1.0 @@ -219,10 +236,6 @@ end θ₀ = [5.0, 2.0] syms = [:a, :b] prob = ProfileLikelihood.LikelihoodProblem(loglik, θ₀; syms) - @test SciMLBase.sym_to_index(:a, prob) == 1 - @test SciMLBase.sym_to_index(:b, prob) == 2 - @test SciMLBase.sym_to_index(1, prob) == 1 - @test SciMLBase.sym_to_index(5, prob) == 5 @test prob[1] == 5.0 @test prob[2] == 2.0 @test prob[:a] == 5.0 @@ -230,7 +243,7 @@ end @test prob[[1, 2]] == [5.0, 2.0] @test prob[1:2] == [5.0, 2.0] @test prob[[:a, :b]] == [5.0, 2.0] - @test_throws BoundsError prob[:c] + @test_throws ErrorException prob[:c] end @testset "Test that we can replace the initial estimate" begin diff --git a/test/lotka_volterra_example.jl b/test/lotka_volterra_example.jl index 5d55bea..4c5967f 100644 --- a/test/lotka_volterra_example.jl +++ b/test/lotka_volterra_example.jl @@ -9,9 +9,10 @@ using PolygonOps using DelaunayTriangulation using StableRNGs using ReferenceTests +using SymbolicIndexingInterface ###################################################### -## Example V: Lotka-Volterra ODE +## Example IV: Lotka-Volterra ODE ###################################################### ## Step 1: Generate the data and define the likelihood α = 0.9 @@ -100,7 +101,11 @@ fig_path = normpath(@__DIR__, "..", "docs", "src", "figures") param_pairs = ((:α, :β), (:α, :a₀), (:α, :b₀), (:β, :a₀), (:β, :b₀), (:a₀, :b₀)) # Same as param_pairs = ((1, 2), (1, 3), (1, 4), (2, 3), (2, 4), (3, 4)) -integer_n = ntuple(i -> (SciMLBase.sym_to_index(param_pairs[i][1], prob), SciMLBase.sym_to_index(param_pairs[i][2], prob)), 6) +integer_n = ntuple(6) do i + i1 = variable_index(prob, param_pairs[i][1]) + i2 = variable_index(prob, param_pairs[i][2]) + (i1, i2) +end @test integer_n == ((1, 2), (1, 3), (1, 4), (2, 3), (2, 4), (3, 4)) == ProfileLikelihood.convert_symbol_tuples(param_pairs, prob) @test ((1, 2), (1, 3), (1, 4), (2, 3), (2, 4), (3, 4)) == ProfileLikelihood.convert_symbol_tuples(((1, 2), (1, 3), (1, 4), (2, 3), (2, 4), (3, 4)), prob) @test (1, 2) == ProfileLikelihood.convert_symbol_tuples((1, 2), prob) diff --git a/test/mle.jl b/test/mle.jl index 79c6188..1c9a035 100644 --- a/test/mle.jl +++ b/test/mle.jl @@ -63,14 +63,12 @@ end @test ProfileLikelihood.get_optimiser(sol) == sol.optimiser == (alg1, alg2, alg3, alg1, alg4) @test ProfileLikelihood.get_maximum(sol) == sol.maximum ≈ 2.7524752475247523 @test ProfileLikelihood.get_retcode(sol) == sol.retcode - @test ProfileLikelihood.get_syms(sol) == syms + @test ProfileLikelihood.get_syms(sol) == prob.syms @test ProfileLikelihood.number_of_parameters(prob) == 2 @test ProfileLikelihood.get_mle(sol, 1) == sol.mle[1] ≈ 0.5049504933896497 @test ProfileLikelihood.get_mle(sol, 2) == sol.mle[2] ≈ 0.5 @test sol[1] == sol.mle[1] @test sol[2] == sol.mle[2] - @test SciMLBase.sym_to_index(:α, sol) == 1 - @test SciMLBase.sym_to_index(:β, sol) == 2 @test sol[:α] == sol.mle[1] @test sol[:β] == sol.mle[2] @test sol[[:α, :β]] == sol.mle diff --git a/test/pde_example.jl b/test/pde_example.jl index 4fa6258..afca0df 100644 --- a/test/pde_example.jl +++ b/test/pde_example.jl @@ -20,8 +20,8 @@ T = 40.0 # final time mesh_points = LinRange(0, β, n) diffusion_function = (u, x, t, D) -> oftype(u, D[1]) reaction_function = (u, x, t, (λ, K)) -> λ[1] * u * (1 - u / K[1]) -lhs = Neumann(0.0) -rhs = Dirichlet(0.0) +lhs = MovingBoundaryProblems1D.Neumann(0.0) +rhs = MovingBoundaryProblems1D.Dirichlet(0.0) moving_boundary = Robin( (u, t, κ) -> (zero(u), oftype(u, -κ[1])), κ @@ -120,7 +120,6 @@ likprob = LikelihoodProblem( mb_loglik, θ₀, integrator; syms=syms, data=p, - f_kwargs=(adtype=AutoFiniteDiff(),), # see https://github.com/SciML/Optimization.jl/issues/548 prob_kwargs=(lb=lb, ub=ub)) ## Step 4: Parameter estimation diff --git a/test/problem_updates.jl b/test/problem_updates.jl index d86ac98..e7f6893 100644 --- a/test/problem_updates.jl +++ b/test/problem_updates.jl @@ -6,7 +6,7 @@ using InvertedIndices using ForwardDiff @testset "Test that we can correctly update the initial estimate" begin - loglik = (θ, p) -> θ[1] * p[1] + θ[2] + loglik = (θ, p) -> θ[1] * p[1][1] + θ[2] negloglik = ProfileLikelihood.negate_loglik(loglik) θ₀ = rand(3) data = (rand(100), [:a, :b]) @@ -14,16 +14,16 @@ using ForwardDiff θ₁ = [0.0, 1.0, 0.0] new_prob = ProfileLikelihood.update_initial_estimate(prob, θ₁) @test new_prob.u0 == θ₁ - sol = solve(prob, Opt(:LN_NELDERMEAD, 3)) + sol = solve(prob, Opt(:LN_NELDERMEAD, 3), maxtime = 0.1) sol.u .= 1.3 # fix nan new_prob_2 = ProfileLikelihood.update_initial_estimate(prob, sol) @test new_prob_2.u0 == sol.u @test prob.u0 == θ₀ # check aliasing + @test prob.u0 === θ₀ # check aliasing end - @testset "Test that we are correctly replacing the objective function" begin - loglik = (θ, p) -> θ[1] * p[1] + θ[2] + loglik = (θ, p) -> θ[1] * p[1][1] + θ[2] negloglik = ProfileLikelihood.negate_loglik(loglik) θ₀ = rand(3) data = (rand(100), [:a, :b]) @@ -36,7 +36,6 @@ end @inferred ProfileLikelihood.ProfileLikelihood.replace_objective_function(prob, new_obj, nothing, nothing) end - @testset "Test that we are correctly constructing a fixed function" begin loglik = (θ, p) -> θ[1] * p[1] + θ[2] negloglik = ProfileLikelihood.negate_loglik(loglik) diff --git a/test/profile_likelihood.jl b/test/profile_likelihood.jl index 164db89..1d54210 100644 --- a/test/profile_likelihood.jl +++ b/test/profile_likelihood.jl @@ -11,8 +11,11 @@ using OptimizationNLopt using FiniteVolumeMethod using InteractiveUtils using DelaunayTriangulation +using SymbolicIndexingInterface using Interpolations using CairoMakie +using StructEquality +@struct_equal SymbolCache include("templates.jl") @testset "Test that we can correctly construct the parameter ranges" begin @@ -178,13 +181,8 @@ end @test ProfileLikelihood.get_confidence_intervals(prof, :β₁) == prof.confidence_intervals[3] @test ProfileLikelihood.get_other_mles(prof) == prof.other_mles @test ProfileLikelihood.get_other_mles(prof, 3) == prof.other_mles[3] - @test ProfileLikelihood.get_syms(prof) == prob.syms == [:σ, :β₀, :β₁, :β₂, :β₃] + @test ProfileLikelihood.get_syms(prof) == prob.syms == SymbolCache([:σ, :β₀, :β₁, :β₂, :β₃], defaults=Dict([:σ, :β₀, :β₁, :β₂, :β₃] .=> θ₀)) @test ProfileLikelihood.get_syms(prof, 4) == :β₂ - @test SciMLBase.sym_to_index(:σ, prof) == 1 - @test SciMLBase.sym_to_index(:β₀, prof) == 2 - @test SciMLBase.sym_to_index(:β₁, prof) == 3 - @test SciMLBase.sym_to_index(:β₂, prof) == 4 - @test SciMLBase.sym_to_index(:β₃, prof) == 5 @test ProfileLikelihood.profiled_parameters(prof) == [1, 3] @test ProfileLikelihood.number_of_profiled_parameters(prof) == 2 end @@ -234,6 +232,7 @@ end left_grid = xmin:Δleft:sol[:σ] right_grid = sol[:σ]:Δright:xmax full_grid = [left_grid..., right_grid[2:end]...] + @test full_grid ≈ prof.parameter_values[1] xmin, xmax = extrema(get_parameter_values(prof, :β₁)) m = length(get_parameter_values(prof, :β₁)) @@ -242,6 +241,7 @@ end left_grid = xmin:Δleft:sol[:β₁] right_grid = sol[:β₁]:Δright:xmax full_grid = [left_grid..., right_grid[2:end]...] + @test full_grid ≈ prof.parameter_values[3] end @testset "Test that other_mles and parameter_values line up" begin @@ -439,7 +439,6 @@ end ub=[15.0, 15.0, 15.0, 15.0, 15.0]), syms=[:σ, :β₀, :β₁, :β₂, :β₃]) sol = mle(prob, Optim.LBFGS()) - prof = profile(prob, sol, [1, 3]) prof = profile(prob, sol, [1, 3]; resolution=[50000, 18000, 75000, 5000, 5000], min_steps=0) xmin, xmax = extrema(get_parameter_values(prof, :σ)) @@ -449,6 +448,7 @@ end left_grid = xmin:Δleft:sol[:σ] right_grid = sol[:σ]:Δright:xmax full_grid = [left_grid..., right_grid[2:end]...] + @test full_grid ≈ prof.parameter_values[1][begin:end-1] xmin, xmax = extrema(get_parameter_values(prof, :β₁)) m = length(get_parameter_values(prof, :β₁)) @@ -457,6 +457,7 @@ end left_grid = xmin:Δleft:sol[:β₁] right_grid = sol[:β₁]:Δright:xmax full_grid = [left_grid..., right_grid[2:end]...] + @test full_grid ≈ prof.parameter_values[3] end @testset "Threads" begin @@ -496,7 +497,7 @@ end ub=[15.0, 15.0, 15.0, 15.0, 15.0]), syms=[:σ, :β₀, :β₁, :β₂, :β₃]) sol = mle(prob, Optim.LBFGS()) - prof_serial = profile(prob, sol) + prof_serial = profile(prob, sol, parallel=false) prof_parallel = profile(prob, sol; parallel=true) @test all(i -> abs((prof_parallel.confidence_intervals[i].lower - prof_serial.confidence_intervals[i].lower) / prof_serial.confidence_intervals[i].lower) < 1e-2, 1:5) @test all(i -> abs((prof_parallel.confidence_intervals[i].upper - prof_serial.confidence_intervals[i].upper) / prof_serial.confidence_intervals[i].upper) < 1e-2, 1:5) @@ -867,8 +868,8 @@ end profile_vals = collect(noise_dat) other_mles = collect(other_mle_noise) reduced_mles = reduce(hcat, other_mles) - itp1 = interpolate(reduced_mles[1, :], BSpline(Cubic(Line(OnGrid())))) - itp2 = interpolate(reduced_mles[2, :], BSpline(Cubic(Line(OnGrid())))) + itp1 = interpolate(reduced_mles[1, :], Interpolations.BSpline(Cubic(Line(OnGrid())))) + itp2 = interpolate(reduced_mles[2, :], Interpolations.BSpline(Cubic(Line(OnGrid())))) spl1 = Interpolations.scale(itp1, param_vals) spl2 = Interpolations.scale(itp2, param_vals) param_vals = collect(param_vals) @@ -888,8 +889,8 @@ end profile_vals = collect(noise_dat) other_mles = collect(other_mle_noise) reduced_mles = reduce(hcat, other_mles) - itp1 = interpolate(reverse(reduced_mles[1, :]), BSpline(Cubic(Line(OnGrid())))) - itp2 = interpolate(reverse(reduced_mles[2, :]), BSpline(Cubic(Line(OnGrid())))) + itp1 = interpolate(reverse(reduced_mles[1, :]), Interpolations.BSpline(Cubic(Line(OnGrid())))) + itp2 = interpolate(reverse(reduced_mles[2, :]), Interpolations.BSpline(Cubic(Line(OnGrid())))) spl1 = Interpolations.scale(itp1, reverse(param_vals)) spl2 = Interpolations.scale(itp2, reverse(param_vals)) param_vals = collect(param_vals) @@ -960,9 +961,9 @@ end @time __prof = profile(prob, sol; alg=NLopt.LN_NELDERMEAD, parallel=false, min_steps=0, resolution=30, min_steps_fallback=:refine) - # F1 = plot_profiles(prof; show_points=true, spline=false) - # F2 = plot_profiles(_prof; show_points=true, spline=false) - # F3 = plot_profiles(__prof; show_points=true, spline=false) + # F1 = plot_profiles(prof; show_points=true, spline=false) + # F2 = plot_profiles(_prof; show_points=true, spline=false) + # F3 = plot_profiles(__prof; show_points=true, spline=false) prof1 = prof prof2 = _prof diff --git a/test/runtests.jl b/test/runtests.jl index 36e1972..f556bd3 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -6,15 +6,15 @@ using SafeTestsets @safetestset "Utilities" begin include("utils.jl") end - @safetestset "Custom Hessian" begin - include("custom_hessian.jl") - end @safetestset "Problem updates" begin include("problem_updates.jl") end @safetestset "LikelihoodProblem" begin include("likelihood_problem.jl") end + @safetestset "Custom Hessian" begin + include("custom_hessian.jl") + end @safetestset "MLE" begin include("mle.jl") end diff --git a/test/utils.jl b/test/utils.jl index 15e96d8..c0c6f1b 100644 --- a/test/utils.jl +++ b/test/utils.jl @@ -1,5 +1,6 @@ using ..ProfileLikelihood using Distributions +using ConcreteStructs @testset "number_type" begin x = 5.0 @@ -136,4 +137,21 @@ end @test ProfileLikelihood.take_val(true) == true @test ProfileLikelihood.take_val(Val(6)) == 6 @test ProfileLikelihood.take_val(Val(:interp)) == :interp +end + +@concrete struct FStruct2 + f + a + b + hess + grad + x + y + z + adtype +end +@testset "_to_namedtuple" begin + obj = FStruct2(1, 2, 3, 4, 5, 6, 7, 8, 9) + @test ProfileLikelihood._to_namedtuple(obj) == (a = 2, b = 3, x = 6, y = 7, z = 8) + @inferred ProfileLikelihood._to_namedtuple(obj) end \ No newline at end of file