Matlab自己定义函数
Matlab提供了强大的函数库供用户调用,但也支持用户自定义函数。本文使用了范德堡大学教授Akos Ledeczi授课中的样例来一步步说明怎样在Matlab中自定义函数。
首先,在command window中输入edit命令。開始编辑函数。本函数实现的是随机生成一个3行4列的矩阵。该矩阵的元素取值范围在0-1之间。
function myRand
a = rand(3,4)
end
当中,function和end是keyword,function表示该文件是一个函数,end表示函数体的结束。在command window中运行myRand命令,得到的结果例如以下:
>> myRand
a =
0.5688 0.3371 0.3112 0.6020
0.4694 0.1622 0.5285 0.2630
0.0119 0.7943 0.1656 0.6541
然后,为函数添加參数。
本函数实现的是随机生成一个3行4列的矩阵,该矩阵的元素取值范围在low-high之间。
function a = myRand(low, high)
a = low+rand(3,4)*(high - low);
end
当中。low和high是函数体的两个输入參数。分别代表了矩阵元素取值范围的上限和下限;a是函数的范围值。在command window中运行myRand命令。得到的结果例如以下:
>> myRand(1,6)
ans =
4.4461 1.4191 1.7619 5.9807
4.7408 2.1449 5.1291 1.3909
3.2527 5.5667 3.6917 3.2134
最后,为函数再添加一个返回參数。该函数将随机生成的矩阵中的每个元素相加。返回其总和。
function [a, s] = myRand(low, high)
a = low + rand(3,4)*(high-low);
v = a(:);
s = sum(v);
end
当中。s是新添加的返回參数。在command window中运行myRand命令,得到的结果例如以下:
>> [x ss] = myRand(2,4)
x =
3.1504 2.7063 2.0860 3.4634
2.1196 3.6424 2.3380 3.2955
2.4696 2.0308 3.2982 2.9018
ss =
33.5021
到此为止。在Matlab中简单自己定义函数的方法已经介绍完成。Matlab还支持常见的for-loop和if-else等循环和推断结构。參见兴许博客。
Matlab自己定义函数的更多相关文章
- MATLAB如何定义函数
自定义函数的途径:M文件函数(M file function)在线函数(Inline Function)匿名函数(Anonymous Function)1.M文件函数范例function c=myad ...
- matlab学习创建变量定义函数
定义变量a,b,c,计算输出d >> a=-3;b=2;c=5;>> d=(a^2+b)/c;>> d=(a^2+b)/c d = 2.2000 系统默认变量 a ...
- matlab中patch函数的用法
http://blog.sina.com.cn/s/blog_707b64550100z1nz.html matlab中patch函数的用法——emily (2011-11-18 17:20:33) ...
- matlab 中“newff” 函数的参数设置
matlab 中"newff" 函数的使用方法技巧|和各参数的意义 先来一个简单的源程序让大家练习一下: % Here input P and targets T define a ...
- Matlab学习记录(函数)
Matlab中的内建函数 Matlab自定义函数 用function构造函数 用inline构造函数 用syms构造符号函数 多项式相关函数 polyvalx convx 向量和矩阵运算函数 向量运算 ...
- Matlab中的函数句柄@
本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/50699990 @是Matlab中的句柄 ...
- Matlab中imfilter()函数的用法
Matlab中imfilter()函数的用法 功能:对任意类型数组或多维图像进行滤波.用法:B = imfilter(A,H) B = imfilter(A,H,option1,option2,... ...
- MATLAB 中自定义函数的使用
MATLAB在文件内部(在函数内部)定义函数,但文件名以开头函数来命名,与Java中每个文件只能有一个公开类,但在文件内部还是可以定义其他非公开类一个道理. 无参函数 do.m function do ...
- matlab中nargin函数输入参数数目
来源:https://ww2.mathworks.cn/help/matlab/ref/nargin.html?searchHighlight=nargin&s_tid=doc_srchtit ...
随机推荐
- Innobackupex 全备数据库
对于MySQL数据库的热备.xtrabackup是除了MySQL enterprise backup之外的不二之选. 该工具提供了基于innodb存储引擎的热备.支持全量,增量备份,部分备份,时点恢复 ...
- wpf msdn在线地址http://msdn.microsoft.com/zh-cn/library/ms752324(v=vs.110).aspx
http://msdn.microsoft.com/zh-cn/library/ms752324(v=vs.110).aspx
- tail
tail用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理.常用查看日志文件. -f 循环读取 -q 不显示处理信息 -v 显示详细的处理信息 -c<数目> 显示的字节数 -n& ...
- php错误日志级别
; E_ALL 所有错误和警告(除E_STRICT外) ; E_ERROR 致命的错误.脚本的执行被暂停. ; E_RECOVERABLE_ERROR ...
- Excel中将时间格式转化成时间戳格式
时间戳转成正常日期的公式:C1=(A1+8*3600)/86400+70*365+19其中A1表示当时的1249488000时间戳数值其中C1就是所需的日期格式,C1单元格属性改成日期格式就可以了.正 ...
- MapXtreme在asp.net中的使用之加载地图(转)
MapXtreme在asp.net中的使用之加载地图(转) Posted on 2010-05-04 19:44 Happy Coding 阅读(669) 评论(0) 编辑 收藏 1.地图保存在本地的 ...
- java web 之 WebRoot和WebContent目录
WebRoot和WebContent都是程序的根文件夹,无本质区别,一下是两者的共同点和不同点: 共同点:都有一个WEB-INF文件夹,其下文件不可直接访问: WEB-INF是安全目录,所谓安全,就是 ...
- MYSQL5.6数据库ZIP安装以及VS中使用注意事项
先挂资源,下载地址: http://download.softagency.net/MySQL/Downloads/. 找到MYSQL5.6,两个版本看系统而定我下的是64位的:http://down ...
- Android listview 的应用
ListView作为Android最常用但是却最难用的控件之一,有很多神奇的用法.我之前也有写过一个例子,稍微不那么简单了一点. [Android原生item的伸缩效果]:http://www.cnb ...
- php的多线程使用
PHP 5.3 以上版本,使用pthreads PHP扩展,可以使PHP真正地支持多线程.多线程在处理重复性的循环任务,能够大大缩短程序执行时间. 在liunx下的安装 准备工作: 1.下载Threa ...