LDL does not support complex symmetric matrices
Mostrar comentarios más antiguos
Given that you cannot factorize a complex symmetric matrix with LDL in MatLab, I was wondering if there was a particular reason? Is there some package which can perform this factorization?
Respuesta aceptada
Más respuestas (1)
David Goodmanson
el 6 de En. de 2022
Editada: David Goodmanson
el 7 de En. de 2022
1 voto
Hi Nathan,
the LDL decomposition works for hermitian matrices. In LDL the D matrix is hermitian, so
if A = L*D*L', then A' = L*D' *L' = L*D*L' = A, and A has to be hermitian.
But a symmetric complex matrix is not hermitian, so LDL won't work.
3 comentarios
Nathan Zhao
el 24 de En. de 2022
Yaroslav Urzhumov
el 19 de En. de 2023
David,
LDL for a symmetric matrix implies A=L*D*L.', where .' is the usual (rather than complex conjugate) transpose. You can easily see that this decomposition is a symmetric matrix - even if D is complex-valued. It's a different kind of decomposition.
EMCanuck1
el 18 de Feb. de 2025
I agree with Yaroslav. My work involves decomposing a symmetric complex matrix and A=L*D*L.' is valid. The fact that ldl() threw an error made me second-guess my derivation, but it is correct. What should the LDL be called for complex symmetric matrices, I wonder?
Categorías
Más información sobre Linear Algebra en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!