MATLAB 定义函数
function
声明函数名、输入和输出。
语法
function [y1,...,yN] = myfun(x1,...,xM)
描述
表达式function [y1,…,yN] = myfun(x1,…,xM)声明了:
函数名:myfun;
函数接受的输入数据:x1,…,xM;
返回数据:y1,…,yN
该声明语句必须是函数的第一个可执行行。有效的函数名以字母字符开头,可以包含字母、数字或下划线。
保存函数
在只包含函数定义的函数文件中。文件的名称必须与文件中第一个函数的名称匹配。
在包含命令和函数定义的脚本文件中。函数必须位于文件的末尾。脚本文件不能与文件中的函数同名。R2016b或更高版本的脚本支持函数。
文件可以包含多个本地函数或嵌套函数。为了可读性,使用end关键字来表示文件中每个函数的结尾。end关键字是必需的,当:
- 文件中的任何函数都包含一个嵌套函数。
- 该函数是函数文件中的本地函数,文件中的任何本地函数都使用end关键字。
- 该函数是脚本文件中的本地函数。
单输出函数
在名为average.m的文件中定义一个函数,接受输入向量,计算值的平均值,并返回单个结果。
average.m:
function ave = average(x)
ave = sum(x(:))/numel(x);
end
调用函数:
z = 1:99;
ave = average(z) % 调用average函数
ave =
50
多输出函数
在名为stat.m的文件中定义一个函数,其返回输入向量的平均值和标准偏差。
stat.m:
function [m,s] = stat(x)
n = length(x);
m = sum(x)/n;
s = sqrt(sum((x-m).^2/n));
end
从命令行调用函数:
values = [12.7, 45.4, 98.9, 26.6, 53.1];
[ave,stdev] = stat(values)
% 结果
ave =
47.3400
stdev =
29.4124

关注公众号,获取一手资讯
“ MATLAB 定义函数 ” comments 0