matlab 中quadl函数调用

函数调用过程N=quadl(@func1,xf,xd,[],[],sp,xd,R);%精馏段理论板数N%函数定义functionf=func2(x,sp,xw,R1)%定... 函数调用过程N = quadl(@func1,xf,xd,[],[],sp,xd,R); % 精馏段理论板数N

%函数定义
function f = func2(x,sp,xw,R1) % 定义被积函数(提馏段)
y = fnval(sp,x);
f = 1./(y-x-(y-xw)/R1);
函数定义过程中有x、sp、xd、R 为什么quadl在调用时只向func中输入了sp、xd、R三个参数?
展开
 我来答
tianxiawulang
2015-03-18 · TA获得超过2.7万个赞
知道大有可为答主
回答量:4732
采纳率:89%
帮助的人:2573万
展开全部
类似quadl这类函数被称为“函数的函数”,也就是说,其输入参数本身是函数(可以是函数句柄,如本例的func1,也可以是函数名)。

quadl这类函数的运行过程中,会调用作为输入参数的那个函数(func1),而后者的第一个输入参数由quadl内部来提供。例如,进行积分时,需要根据一定的规则调整积分步长,产生不同的x来调用func1,直到满足误差要求。

而func1后面的那几个参数(sp、xd、R)称为附加参数(additional arguments),quadl函数本身不对这些参数做任何处理,只是原封不动地将其传递给func1。传递附加参数的做法早期主要靠这种方式,在7.0之后的版本中,更多的使用匿名函数或嵌套函数的机制实现附加参数的传递。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式