@@ -173,13 +173,15 @@ kwargs_usymlqr = (:transfer_to_usymcg, :M, :N, :ldiv, :atol, :rtol, :itmax, :tim
173173    iter =  0 
174174    itmax ==  0  &&  (itmax =  n+ m)
175175
176-     #  Initial solutions x₀ and y₀.
177-     xₖ .=  zero (T)
178-     yₖ .=  zero (T)
176+     #  Initial solutions r₀, x₀, y₀ and z₀.
177+     @kfill! (rₖ, zero (FC))
178+     @kfill! (xₖ, zero (FC))
179+     @kfill! (yₖ, zero (FC))
180+     @kfill! (zₖ, zero (FC))
179181
180182    #  Initialize preconditioned orthogonal tridiagonalization process.
181-     M⁻¹uₖ₋₁ . =   zero (T )  #  u₀ = 0
182-     N⁻¹vₖ₋₁ . =   zero (T )  #  v₀ = 0
183+     @kfill! ( M⁻¹uₖ₋₁,  zero (FC) )  #  u₀ = 0
184+     @kfill! ( N⁻¹vₖ₋₁,  zero (FC) )  #  v₀ = 0
183185
184186    #  [ I   A ] [ xₖ ] = [ b -   Δx - AΔy ] = [ b₀ ]
185187    #  [ Aᴴ    ] [ yₖ ]   [ c - AᴴΔx       ]   [ c₀ ]
@@ -220,10 +222,10 @@ kwargs_usymlqr = (:transfer_to_usymcg, :M, :N, :ldiv, :atol, :rtol, :itmax, :tim
220222
221223    cₖ₋₂ =  cₖ₋₁ =  cₖ =  one (T)    #  Givens cosines used for the QR factorization of Tₖ₊₁.ₖ
222224    sₖ₋₂ =  sₖ₋₁ =  sₖ =  zero (FC)  #  Givens sines used for the QR factorization of Tₖ₊₁.ₖ
223-     wₖ₋₂ . =   zero (FC)              #  Column k-2 of Wₖ = Vₖ(Rₖ)⁻¹
224-     wₖ₋₁ . =   zero (FC)              #  Column k-1 of Wₖ = Vₖ(Rₖ)⁻¹
225+     @kfill! ( wₖ₋₂,  zero (FC))       #  Column k-2 of Wₖ = Vₖ(Rₖ)⁻¹
226+     @kfill! ( wₖ₋₁,  zero (FC))       #  Column k-1 of Wₖ = Vₖ(Rₖ)⁻¹
225227    ϕbarₖ =  βₖ                   #  ϕbarₖ is the last component of f̄ₖ = (Qₖ)ᴴβ₁e₁
226-     d̅ . =   zero (FC)                 #  Last column of D̅ₖ = UₖQₖ
228+     @kfill! (d̅,  zero (FC))          #  Last column of D̅ₖ = UₖQₖ
227229    ηₖ₋₁ =  ηbarₖ =  zero (FC)      #  ηₖ₋₁ and ηbarₖ are the last components of h̄ₖ = (Rₖ)⁻ᵀγ₁e₁
228230    ηₖ₋₂ =  θₖ =  zero (FC)         #  ζₖ₋₂ and θₖ are used to update ηₖ₋₁ and ηbarₖ
229231    δbarₖ₋₁ =  δbarₖ =  zero (FC)   #  Coefficients of Rₖ₋₁ and Rₖ modified over the course of two iterations
0 commit comments