Regarding the elimination of zero complex terms from State Transition Matrix
    10 views (last 30 days)
  
       Show older comments
    
I have a Matrix A defined as 
A1  =   [-(1/2)*(1+(1/sqrt(2))) 1/4;-(1/2) -(1/2)*(1-(1/sqrt(2)))];
which is equivalent to
A2 = [-0.8536 0.2500; -0.5000 -0.1464];
But when I take eigenvalues in both cases I get different eigenvalues
>> eig(A1)
ans =
  -0.5000 + 0.0000i
  -0.5000 - 0.0000i
eigenvaules are repeated, but MATLAB considering these as distinct roots(Complex conjugate)
>> eig(A2)
ans =
   -0.5057
   -0.4943
because of truncation, roots seems to be Different.
I have no problem with A2 matrix. But I want the system to consider only real part of eigenvalues of A1 matrix. Because of +0.0000i and -0.0000i the equations which depend on eigenvalues of A is changing.
I have already used real(egg(A1)) but I wanted to Calculate the state transition matrix i.e. e^(At) 
syms t
phi = vpa(expm(A*t),4)
in this expression it should take those repeated roots of -0.5 and -0.5. But it is not taking.
So, please help me out.
Thank You.
0 Comments
Answers (2)
  madhan ravi
      
      
 on 13 Dec 2018
        
      Edited: madhan ravi
      
      
 on 13 Dec 2018
  
      The imaginary part is not zero: 
"Ideally, the eigenvalue decomposition satisfies the relationship. Since eig performs the decomposition using floating-point computations, then A*V can, at best, approach V*D. In other words, A*V - V*D is close to, but not exactly, 0." mentioned here
>> A1  =  [-(1/2)*(1+(1/sqrt(2))) 1/4;-(1/2) -(1/2)*(1-(1/sqrt(2)))];
   vpa(eig(A1))
ans =
 - 0.5 + 0.0000000064523920698794617994748209544899i
 - 0.5 - 0.0000000064523920698794617994748209544899i
>> 
3 Comments
See Also
Categories
				Find more on Linear Algebra in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
