clc
clear
syms x y
f = x^3 -y^3 + 3*x^2 +3*y^2 -9*x;
df = jacobian(f);%求一阶偏导
d2f = jacobian(df);%求Hessian阵
[xx,yy] = solve(df)
xx = double(xx);
yy = double(yy);
for i = 1:length(xx)
a = subs(d2f,{x,y},{xx(i),yy(i)});
b = eig(a);
f = subs(f,{x,y},{xx(i),yy(i)});
f = double(f);
%求矩阵特征值
if all(b>0)
fprintf('(%f,%f)是极小值点,对应的极小值为%f\n',xx(i),yy(i),f);
elseif all(b<0)
fprintf('(%f,%f)是极大值点,对应的极大值为%f\n',xx(i),yy(i),f);
elseif any(b>0)&&any(b<0)
fprintf('(%f,%f)不是极值点\n',xx(i),yy(i));
else
fprintf('无法判断(%f,%f)是否是极值点\n',xx(i),yy(i));
end
end
为什么按照数学建模与算法这本书敲的程序得出的结果和书上不一样呢



