关于匿名函数
我设计了个小小的测试,关于匿名函数的,分开写错误,不分开写,就出结果,不知道原因,请假各位大虾。程序如下:不分开写:
>> clear all
>> f=;
>> d=arrayfun(@(f) quadl(@(t)f*sin(t),0,pi/4),f)
运行结果:
d =
0.2929 0.5858 0.8787 1.1716
分开写1:
>> clear all
>> f=;
>> y=@(t)f*sin(t);
>>d=arrayfun(@(f) quadl(y(t),0,pi/4),f)
结果:
Undefined function or variable 't'.
Error in @(f)quadl(y(t),0,pi/4)
分开写2:
>> clear all
>> f=;
>> y=@(t)f*sin(t);
>>d=arrayfun(@(f) quadl(,0,pi/4),f)
出错结果为:
Error using*
Inner matrix dimensions must agree.
Error in @(t)f*sin(t)
Error in quadl (line 63)
y = feval(f,x,varargin{:}); y = y(:).';
Error in @(f)quadl(y,0,pi/4)
我现在不知道上面错误的地方,但是我知道了用匿名函数正确的方法
>> clear all
>> f=;
>> y=@(t)f.*sin(t);
>> d=quadv(y,0,pi/4),f)
页:
[1]