diff --git a/Project.toml b/Project.toml index a851f59..4afc840 100644 --- a/Project.toml +++ b/Project.toml @@ -16,12 +16,12 @@ Stopping = "c4fe5a9e-e7fb-5c3d-89d5-7f405ab2214f" StoppingInterface = "53949629-e8ff-437b-b6e7-14da1a85bf25" [compat] -Krylov = "^0.8.2, 0.9" -LinearOperators = "1, 2" -NLPModels = "0.18, 0.19, 0.20, 0.21" -SolverCore = "0.2, 0.3" -SolverTools = "^0.8.8, 0.9" -SparseMatricesCOO = "0.1, 0.2" -Stopping = "0.6.4" -StoppingInterface = "0.3, 0.4, 0.5" -julia = "^1.10" +Krylov = "0.10" +LinearOperators = "2" +NLPModels = "0.21.5" +SolverCore = "0.3" +SolverTools = "0.9" +SparseMatricesCOO = "0.2.4" +Stopping = "0.6.5" +StoppingInterface = "0.5.4" +julia = "1.10" diff --git a/docs/Project.toml b/docs/Project.toml index bcddf4b..0600805 100644 --- a/docs/Project.toml +++ b/docs/Project.toml @@ -15,17 +15,17 @@ SolverBenchmark = "581a75fa-a23a-52d0-a590-d6201de2218a" SolverCore = "ff4d7338-4cf1-434d-91df-b86cb86fb843" [compat] -ADNLPModels = "0.7" -CUTEst = "0.13" +ADNLPModels = "0.8" +CUTEst = "1.3.1" DataFrames = "1" Documenter = "0.27" GR = "0.72" JLD2 = "0.4" -JSOSolvers = "0.11" -Krylov = "0.9" -NLPModels = "0.20" +JSOSolvers = "0.14" +Krylov = "0.10" +NLPModels = "0.21" NLPModelsIpopt = "0.10" -OptimizationProblems = "0.7" +OptimizationProblems = "0.9" Plots = "1" -SolverBenchmark = "0.5" +SolverBenchmark = "0.6" SolverCore = "0.3" diff --git a/docs/src/3-doityourself.md b/docs/src/3-doityourself.md index b927575..4c76fe5 100644 --- a/docs/src/3-doityourself.md +++ b/docs/src/3-doityourself.md @@ -33,7 +33,7 @@ mutable struct PDataST{S,T} <: AdaptiveRegularization.TPData{T} cgrtol # Relative tolerance for `cg_lanczos` OK::Bool # Mandatory: preprocess success - solver::CgSolver # Memory pre-allocation for `cg_lanczos` + solver::CgWorkspace # Memory pre-allocation for `cg_lanczos` end ``` diff --git a/src/AdaptiveRegularization.jl b/src/AdaptiveRegularization.jl index 829b476..f36df17 100644 --- a/src/AdaptiveRegularization.jl +++ b/src/AdaptiveRegularization.jl @@ -7,7 +7,8 @@ using Krylov, LinearOperators, NLPModels, SparseMatricesCOO, SolverCore, SolverT # Stopping using Stopping, StoppingInterface -using Krylov: Krylov, CgLanczosShiftSolver, CgSolver, CglsSolver, LsqrSolver, cg!, cg_lanczos_shift! +using Krylov: Krylov, cg!, cg_lanczos_shift! +using Krylov: CgLanczosShiftWorkspace, CgWorkspace, CglsWorkspace, LsqrWorkspace, krylov_solve! using LinearAlgebra: LinearAlgebra, Symmetric, mul!, norm using LinearOperators: LinearOperators, LinearOperator using NLPModels: diff --git a/src/SolveModel/SolveModelNLSST_TR.jl b/src/SolveModel/SolveModelNLSST_TR.jl index d3dc62f..4ecd1b8 100644 --- a/src/SolveModel/SolveModelNLSST_TR.jl +++ b/src/SolveModel/SolveModelNLSST_TR.jl @@ -19,7 +19,7 @@ function solve_model!( cgrtol = PData.cgrtol(ζ, ξ, maxtol, mintol, norm_∇f) solver = PData.solver - Krylov.solve!( + krylov_solve!( solver, Jx, Fx, diff --git a/src/utils/pdata_struct.jl b/src/utils/pdata_struct.jl index 82d2bba..91c9caf 100644 --- a/src/utils/pdata_struct.jl +++ b/src/utils/pdata_struct.jl @@ -68,7 +68,7 @@ mutable struct PDataKARC{S, T, Fatol, Frtol} <: PDataIter{T} norm_dirs::Array{T, 1} # norms of xShifts OK::Bool # preprocess success - solver::CgLanczosShiftSolver{T, T, S} + solver::CgLanczosShiftWorkspace{T, T, S} end function PDataKARC( @@ -95,7 +95,7 @@ function PDataKARC( end norm_dirs = S(undef, nshifts) OK = true - solver = CgLanczosShiftSolver(n, n, nshifts, S) + solver = CgLanczosShiftWorkspace(n, n, nshifts, S) return PDataKARC( d, λ, @@ -139,7 +139,7 @@ mutable struct PDataTRK{S, T, Fatol, Frtol} <: PDataIter{T} norm_dirs::Array{T, 1} # norms of xShifts OK::Bool # preprocess success - solver::CgLanczosShiftSolver{T, T, S} + solver::CgLanczosShiftWorkspace{T, T, S} end function PDataTRK( @@ -166,7 +166,7 @@ function PDataTRK( end norm_dirs = S(undef, nshifts) OK = true - solver = CgLanczosShiftSolver(n, n, nshifts, S) + solver = CgLanczosShiftWorkspace(n, n, nshifts, S) return PDataTRK( d, λ, @@ -202,7 +202,7 @@ mutable struct PDataST{S, T, Fatol, Frtol} <: PDataIter{T} cgrtol::Frtol OK::Bool # preprocess success - solver::CgSolver{T, T, S} + solver::CgWorkspace{T, T, S} end function PDataST( @@ -220,7 +220,7 @@ function PDataST( d = S(undef, n) λ = zero(T) OK = true - solver = CgSolver(n, n, S) + solver = CgWorkspace(n, n, S) return PDataST(d, λ, ζ, ξ, maxtol, mintol, cgatol, cgrtol, OK, solver) end @@ -239,7 +239,7 @@ mutable struct PDataNLSST{S, T, Fatol, Frtol} <: PDataIterLS{T} cgrtol::Frtol OK::Bool # preprocess success - solver::Union{CglsSolver{T, T, S}, LsqrSolver{T, T, S}} + solver::Union{CglsWorkspace{T, T, S}, LsqrWorkspace{T, T, S}} end function PDataNLSST( @@ -260,9 +260,9 @@ function PDataNLSST( λ = zero(T) OK = true solver = if solver_method == :cgls - CglsSolver(m, n, S) + CglsWorkspace(m, n, S) else - LsqrSolver(m, n, S) + LsqrWorkspace(m, n, S) end return PDataNLSST(d, λ, ζ, ξ, maxtol, mintol, cgatol, cgrtol, OK, solver) end diff --git a/test/Project.toml b/test/Project.toml index 4d6345c..981246d 100644 --- a/test/Project.toml +++ b/test/Project.toml @@ -17,7 +17,7 @@ Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40" [compat] ADNLPModels = "0.8" -Krylov = "0.9" +Krylov = "0.10" LinearOperators = "2" NLPModels = "0.21" NLPModelsTest = "0.10" @@ -26,6 +26,6 @@ SolverCore = "0.3" SolverTest = "0.3" SolverTools = "0.9" SparseMatricesCOO = "0.2" -Stopping = "0.6.4" +Stopping = "0.6" StoppingInterface = "0.5" -julia = "^1.6" +julia = "^1.10"