MATLAB特征值从头开始

时间:2018-02-10 16:14:15

标签: matlab

我对MATLAB不太熟悉,我刚刚开始使用它,并且需要帮助修复我已经解决的一些问题。

a = input('Skriv inn en verdi for a: ');
b = input('Skriv inn en verdi for b: ');
c = input('skriv inn en verdi for c: ');
d = input('Skriv inn en verdi for d: ');
 A = [a b; c d]

 %Tester om matrisen er rektangulær
 [na, ma] = size(A);
 if na ~= ma
    disp('ERROR'); 
    return
 end

syms lambda
det =((A(1,1)-lambda)*(A(2,2)-lambda))-(A(1,2)*A(2,1))

 %Currently under development
 e1 = (t + sqrt(t^2 - 4*n*d))/2;
 e2 = (t - sqrt(t^2 - 4*n*d))/2;
if A ~= 0
   x1 = [a-e1; b];

end

当我输入1作为b c的值时,我得到了这个

Skriv inn en verdi for a: 1
Skriv inn en verdi for b: 1
skriv inn en verdi for c: 1
Skriv inn en verdi for d: 1

A =

 1     1
 1     1


det =

(lambda - 1)^2 - 1

我希望它写成lambda ^ 2 + 2lambda + - (c)= 0(我不知道如何将整个等式设为= 0

1 个答案:

答案 0 :(得分:2)

要将(lambda - 1)^2 - 1重写为lambda^2 + 2lambda +- (c),您可以使用expand。如果您希望能够以等式[{1}}的形式与det进一步合作,那么您需要一个双lambda^2 + 2lambda +- (c) = 0

=

打印时,还会有一个双det = expand(((A(1,1)-lambda)*(A(2,2)-lambda))-(A(1,2)*A(2,1))) == 0 。如果您需要=仅用于打印目的,则可以使用:

det