- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
106788matlab基本用法小结.doc
Matlab基本用法小结
一、说明 2
二、数据类型及基本输入输出 4
1、数据类型,声明及赋初值 4
2、基本输入输出 5
三、流程控制 6
1、运算符 6
2、IF 6
3、switch-case结构 7
4、try-catch结构 8
四、循环 8
1、while 8
2、for 9
五、数组、数组运算和矩阵运算 9
1、 数值数组 9
2、数组运算和矩阵运算 11
3、逻辑数组 15
4、字符串数组 15
5、元胞数组 16
6、构架数组 17
7、空数组 18
六、M脚本文件和M函数文件、函数句柄 18
1、matlab script file: 18
2、matlab function 19
3.函数句柄的使用 21
七、文件 22
八、数据和函数的可视化 22
1.二维数据的可视化 22
2.三维数据的可视化 24
3.图像控制命令 25
九、独立的回调函数 26
一、说明
看了奚啸翔同学写的Fortran基本用法小结后觉得Fortran的语法既有matlab的特色也有C的
特色。于是就套用了奚啸翔同学文章的格式,写了这篇matlab基本用法小结。目的是想和
Fortran的语法有个对比,学起来更快。其实学过C、Fortran和matlab中任何一个的同学要
学其他两种语言的语法都是非常容易上手的,一天就能搞定了。有兴趣的同学还可以看看
百合Fortran版上的C、Fortran、matlab语法对比,一定能有不少收获。
此外,尽管这三种语言的语法有很多相近的地方,matlab作为数学软件有其强大的图形用
户界面操作、数据和函数的可视化和数值计算功能,且自带很多现有的函数和工具包。而
本文只涉及一些比较系统的基本操作,在最后附带介绍一些基本的数据和函数的可视化命
令。建议要用的时候再利用matlab自带的帮助文档来搜索有用的函数和工具包。matlab的
函数和命令都是比较人性化的,比如想要搜索读取fits文件的函数,搜索fits就能够搜到
fitsread函数;需要将读出的fits数据重新做图,搜索image就可以找到imagesc函数。从
书和别人的文档都只能学到有限的比较系统的操作,看帮助文档能发现更多的东西并整理
出自己的使用方法。
最后要说明的是,C必须用循环才能做到的事情Fortran和matlab用矩阵和数组运算就能做
到,相对效率提高了很多;而对于一些运算量非常大的程序还是推荐用Fortran,因为相比
之下matlab的运算速度比Fortran慢很多;而网上很多现有的天文软件包都是用fortran写
的(比如由宇宙学参数计算模拟数据的CAMB程序和宇宙模型可能性预测LIKELIHOOD程序)
,虽然matlab也有很多天文软件包,但相对fortran还是逊色不少。
二、数据类型及基本输入输出
1、数据类型,声明及赋初值
matlab中存储的数据类型(class)有以下几种:
而实际上matlab不需要对变量做声明,当它发现一个新的变量名时,将默认将其为双精度
浮点类型(double)并分配内存空间。(这比C和 Fortran方便了许多,但在完成大运算量的
程序时就显得浪费存储空间了)
当需要把变量a从double转为其他类型的时候,比如要转为int16型,可以使用以下命令:
a=int16(a)
当需要创建一个字符型变量x并对其赋初值时,用以下格式:x=字符串;
注意:
(1)在命令后加“;”表示不在command window中显示结果,而对上例来说如果不加“;”
则会显示所赋字符串内容。
(2)所有的命令必须在英文输入状态下,如果使用中文输入状态下全角的“;”,将被处
理为非法字符。
其中logical,cell和structure为逻辑,元胞和构架数组类型,将在后面的数组部分提到
;function handle为函数句柄类型,将在后面的“M脚本文件和M函数文件、函数句柄”部
分提到;java类供JAVA API应用程序接口使用,本文不进行说明。
最后说明一下,matlab也支持复数操作,赋值的时候直接输入即可,比如:a=1+2i;
2、基本输入输出
输入:v=input(message) %将用户输入的内容赋给变量v
v=input(message,s) %将用户输入的内容作为字符串赋给变量v
keyboard %用户可以从键盘输入任意多个指令
v=yesinput(prompt,default,possib)
%prompt为文字提示,default为缺省设置“值”,possib为设置值的范围。
%该指令无法在notebook中运行。
输出:disp(a)
%
文档评论(0)