@@ -151,6 +151,8 @@ R2 = Euclidean(2)
151151
152152 opt = OptimizationManopt. AdaptiveRegularizationCubicOptimizer ()
153153
154+ # TODO : This autodiff currently provides a Hessian that seem to not procide a Hessian
155+ # ARC Fails but also AD before that warns. So it passes _some_ hessian but a wrong one, even in format
154156 optprob = OptimizationFunction (rosenbrock, AutoForwardDiff ())
155157 prob = OptimizationProblem (optprob, x0, p; manifold = R2)
156158
@@ -164,6 +166,8 @@ R2 = Euclidean(2)
164166
165167 opt = OptimizationManopt. TrustRegionsOptimizer ()
166168
169+ # TODO : This autodiff currently provides a Hessian that seem to not procide a Hessian
170+ # TR Fails but also AD before that warns. So it passes _some_ hessian but a wrong one, even in format
167171 optprob = OptimizationFunction (rosenbrock, AutoForwardDiff ())
168172 prob = OptimizationProblem (optprob, x0, p; manifold = R2)
169173
@@ -219,7 +223,6 @@ R2 = Euclidean(2)
219223 @test sol. u≈ q rtol= 1e-2
220224
221225 function closed_form_solution (M:: SymmetricPositiveDefinite , L, U, p, X)
222- q = copy (M, p)
223226 # extract p^1/2 and p^{-1/2}
224227 (p_sqrt_inv, p_sqrt) = Manifolds. spd_sqrt_and_sqrt_inv (p)
225228 # Compute D & Q
@@ -231,8 +234,7 @@ R2 = Euclidean(2)
231234 P = cholesky (Hermitian (Uprime - Lprime))
232235
233236 z = P. U' * D * P. U + Lprime
234- copyto! (M, q, p_sqrt * Q * z * Q' * p_sqrt)
235- return q
237+ return p_sqrt * Q * z * Q' * p_sqrt
236238 end
237239 N = m
238240 U = mean (data2)
@@ -243,7 +245,7 @@ R2 = Euclidean(2)
243245 prob = OptimizationProblem (optf, data2[1 ]; manifold = M)
244246
245247 @time sol = Optimization. solve (
246- prob, opt, sub_problem = (M, q, p, X) -> closed_form_solution! (M, q , L, U, p , X),
248+ prob, opt, sub_problem = (M, p, X) -> closed_form_solution (M, p , L, U, X),
247249 maxiters = 1000 )
248250 @test sol. u≈ q rtol= 1e-2
249251 end
0 commit comments