@@ -13,13 +13,13 @@ has_anisotropic_max_stepsize(M::ProductManifold) = any(has_anisotropic_max_steps
1313
1414An approximation of Hessian of a scalar function of the form ``B_0 = θ I``,
1515``B_{k+1} = B_k - W_k M_k W_k^{\m athrm{T}}``,
16- where ``\t heta > 0`` is an initial scaling guess.
17- Matrix ``M_k = \l eft(\b egin{smallmatrix}M_{11} & M_{21} ^{\m athrm{T}}\\ M_{21} & M_{22} \e nd{smallmatrix}\r ight)``
16+ where ``θ > 0`` is an initial scaling guess.
17+ Matrix ``M_k = \l eft(\b egin{smallmatrix}M₁₁ & M₂₁ ^{\m athrm{T}}\\ M₂₁ & M₂₂ \e nd{smallmatrix}\r ight)``
1818is stored using its blocks.
1919Blocks ``W_k`` are (implicitly) composed from `memory_y` and `memory_s` stored in `qn_du`
2020of type [`QuasiNewtonLimitedMemoryDirectionUpdate`](@ref).
2121
22- Initial scale ``\t heta `` is stored in the field `initial_scale` but if the memory isn't empty,
22+ Initial scale ``θ `` is stored in the field `initial_scale` but if the memory isn't empty,
2323the current scale is set to squared norm of $s_k$ divided by inner product of ``s_k`` and ``y_k``
2424where ``k`` is the oldest index for which the denominator is not equal to 0.
2525
@@ -210,21 +210,21 @@ function hessian_value(gh::QuasiNewtonLimitedMemoryBoxDirectionUpdate, M::Abstra
210210end
211211
212212@doc raw """
213- set_M_current_scale !(M::AbstractManifold, p, gh::QuasiNewtonLimitedMemoryBoxDirectionUpdate)
213+ update_current_scale !(M::AbstractManifold, p, gh::QuasiNewtonLimitedMemoryBoxDirectionUpdate)
214214
215215Refresh the scaling factor and blockwise Hessian approximation stored in `gh` using the
216216nonzero curvature pairs currently in memory.
217217
218218- Identifies the most recent index with nonzero ``ρ_i`` to scale the initial Hessian guess
219219 by ``ρ_i‖y_i‖^2 / θ``.
220220- Builds ``L_k`` and ``S_k^\t op S_k`` from the stored ``(s_i, y_i)`` pairs and updates the
221- block matrices ``M_{11} ``, ``M_{21} ``, and ``M_{22} `` via the blockwise inverse formula.
221+ block matrices ``M₁₁ ``, ``M₂₁ ``, and ``M₂₂ `` via the blockwise inverse formula.
222222- If all ``ρ_i`` vanish, resets `current_scale` to the inverse of `initial_scale` and
223223 clears the block matrices.
224224
225225Returns the mutated `gh`.
226226"""
227- function set_M_current_scale ! (M:: AbstractManifold , p, gh:: QuasiNewtonLimitedMemoryBoxDirectionUpdate )
227+ function update_current_scale ! (M:: AbstractManifold , p, gh:: QuasiNewtonLimitedMemoryBoxDirectionUpdate )
228228 m = length (gh. qn_du. memory_s)
229229 last_safe_index = - 1
230230 for i in eachindex (gh. qn_du. ρ)
@@ -329,7 +329,7 @@ function update_hessian!(
329329 )
330330 (capacity (gh. qn_du. memory_s) == 0 ) && return gh
331331 update_hessian! (gh. qn_du, mp, st, p_old, k)
332- set_M_current_scale ! (get_manifold (mp), get_iterate (st), gh)
332+ update_current_scale ! (get_manifold (mp), get_iterate (st), gh)
333333 return gh
334334end
335335
0 commit comments