脚本和函数

脚本:

特点:按照文件中所输入的指令执行,一段matlab指令集合。运行后,运算过程产生的所有变量保存在基本工作区。可以进行图形输出,如plot()函数。

举例:

脚本文件ex4_15.m:

array=zeros(1,32);for n=3:32 %3-32递增的循环

array(n)=rank(magic(n));

end

array;

bar(array)

相关函数(超链接显示详细内容):

零矩阵:X =zeros(n) 返回一个 n×n 的全零矩阵。

幻方矩阵:M =magic(n) 返回由 1 到 n2 的整数构成并且总行数和总列数相等的 n×n 矩阵。阶次 n 必须为大于或等于 3 的标量。

求矩阵的秩:k =rank(A) 返回矩阵 A 的秩。

条形图:bar(y) 创建一个条形图,y 中的每个元素对应一个条形。如果 y 是矩阵,则 bar 根据 y 中的行对条形分组。

函数:

特点:以function开始的m文件。函数文件定义的变量为局部变量,函数执行完后清除。函数是一个“黑箱”,把数据输入进行加工处理再输出。

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

实例:

函数文件average.m

function y=average(x)

[a,b]=size(x);if~((a==1)|(b==1)|((a==1)&(b==1)))%判断是否为向量 a,b至少有一个为1

error('必须输入向量')

end

y=sum(x)/length(x);

function:函数声明

y:输出参数(可以为多或者无)

x:输入参数(可以为多或者无)

相关函数(超链接显示详细内容):

数组大小:sz=size(A) 返回一个行向量,其元素包含 A 的相应维度的长度。例如,如果 A 是一个 3×4 矩阵,则 size(A) 返回向量 [3 4]。sz 的长度为数组的维度。如果 A 是表或时间表,则 size(A) 返回由表中的行数和变量数组成的二元素行向量。

引发错误并显示消息:error(‘XXX’)

典型规范的M函数文件总结:

函数定义行:function引导,函数名与文件名相同,定义输入输出参数。

H1行:紧随函数声明的第一个注释行,供lookfor查询使用。(包括大写的函数文件名和运用关键词简要描述的函数功能)

帮助文本:%开头的注释,通常包括输入输出的变量含义及调用说明

函数体:实现功能的matlab命令

规范文件[庄1] (spirallength.m)实例:

function spir_len =spirallength(d,n,lcolor)% circle plot a circle of radius as r inthe provided color and calculate%its area 用提供的颜色绘制一个半径为r的圆,并计算其面积%d:螺旋的旋距%n:螺旋的圈数%lcolor:画图线的颜色%spir_len:螺旋的周长%spirallength(d,n):蓝色为预设参数的螺旋线%spirallength(d,n,lcolor):利用lcolor颜色为参数的螺旋线% spir_len =spirallength(d,n):计算并返回螺旋线周长,利用蓝色为参数的螺旋线% spir_len =spirallength(d,n,lcolor):计算并返回周长,利用lcolor颜色为参数的螺旋线%编写于2019.6.4庄林武if nargin>3 %nargin为调用参数个数

error('输入参数过多!');

elseif nargin== 2lcolor= 'b'; %输入参数只有两个,不包括颜色信息,设置颜色为蓝色

end

j=sqrt(-1);

phi= 0:pi/1000:n*2*pi;

amp= 0:d/2000:n*d;

spir= amp .*exp(j*phi);if nargout == 1 %nargout为调用函数返回的参数个数

spir_len=sum(abs(diff(spir)));

fill(real(spir),imag(spir),lcolor)%real(x)复数x的实部 imag(x)复数x的虚部

elseif nargout== 0plot(spir,lcolor)elseerror('输入变量过多');

end

axis('square')

相关函数(超链接显示详细内容):

平方根:B =sqrt(X) 返回数组 X 的每个元素的平方根。对于 X 的负元素或复数元素,sqrt(X) 生成复数结果。

指数:Y=exp(X) 为数组 X 中的每个元素返回指数 ex。对于复数元素 z = x + iy,它返回以下复指数ez=ex(cosy+isiny) .

差分和近似导数:Y = diff(X) 计算沿大小不等于 1 的第一个数组维度的 X 相邻元素之间的差分:

数组元素总和:S = sum(A) 返回 A 沿大小不等于 1 的第一个数组维度的元素之和。

填充的二维多边形:fill(X,Y,C) 根据 X 和 Y 中的数据创建填充的多边形(顶点颜色由 C 指定)。C 是一个用作颜色图索引的向量或矩阵。

二维线图:plot(Y,LineSpec) 设置线型、标记符号和颜色。

设置坐标轴范围和纵横比:axis(limits) 指定当前坐标区的范围。以包含 4 个、6 个或 8 个元素的向量形式指定范围。

[庄1]理解实例需要了解螺旋图数学原理的画法(待解决)

