Ask Your Question

Bug in eigenmatrix command?

asked 2016-04-12 19:22:23 +0200

anonymous user


updated 2023-01-09 23:59:39 +0200

tmonteil gravatar image

I'm new to sage, so this might be my bad, but I think there is a mismatch between complex conjugate eigevector/values in what the eigenmatrix_right() returns:

In my case:

J = matrix(CDF, [[-2.53634347567,  2.04801738686, -0.0, -62.166145304], [ 0.7, -0.6, 0.0, 0.0], [0.547271128842, 0.0, -0.3015, -21.7532081652], [0.0, 0.0, 0.3, -0.4]])
D, P = J.eigenmatrix_right()

D has two (almost) purely imaginary complex conjugate eigenvalues. I thought

A1 = J * P


A2 =  P * D

should be identical, but the complex conjugate eigenvalues are interchanged, so two columns in A1 and A2 differ by a multiple of (-1). In my case things work ok if I interchange D[1][1] and D[2][2].

Am I missing something?

edit retag flag offensive close merge delete


I think there is something odd going on here. In Octave in the Jupyter notebook in SageMathCloud, I am getting what you expected; that is, JP = PD. The real part of the entries of P in Sage are negatives of the real part of the entries of P in Octave.

calc314 gravatar imagecalc314 ( 2016-04-13 16:19:15 +0200 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2016-04-14 00:19:52 +0200

tmonteil gravatar image

This definitely looks like a bug. Thanks for reporting ! It is now trac ticket 20439.

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower


Asked: 2016-04-12 19:22:23 +0200

Seen: 420 times

Last updated: Apr 14 '16