src/AlgorithmDualScaling.jl

changeset 35
74b1a9f0c35e
parent 26
ccd22bbbb02f
--- a/src/AlgorithmDualScaling.jl	Thu Apr 25 11:16:24 2024 -0500
+++ b/src/AlgorithmDualScaling.jl	Thu Apr 25 11:14:41 2024 -0500
@@ -51,15 +51,16 @@
                iterate = AlgTools.simple_iterate,
                params::NamedTuple) where DisplacementT
 
-    ################################                                        
+    ################################
     # Extract and set up parameters
-    ################################                    
+    ################################
 
     α, ρ = params.α, params.ρ
     R_K² = ∇₂_norm₂₂_est²
     γ = 1.0
     Λ = params.Λ
     τ₀, σ₀ = params.τ₀, params.σ₀
+    ds = DualScaling(params.ds_exponent, params.ds_threshold)
 
     τ = τ₀/γ
     @assert(1+γ*τ ≥ Λ)
@@ -91,7 +92,7 @@
             init_data = false
         end
 
-        pdflow!(x, Δx, y, Δy, v_known, DualScaling())
+        pdflow!(x, Δx, y, Δy, v_known, ds)
 
         ############
         # PDPS step
@@ -108,7 +109,7 @@
         ################################
         # Give function value if needed
         ################################
-        v = verbose() do            
+        v = verbose() do
             ∇₂!(Δy, x)
             value = norm₂²(b-x)/2 + params.α*γnorm₂₁(Δy, params.ρ)
             value, x, [NaN, NaN], nothing

mercurial