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!