- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4.1 M文件
4.2 Matlab的程序结构
4.3 Matlab文件操作
4.4 Matlab程序设计;1 指令驱动模式
通常matlab以指令驱动模式工作,即在matlab 窗口下当用户输入单行指令时,matlab 立即处理这条指令,并显示结果,这就是matlab命令行模式。
命令行模式操作时,matlab窗口只允许一次执行一行上的一个或几个语句。;2 m文件模式
m文件是matlab所特有的使用该语言编写的磁盘文件。
将matlab语句构成的程序存储成以m为扩展名的文件,然后再执行该程序文件,这种工作模式称为程序文件模式。; 4.1 M文件;m文件的建立;1 脚本文件;2 函数文件;例4.2 求圆的周长和面积;4.2 Matlab的程序结构;1 顺序结构;(2) 数据的输出;sprintf 函数:字符串格式化命令
主要功能是把格式化的数据写入某个字符串中
调用格式
S=sprintf(格式,输出项);例4.3 求一元二次方程ax^2 +bx+c=0的根。;(3) 程序的暂停;2 选择结构;2 选择结构;(2) switch语句;(3) try语句;A=[1,2,3;4,5,6]; B=[7,8,9;10,11,12];
try
C=A*B;
catch
C=A.*B;
end
C
erro=lasterr%显示出错原因;3 循环结构;(2) while语句;(3) break和continue语句;例4.4 求[100,200]之间第一个能被21整除的整数。;1 文件的打开与关闭;(2)文件的关闭;2 文件的读写操作;说明:
COUNT返回所写的数据元素个数。
fid为文件句柄。
A用来存放写入文件的数据,
precision用于控制所写数据的类型,其形式与fread函数相同。;(2)文本文件的读写操作;说明:
A存放要写入文件的数据。
先按format指定的格式将数据矩阵A格式化,然后写入到fid所指定的文件。格式符与fscanf函数相同。;例4.5 文件的操作;clear
clc
x=0:0.1:2*pi;
fid=fopen(‘ax.txt,w+);
count=fprintf(fid,%4.5f\n,x);
fclose(fid);
fid1=fopen(‘ax.txt,r+);
t=fscanf(fid1,%f);
y=[t,sin(t)];
plot(t,y(:,2));
fid=fopen(ay.txt,’w+’);
COUNT= fprintf(fid,%4.5f\n, y); fclose(fid1);;1 函数的调用;例4.6 利用函数文件,实现直角坐标(x,y)与极坐标(ρ,θ)之间的转换。;2 函数参数的可调性;例4.7 nargin nargout用法示例。;例4.7 nargin nargout用法示例。;3 定义全局变量;例4.8 global用法示例。;良好的编程习惯:
在动手编程之前,明确程序的目的,设想解决方案,作出初步的流程图。如果程序较大,就要把程序分成几个相对独立的模块,各司其职。一个一个模块解决。
%后面的内容是程序的注解,要养成注释程序的习惯,在关键的命令行,变量定义处必须要有注释,在整个程序开头有一个总结性的注释。这样便于自己或别人查看和修改程序。
变量命名规则要统一, 含义清晰。
编辑m文件要注意排版,这可以使程序层次变得更清晰,有序,增加程序的可读性。
养成在主程序开头用clear指令清除变量的习惯,以消除工作空间中其它变量对程序运行的影响。但注意在函数或子程序中不要用clear。
;参数值要集中放在程序的开始部分,以便维护。在语句行之后输入分号使其中间结果不在屏幕上显示,以提高执行速度。
input指令可以用来输入一些临时的数据;而对于大量参数,则通过建立一个存储参数的子程序,在主程序中用子程序的名称来调用。
程序尽量模块化,也就是采用主程序调用子程序的方法,将所有子程序合并在一起来执行全部的操作。
设置好MATLAB的工作路径,以便程序运行。;提高matlab程序的运行效率
1. 尽量避免使用循环
a.尽量用向量化的运算来代替循环操作。
b.在必须使用多重循环时下,则在循环的外环执行循环??数少的,内环执行循环次数多的。这样可以显著提高速度。
2.预分配矩阵空间,即事先确定变量的大小、维数。
这一类的函数有zeros、ones等。
3. 将耗时的循环调用C或fortrun等低级语言运算
4.改用更有效的算法;Thank you !
您可能关注的文档
最近下载
- 《事故预防与应对》课件.ppt VIP
- 银行业金融机构安全评估标准.pdf VIP
- T∕CSPSTC 124-2023 钢箱梁步履式顶推施工技术规程.pdf
- 设计方案 -浙东运河文化园(博物馆)设计方案.docx
- 铣工技能训练第五版完整版全套PPT电子课件教案.pptx VIP
- 《玩偶之家》课件.pptx VIP
- DB63_T 2052.5-2022农村公路勘察设计规范+第+5+部分:桥梁涵洞.docx VIP
- 无人机行业政策监管分析报告:2025年建筑检测应用市场增长预测.docx
- 江苏执业药师继续教育《痴呆症的诊治》习题答案.docx VIP
- 2024红十字救护员理论考核试题及答案.pdf VIP
文档评论(0)