Skip to content

Commit 72dbca3

Browse files
authored
Merge pull request #1859 from JuliaRobotics/enh/qr_linear_solver
use QR for linear subsolver in parametric RLM
2 parents 64718ce + 8dac284 commit 72dbca3

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

src/parametric/services/ParametricManopt.jl

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -304,13 +304,19 @@ function covarianceFiniteDiff(M, jacF!::JacF_RLM!, p0)
304304
return Σ
305305
end
306306

307+
function qr_linear_subsolver!(sk, JJ, grad_f_c)
308+
sk .= qr(JJ) \ grad_f_c
309+
return sk
310+
end
311+
307312
function solve_RLM(
308313
fg,
309314
varlabels = ls(fg),
310315
faclabels = lsf(fg);
311316
is_sparse = true,
312317
finiteDiffCovariance = false,
313318
solveKey::Symbol = :parametric,
319+
linear_subsolver! = qr_linear_subsolver!,
314320
kwargs...
315321
)
316322

@@ -354,6 +360,7 @@ function solve_RLM(
354360
jacobian_tangent_basis = DefaultOrthogonalBasis(),
355361
initial_residual_values,
356362
initial_jacobian_f,
363+
linear_subsolver!,
357364
kwargs...
358365
)
359366

0 commit comments

Comments
 (0)