当solve解显示有root形式的方程解,可以用vpa()函数命令求出方程的数值解。具体操作过程为
>> syms x
>> s=solve(det([5*x 2 1;-1 4*x 2;2 -3 10*x])==0,x)
>> s=vpa(s)
从运算结果,可以看到方程的实数解为-0.21474642157167318650910503113932
请参考以下Matlab代码。注意应用solve()函数的格式。例如solve(f(x)=0,x)可以简写成以下形式:solve(f(x))
运行如下Matlab代码:
% ==================
syms x;
solve(det([5*x 2 1; -1 4*x 2; 2 -3 10*x]))
eval(ans)
%====================
运行结果如下:
ans =
-0.2147
0.1074 + 0.4946i
0.1074 - 0.4946i
clear;clc;
syms x
solve(det([5*x 2 1;-1 4*x 2;2 -3 10*x])==0,x)
A=solve(det([5*x 2 1;-1 4*x 2;2 -3 10*x])==0,x, 'MaxDegree', 3)
vpa(A)
double(A)
请参考以下Matlab代码。注意应用solve()函数的格式。例如solve(f(x)=0,x)可以简写成以下形式:solve(f(x))
运行如下Matlab代码:
% ==================
syms x;
solve(det([5*x 2 1; -1 4*x 2; 2 -3 10*x]))
eval(ans)
%====================
运行结果如下:
ans =
-0.2147
0.1074 + 0.4946i
0.1074 - 0.4946i
eval(ans)