Make an existing matrix symmetric

84 次查看(过去 30 天)
N/A
N/A 2016-10-28
Hi there,
I've have a function where I take a matrix M as an input and return a value based on if it's symmetric or not. I would like to extend this function by altering the input matrix to make it symmetric. How can I make an asymmetric matrix symmetric by altering it?
Thank you

回答(1 个)

Walter Roberson
Walter Roberson 2016-10-28
(M + M.')/2
This is a useful technical when you have values that are intended to be symmetric but which turn out not to be due to round-off error.
  2 个评论
N/A
N/A 2016-10-28
Thank you. As a solution, what I have done is M + M^T which is always symmetric.
Walter Roberson
Walter Roberson 2016-10-28
Consider that M+M.' will turn the identity matrix into a matrix that has 2 along the main diagonal. It will be symmetric, yes, but you are also changing the values of matrices that start out symmetric.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Operating on Diagonal Matrices 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by