matlab bfs函数,Matlab脚本和函数相关推荐

  1. matlab在命令行和脚本,MATLAB学习笔记—函数与脚本

    函数-Function MATLAB自带了丰富的函数,当然我们也可以自定义函数来实现自己想要的功能. 比如:rand(3,4) 就能生成3×4的数表,每个数在0~1之间. 输入edit编辑新文件 fu ...

  2. 如何在MATLAB中调用(运行)“用Python写成的函数或脚本”

    如何在MATLAB中调用"用Python写成的函数或脚本",首先要确保MATLAB知道咱们的Python解释器的位置在哪里. 如果安装了Python的时候把Python加入了系统环 ...

  3. 【matlab图像处理】matlab的脚本和函数

    中国史之[文丁防季历]: 文丁在位期间,周侯季历讨伐戎有功,文丁忌惮,于是下令将其囚禁.季历本来就没有叛商的想法,被软禁后,绝食抗争,最后死在商都朝歌.文丁杀季历的作法非但没能阻止周人力量的发展,相反 ...

  4. matlab 脚本是什么意思,MATLAB提示不能在脚本中定义函数,是什么意思?

    点击查看MATLAB提示不能在脚本中定义函数,是什么意思?具体信息 答:你试图在命令窗口定义函数,这种做法是错误的. 你需要建立一个.m文件,文件名是Chebyshev.m,然后在里面输入源程序. 答 ...

  5. 函数matlab,Matlab函数

    一个函数是一组在一起执行任务的语句. 在MATLAB中,函数在单独的文件中定义.文件的名称和函数的名称应该是一样的. 函数在自己的工作空间内的变量上运行,这个变量也称为本地工作空间,与在MATLAB命 ...

  6. matlab私有函数,MATLAB 嵌套函数,子函数,私有函数,重载函数

    MATLAB函数嵌套 MATLAB中M文件有两种类型,脚本M文件和函数M文件.脚本M文件是将可执行程序语句放入M文件中,就像在命令窗口那样,按其语句顺序及逻辑关系执行,可以理解为一般的顺序执行程序语句 ...

  7. matlab中response函数,matlab函数的种类

    突然发现matlab的函数还是很有讲究的,以前只是用,很少注意这个问题,现在看到了稍微总结一下吧. 在matlab帮助中搜索Types of Functions,可以看到matlab常用的函数种类: ...

  8. matlab 设置为匿名函数,MATLAB匿名函数

    本文概述 匿名函数是简单的(单行)用户定义函数, 无需创建单独的函数文件(M文件)即可进行定义.可以在命令窗口中, 脚本文件中或用户定义的函数中定义匿名函数. 通过键入以下命令来生成匿名函数: 其中f ...

  9. Matlab自学笔记四:调用函数基本方法、传递参数、函数工作区、命令语法、调用匿名函数

    1.调用函数的基本方法 题目:创建函数y=x²+x+1 首先,使用上一篇的创建函数文件的方法(推荐先看上一篇:Matlab创建函数文件.函数语法定义.匿名函数.多元函数.局部函数等知识串联理解),创建 ...

最新文章

  1. 【MDCC 2015】开源选型之Android三大图片缓存原理、特性对比
  2. 应用场景的多样,奠定了区块链的未来
  3. 10套华丽的 Windows 8 Metro 风格图标【2000+免费图标】
  4. C++和Java的属性访问和方法调用 效率比较
  5. 荒岛求生游戏显示服务器不行,《荒岛求生》黑屏解决方法
  6. 程序媛如何自我突破?
  7. Django(四)数据库
  8. 计算机专业简历中技能特长怎么写,简历上特长技能应该怎么填写
  9. jq cookie的使用
  10. 零基础学python还是c语言-学习汇编还是学习python,自己刚学完C语言,学习那个好呢?...
  11. paip.提升性能--多核编程中的java .net php c++最佳实践 v2.0 cah
  12. 淘宝天猫商城的推广方法大总结
  13. python一阶差分_如何用Python对数据进行差分
  14. 新系统软件著作权申请流程及注意事项
  15. RN 启动开发服务器时报错 ReferenceError: SHA-1 for file
  16. 用canvas制作表情包
  17. (蓝桥杯)数字三角形。。(最简单的dp题)
  18. 修改Linux下只读文件的权限
  19. pn532检测不到nfc设备_华为、小米又增回NFC功能,苹果却一直无NFC功能,NFC能否成为关键?...
  20. DB2利用db2advis进行查询优化

热门文章

  1. mybatis-plus insertStrategy、updateStrategy、whereStrategy属性
  2. NDN-lite 命名数据网络 -----第二章:对Interest和Data包的处理
  3. Git详解之服务部署
  4. 数据库版本管理:flyway
  5. 没有iphone上架appstore怎么截屏
  6. rstudio运行python_RStudio网状Python
  7. SqlServer遇到以零作除数错误
  8. Tenth season third episode,Ross is going to be so tan(black)??????
  9. Android调用新版百度天气api,解决地理编码问题
  10. 数据分析——1.环境搭建(Jupyter Lab安装教程)