state-space eigenvector matrix normalization

조회 수: 10 (최근 30일)
Jeff
Jeff 2017년 6월 16일
편집: Matt J 2017년 6월 16일
I am in a bit of a quagmire & seeking suggestions?
I have utilized the eig(A) command to find the eigenvalues & eigenvectors of a STATE SPACE matrix. If the determinant of the eigenvector matrix is NONZERO then presumably all of the solutions are considered independent. Unfortunately, a normalized matrix will render all of the elements with a magnitude less that UNITY. Finding the determinant of this matrix will yield a very small number. The quagmire I have what or how do I consider what is truly NONZERO vs identically zero?
I get values on order of 10^-20 which in a practical sense is considered ZERO, but in the situation of normalization I cannot be confident of that interpretation. What is the best strategy of determining significant figures of the determinant such that I can assess whether it is truly NONZERO?
Should I denormalize the matrix & if so how? Is there a command to denormalize a matrix? I have had not success finding a command to date.
Thanx 4 any assistance

답변 (1개)

Matt J
Matt J 2017년 6월 16일
편집: Matt J 2017년 6월 16일
You should never use det() to measure non-singularity of a matrix. You should use cond(), which is inherently normalized. If the condition number is super-huge, you should doubt the non-singularity of the matrix.
  댓글 수: 4
Jeff
Jeff 2017년 6월 16일
That will depend on just how linearly independent you need the matrix to be. Are you using the matrix to solve an equation? If so, how much error in the solution can you tolerate?
In essence I am solving a linear equation because that is what a state-space matrix is, correct?
The amount of error tolerance I am attempting to address. So I am questioning the significance of the condition number as opposed to the determinant of the eigenvector matrix.
Matt J
Matt J 2017년 6월 16일
편집: Matt J 2017년 6월 16일
No, a linear equation means you are solving something that looks like A*x=b. If b has error/noise e, then the error in the solution x will be magnified by cond(A), as described here.
Ultimately, though the issue is, why do you care if the matrix is non-singular? How does that affect the manipulations you are doing, and can you quantify the impact in terms of the condition number? If you can, then you can decide on a safe threshold for cond(A).

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Linear Algebra에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by