Converting values in eigenvector to rational forms that include square roots
12 ビュー (過去 30 日間)
古いコメントを表示
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
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
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
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.
Walter Roberson
2020 年 10 月 20 日
編集済み: Walter Roberson
2020 年 10 月 20 日
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Linear Algebra についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!