我有这样的功能
function z=f(x,y)
if(x<1 & y <1)
z=0;
else
z=1;
end
end
还有一个脚本
x=0:0.1:2;
y=0:0.1:2;
[X,Y]=meshgrid(x,y);
Z=f(X,Y);
mesh(X,Y,Z);
运行此脚本时,出现此错误:Z 必须是矩阵,而不是标量或向量。
这是因为这里的 x 和 y 是两个数组,而不是标量值。如果我更改脚本可以运行
function f looks like this:
function z = f( x,y )
for i=1:size(x,2)
for j=1:size(y,2)
if(x(i)<1 & y(j)<1)
z(i,j)=0;
else
z(i,j)=1;
end
end
end
end
问题是新功能的运行速度比第一个慢得多。不知道这种情况下有没有对数组应用比较运算符,比如这个函数中使用的“.*”运算符
function z=f(x,y)
z=x.*y;
end
非常感谢你。