Converting values in eigenvector to rational forms that include square roots

12 ビュー (過去 30 日間)
Randy Chen
Randy Chen 2020 年 10 月 14 日
編集済み: Walter Roberson 2020 年 10 月 20 日
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 件のコメント
Walter Roberson
Walter Roberson 2020 年 10 月 14 日
[V,D] = eig(sym(A))
if you have the symbolic toolbox.
V ./ [norm(V(:,1)), norm(V(:,2)), norm(V(:,3))]

サインインしてコメントする。

採用された回答

Prudhvi Peddagoni
Prudhvi Peddagoni 2020 年 10 月 19 日
編集済み: Walter Roberson 2020 年 10 月 19 日
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 件のコメント
Prudhvi Peddagoni
Prudhvi Peddagoni 2020 年 10 月 20 日
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.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLinear Algebra についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by