MATLAB如何定义函数

如题所述

自定义函数的途径:M文件函数(M file function)在线函数(Inline Function)1.M文件函数范例function c=myadd(a,b)%这里可以写函数的使用说明,前面以%开头%在工作区中,help myadd将显示此处的说明c=a+b;%end %非必须的第一行function告诉Matlab这是一个函数,a,b是输入,c是输出,myadd是函数名。以m文件定义的函数必须保存为函数名的形式,上例中,函数应保存为myadd.m。要使用myadd函数,该函数必须在Matlab的搜索路径中。调用方式:在Matlab命令符后输入a=1;b=2;c=myadd(a,b)关于m文件定义函数还有许多的说明,暂时略去。。。2.在线函数(Inline Function)通常作为参数传递给另外一个函数。比如fminsearch,lsqcurvefit等函数需要以函数作为参数。在线函数从字符串表达式创建函数,例如:f=inline('x.^2','x');创建了函数f(x)=x^2。要计算f(3),在工作区输入f(3)即可。f([2 3 4])计算在x=2 3 4时的值f=inline('x+y','x','y')创建了二元函数f(x,y)=x+y,工作区输入f(2,3)计算2+3,等同于feval_r(f,2,3)。函数句柄=@(变量名) 函数表达式例如:f=@(x) x.^2定义了函数f(x)=x^2,f(2)计算在x=2处的值。f(2) %计算时引用了变量aa=0;f(2) %仍然引用的是a=2f=@sin %f(x)=sin(x)f(pi/2) %sin(pi/2)functions(f) %查看函数信息利用单元数组可以创建多个函数的句柄,例如f={@sin @cos}f{1}(pi/2) %计算sin(pi/2)函数句柄的另一个重要特征是可以用来表示子函数、私有函数和嵌套函数。
温馨提示:答案为网友推荐,仅供参考
相似回答