matlab怎么调用函数

如题所述

在matlab中,如果是matlab自带的函数,则可以按照该函数的格式直接调用,如果是自己编写的函数,可以将函数写在一个文件中,之后再主文件中调用。举例说明如下:
%
文件名为fun.m(注意:文件名需要与函数名一致)
function
y
=
fun(x)
y
=
x.^2;
下面开始编写主文件(文件名为main.m),并调用函数文件fun.m中的函数fun。
情况1:函数文件fun.m和主文件main.m在同一目录下,此时直接调用即可。
a
=
[1,
2,
3];
b
=
fun(a);
%
运行后,b=[1,
4,
9]
情况2:函数文件fun.m和主文件main.m在不同一目录下,此时需要将函数文件包含进来才可以调用fun函数。
addpath('directory');
%
其中,directory是函数文件fun.m的路径
a
=
[1,
2,
3];
b
=
fun(a);
%
运行后,b=[1,
4,
9]
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-01-10
%simpson.m
function
f=simpson(a,b,n)
h=(b-a)/n;
x=linspace(a,b,2*n+1);
y=feval(@fun,x);%一定用这种形式而不是y=feval(fun,x),谢谢啦
f=h/6*(y(1)+y(2*n+1)+2*sum(y(3:2:2*n-1))+4*sum(y(2:2:2*n)));
%fun.m
function
y=fun(x)
y=4./(1+x.^2);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
改成这样可以,直接保存为一个m文件,输入量中没必要搞个函数fun。
>>
simpson(1,10,10)
ans
=
2.7432e+000
相似回答