From f7e70e0ad9eb17e0274a5ac0e0fbb5423ccb3729 Mon Sep 17 00:00:00 2001 From: Jakob Asslaender Date: Sat, 25 Nov 2023 12:36:46 -0500 Subject: [PATCH] fix documentation --- src/FISTA.jl | 18 +++++++++--------- src/OptISTA.jl | 14 +++++++------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/src/FISTA.jl b/src/FISTA.jl index 2384c48f..0d313ce5 100644 --- a/src/FISTA.jl +++ b/src/FISTA.jl @@ -27,30 +27,30 @@ end creates a `FISTA` object for the system matrix `A`. # Arguments -* `A` - system matrix -* `x::vecT` - (optional) array with the same type and size as the solution +* `A` - system matrix +* `x::vecT` - (optional) array with the same type and size as the solution # Keywords -* `reg` - regularization term vector -* `normalizeReg` - regularization normalization scheme +* `reg` - regularization term vector +* `normalizeReg` - regularization normalization scheme * `AᴴA=A'*A` - specialized normal operator, default is `A'*A` * `ρ=0.95` - step size for gradient step -* `normalize_ρ=false` - normalize step size by the maximum eigenvalue of `AᴴA` +* `normalize_ρ=true` - normalize step size by the maximum eigenvalue of `AᴴA` * `t=1.0` - parameter for predictor-corrector step -* `relTol::Float64=1.e-5` - tolerance for stopping criterion +* `relTol::=eps(real(T))` - tolerance for stopping criterion * `iterations::Int64=50` - maximum number of iterations * `restart::Symbol=:none` - :none, :gradient options for restarting See also [`createLinearSolver`](@ref), [`solve`](@ref). """ -function FISTA(A, x::AbstractVector{T}=Vector{eltype(A)}(undef,size(A,2)); reg=L1Regularization(0) +function FISTA(A, x::AbstractVector{T}=Vector{eltype(A)}(undef,size(A,2)); reg=L1Regularization(zero(T)) + , normalizeReg=NoNormalization() , AᴴA=A'*A , ρ=0.95 , normalize_ρ=true , t=1 , relTol=eps(real(T)) , iterations=50 - , normalizeReg=NoNormalization() , restart = :none , verbose = false , kargs...) where {T} @@ -85,7 +85,7 @@ end init!(it::FISTA, b::vecT ; A=solver.A , x::vecT=similar(b,0) - , t::Float64=1.0) where T + , t::Number=1) (re-) initializes the FISTA iterator """ diff --git a/src/OptISTA.jl b/src/OptISTA.jl index e059c3ce..396a595e 100644 --- a/src/OptISTA.jl +++ b/src/OptISTA.jl @@ -35,20 +35,20 @@ It stores 2 extra intermediate variables the size of the image compared to FISTA Reference: - Uijeong Jang, Shuvomoy Das Gupta, Ernest K. Ryu, - "Computer-Assisted Design of Accelerated Composite + "Computer-Assisted Design of Accelerated Composite Optimization Methods: OptISTA," arXiv:2305.15704, 2023, [https://arxiv.org/abs/2305.15704] # Arguments -* `A` - system matrix -* `x::vecT` - array with the same type and size as the solution +* `A` - system matrix +* `x::vecT` - array with the same type and size as the solution # Keywords -* `reg` - regularization term vector -* `normalizeReg` - regularization normalization scheme +* `reg` - regularization term vector +* `normalizeReg` - regularization normalization scheme * `AᴴA=A'*A` - specialized normal operator, default is `A'*A` * `ρ=0.95` - step size for gradient step -* `normalize_ρ=false` - normalize step size by the maximum eigenvalue of `AᴴA` +* `normalize_ρ=true` - normalize step size by the maximum eigenvalue of `AᴴA` * `θ=1.0` - parameter for predictor-corrector step * `relTol::Float64=1.e-5` - tolerance for stopping criterion * `iterations::Int64=50` - maximum number of iterations @@ -56,13 +56,13 @@ Reference: See also [`createLinearSolver`](@ref), [`solve`](@ref). """ function OptISTA(A, x::AbstractVector{T}=Vector{eltype(A)}(undef,size(A,2)); reg=L1Regularization(zero(T)) + , normalizeReg=NoNormalization() , AᴴA=A'*A , ρ=0.95 , normalize_ρ=true , θ=1 , relTol=eps(real(T)) , iterations=50 - , normalizeReg=NoNormalization() , verbose = false , kargs...) where {T}