宿州专业网站建设,东莞桥头网站设计,泉州网站建设公司首选公司,网站推广软件哪个好Matlab函数进阶#xff1a;使用匿名函数(Anonymous Function)和内嵌函数(Nested Function)处理多变量传递问题(Matlab 7.0以上)问题#xff1a;有一个多变量函数f(abcx),现需要分别在aa0bb0cc0和aa1bb1cc1的条件下对f(abcx)进行某一操作。此类问题常在数值积分时出现。解决方…Matlab函数进阶使用匿名函数(Anonymous Function)和内嵌函数(Nested Function)处理多变量传递问题(Matlab 7.0以上)问题有一个多变量函数f(abcx),现需要分别在aa0bb0cc0和aa1bb1cc1的条件下对f(abcx)进行某一操作。此类问题常在数值积分时出现。解决方案1使用全局变量可在主调函数和被调函数中分别将a,b,c声明为全局变量(globala b c)这时f通过全局变量传递abc,定义时可以只有一个参数x。2使用anonymous function3使用nested function下面举例说明anonymous function和nested function的使用。例对任意二次多项式ax2bxc进行数值积分(此处显然可以解析得到此例使用anonymousfunction做演示)解(1)使用匿名函数编写文件intpoly2.m如下functiony_intintpoly2(a,b,c)y_intquad((x)(poly2(a,b,c,x)),01);%此处利用matlab内部函%数quad(fun, x0,xt)进行积分%被积函数fun我们使用匿名函%数(x)(poly2(a,b,c,x))以便%将自变量限制为x.