Converting values in eigenvector to rational forms that include square roots

11 vues (au cours des 30 derniers jours)
I tried computing the eigen vectors and eigen values for a 3x3 matrix, but the result is given in fractions after I used format rational. How can I change the format so as to get values in my matrix that include square root ? (i.e, sqrt(2)/2 )
Here are my codes:
A = [3 1 1 ;1 0 2;1 2 0];
>> [V,D] = eig(A)
V =
0.0000 0.5774 -0.8165
0.7071 -0.5774 -0.4082
-0.7071 -0.5774 -0.4082
D =
-2.0000 0 0
0 1.0000 0
0 0 4.0000
  1 commentaire
Walter Roberson
Walter Roberson le 14 Oct 2020
[V,D] = eig(sym(A))
if you have the symbolic toolbox.
V ./ [norm(V(:,1)), norm(V(:,2)), norm(V(:,3))]

Connectez-vous pour commenter.

Réponse acceptée

Prudhvi Peddagoni
Prudhvi Peddagoni le 19 Oct 2020
Modifié(e) : Walter Roberson le 19 Oct 2020
Hi,
you need to use sym command to convert matrix A to a symbolic variable. you can find the examples of sym command usage and the documentation here.
Hope this helps.
  3 commentaires
Prudhvi Peddagoni
Prudhvi Peddagoni le 20 Oct 2020
you can convert matrix A to symbolic matrix like this
A=sym(A);
then you can use this symbolic matrix to as the input for eig function.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Mathematics dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by