function DrawRastrigin()
% 绘制Rastrigin函数图形
syms x;
x = [- 5 : 0.05 : 5 ];
y = sum(x.^2 - 10.*cos(2.*pi.*x) + 10);
[X,Y] = meshgrid(x,y);
[row,col] = size(X);
for l = 1 :col
for h = 1 :row
z(h,l) = Rastrigin([X(h,l),Y(h,l)]);
end
end
surf(X,Y,z);
shading interp
你调用函数的类型和函数定义的类型不匹配,检查下,是否是double