1、原文地址:( Matlab 基本知识 连载之六) M 脚本文件和 M 函数文件、函数句柄(转,介绍的不错)m 文件分两种:函数和脚本。1 、 matlab script file:脚本文件没有输入输出,对工作空间(workspace)中的变量进行操作。任何可执行的matlab 命令都可以写入脚本文件。先来看一个简单的例子:例 1: 产生一个20 元素的一维随机数组并画出。解:新建一个m文件命名为randplt.m(或者任何你喜欢的名字),在其中加入如下 两行代码:data=randn(1,20);plot(data);保存后选择debug/run菜单或按F5键运行,观察workspace中多出
2、了一个变 量 data。键在快捷菜单中选择creat M file 来快速创建一个m 文件。2 、 matlab function函数文件可以接受输入和给出输出,当然也可以没有,就像c语言的函数。 matlab 函数最大的书写特点(同 C 比起来)是它的输出变量定义在函数名前面。看一例 :例2: matlab内部函数std给出数组的标准差std=sqrt(sum(X)/N)编写函数 stderr 求实验误差 err=sqrt(sum(X)/(N*(N-1),代码如下:function err=stderr(arr)%实验误差(标准差估计)evaluate along each column o
3、f arrerr=std(arr)https://www.renrendoc.com/paper/sqrt(size(arr,1)-1);文件存为stderr.m,运行时输入a=1;2;3;建立一个列数组a,然后输入 stderr(a)则给出a 的方差。(若输入行数组则发散,因 N-1=0)此例中输入变量为arr,函数名为stderr,输出变量err,此三者皆写在关键字 function 后面同一行。无需再使用 return 将 err 的值返回。注意 :( 1)函数文件的命名要使用文件内主函数声明的名称, 否则出错。( 2)函数内部可以嵌套子函数并为该文件的主函数调用,只需将子函数写在主函数代码后面。(3) 一个函数可以有多个输入输出。如 funct
4、ion y1,y2=myfun(x1,x2,x3)例 1 中的 m 文件可在第一行前插入一行:function randplt保存后则该文件成为一个没有输入输出宗量的函数。一般来说 matlab 中执行同样的任务使用函数文件比脚本文件的效率高。3.函数句柄的使用函数句柄起到 c 语言中函数指针的作用。例3:编写函数求出数组arrl和arr2的标准差(std)以及误差(stderr)。解:编写如下文件并保存为 erreval.mfunction s1,s2=erreval_r(err,arr1,arr2)% err为所调用的误差函数,s1,s2分别返回arrl和arr2的误差.s1=feval_r(err,arr1);s2=feval_r(err,arr2);此文件的输入包含"函数变量",通过函数句柄实现函数变量err 的赋值。运行时先运行如下命令建立数组arr1,arr2:arr1=1;2;3;arr2=10;20;30;然后输入std1,std2=erreval_r(std,arr1,arr2)stderr1,stderr2=erreval_r(stderr,arr1,arr
到此这篇matlab函数与脚本的区别(matlab中脚本文件和函数文件有什么区别?)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/matlabbc/38024.html