MATLAB 定义函数


function

声明函数名、输入和输出。


语法


function [y1,...,yN] = myfun(x1,...,xM)

描述

表达式function [y1,…,yN] = myfun(x1,…,xM)声明了:

该声明语句必须是函数的第一个可执行行。有效的函数名以字母字符开头,可以包含字母、数字或下划线。


保存函数

在只包含函数定义的函数文件中。文件的名称必须与文件中第一个函数的名称匹配。

在包含命令和函数定义的脚本文件中。函数必须位于文件的末尾。脚本文件不能与文件中的函数同名。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

评论/回复

电子邮件地址不会被公开。 必填项已用*标注