文档

localfunctions

在MATLAB函数处理所有本地函数文件

语法

fcns = localfunctions

描述

例子

fcns = localfunctions返回一个函数处理单元阵列,fcns所有本地函数在当前文件。

你不能定义本地函数上下文中的命令行或匿名函数,所以当你打电话localfunctions从这些情况下,你会得到一个空单元数组。细胞内的数组,localfunctions返回的函数以一个未定义的顺序处理。

例子

全部折叠

创建以下函数在一个文件中,computeEllipseVals.m在你的工作文件夹。函数返回一个与处理单元阵列,当地所有的功能。

函数跳频= computeEllipseVals fh = localfunctions;结束函数f = computeFocus (a, b) f = sqrt (^ 2 b ^ 2);结束函数e = computeEccentricity (a, b) f = computeFocus (a, b);e = f / a;结束函数ae = computeArea (a, b) ae =π* a * b;结束

在命令提示符下,调用函数来得到一个单元阵列处理本地函数。

跳频= computeEllipseVals
跳频= 3×1单元阵列@computeFocus @computeEccentricity @computeArea

调用本地函数利用其处理计算椭圆的面积。的computeArea函数处理单元阵列中是第三个元素。

跳频{3}(3,1)
ans = 9.4248

R2016b,可以在脚本中包含本地函数。因此,您可以使用localfunctions处理函数来创建函数,你可以调用的脚本或命令提示符。

创建以下脚本在一个文件中,mystats.m在你的工作文件夹。脚本创建了一个与处理单元阵列,当地所有的功能。

x = [1 2 3 4 5 6 7 8 9 10 0 2];avg = mymean (x)跳频= localfunctions;地中海= fh {2} (x)%相当于地中海= mymedian (x, n)函数一个= mymean (v) n =长度(v);一个= (v) / n;结束函数m = mymedian (v) n =长度(v);w = (v)进行排序;如果快速眼动(n, 2) = = 1 m = w ((n + 1) / 2);其他的m = (w (n / 2) + w (n / 2 + 1) / 2;结束结束

运行脚本。MATLAB®计算平均通过直接调用mymean本地函数和平均通过调用mymedian本地函数通过一个函数处理。

mystats
地中海avg = 4.4167 = 4.5000

在命令提示符处,调用mymean本地函数利用其处理。变量的脚本可以在命令提示符。的mymean函数句柄细胞数组中的第一个元素。

x2 = [1 1 2 6 24 120 720 5040];跳频avg2 = fh {2} (x2)
跳频= 2×1单元阵列@mymean @mymedian avg2 = 15

另请参阅

主题

介绍了R2013b

这个主题有帮助吗?