第二讲 Matlab编程与作图
《第二讲 Matlab编程与作图》由会员分享,可在线阅读,更多相关《第二讲 Matlab编程与作图(9页珍藏版)》请在装配图网上搜索。
1、第二讲 Matlab编程与作图第一部分 Matlab程序设计初步Matlab除了指令行操作的直接交互外,作为一种高级应用软件还提供了自己的编程语言。通过编写Matlab程序,可以更加方便地调用Matlab提供的各种功能强大的函数库,使得程序能完成复杂的运算处理大量的数值数据。1、M文件简介Matlab提供了丰富的编程语言,使得用户可以将一连串的命令写入文件,然后使用简单的函数来执行这些命令。文件被保存为文本文件,后缀为.m,比如说dblquad.m,因此Matlab的程序通常被称为M文件。M文件是一个文本文件,可以使用各种文本编辑器对它进行编辑和修改,比如Windows操作系统自带的记事本,也
2、可以用Matlab内建的M文件编辑器。M文件分为两类,一类称为脚本(Scripts),类似于批处理文件,相当于将在Matlab命令窗口中执行的一系列指令放在一个文件中,当在命令窗口调用该文件名时,则按顺序执行其中的命令集。例:编写求10!的程序。另一类M文件称为函数(Function),它可以接受输入变量,并将运算结果送至输出变量,类似于数学中的函数y=f(x)。函数M文件的基本结构:function f=fact(n) 函数定义行%Compute a factorial value. %FACT(N) returns the factorial of N, 帮助文档%usually deno
3、ted by N!%Put simply,FACT(N) is PROD(1:N), 注释f=prod(1:n); 函数体2、运算符关系运算符:, , =, = =, =逻辑运算符:与(&),或(|),非()例:编写分段函数%myfun1.mfunction y=myfun1(x)y=(x.2).*(x1)+(x-1& x=1)+(3+2*x).*(x=-1);注意:1.函数名与变量名的命名法则相同,要求以字母开头,后接字母或下划线;2.函数名与保存的文件名最好一致。3、控制流所有的计算机编程语言都提供了控制程序流执行程序的语法,Matlab也不例外。所有的控制流语法都以end 结尾。for
4、循环语句语法:for 循环变量=数组 指令组; end解释:对于循环变量依次取数组中的值,循环执行指令组直到循环变量遍历数组。数组最常用的形式是初值:步长:终值。例:构造Hibert矩阵while 循环 语法:while 条件式 指令组; end解释:当条件式满足,循环执行指令组直到条件式不满足。使用while 语句要注意避免出现死循环。例:利用迭代公式求近似值,要求误差不超过指定精度。Sqrt.m分支语句语法:if 条件表达式1 指令组1; elseif 条件表达式2 指令组2; else 指令组k; end解释:如果条件表达式1满足,则执行指令组1,且结束该语句;否则检查条件表达式2,若满
5、足则执行指令组2,且结束该语句;若所有的条件都不满足,则执行指令组k,并结束该语句。例:用条件语句编写分段函数 myfun2.m开关语句语法:switch 分支变量 case 值1 指令组1; case 值2 指令组2; otherwise 指令组k; end解释:若分支变量的值取值1,则执行指令组1,且结束该语句,若分支变量的值取值2,则执行指令组2,且结束该语句,若分支变量不取所列出的值,则执行指令组k。例:关于switch 和input 的用法。useswitch.m其它常用指令 input指令 提示用户从键盘输入数值、字符串或表达式,并接收该输入,语法为:user_entry=inpu
6、t(message)user_entry=input(message,s) pause 指令 使程序运行暂停,语法为pause:暂停执行程序,等待用户按任意键继续。pause(n):使程序暂停n秒后继续执行。例:for n=1:4x=-1:0.1:1;y=x.n;plot(x,y)pauseend return 指令 结束return 指令所在函数的执行,返回到主调函数或者命令窗口。 break 指令 中断执行,用在循环语句内表示跳出循环。 error(message) 显示出错信息,终止程序执行。例:编写用区间迭代法求函数零点的程序。intfzero.m4、其它一些有用的函数 fcnchk
7、函数验证函数 f=fcnchk(fun),fun可以是由字符串表示的函数表达式,(这时返回一个inline函数),也可以是函数句柄,或是函数名字符串。 f=fcnchk(fun,vectorized),生成向量化函数,例如用.*代替*举例 将intfzero.m 文件中的语句 f=inline(fun);换成f=fcnchk(fun); nargin ,nargout 函数中输入参数或输出参数的个数。 % 注释语句 find 寻找数组中非零元素对应的下标。S=find(A),I,J=find(A)例:重编上面的分段函数 myfun3.m 取整函数 round(x),ceil(x),floor(
8、x),fix(x)第二部分 Matlab作图1、曲线图 plot(x,y) 作出以数据(x(i),y(i)为节点的折线图,其中x,y为同维数的向量。 plot(x,y,s) 其中s是由颜色、标记、线型参数组成的字符串颜色 标记 线型b blue . point - solidg green o circle : dottedr red x x-mark -. dashdot c cyan + plus - dashed m magenta * star (none) no liney yellow s squarek black d diamondw white v triangle (dow
9、n) triangle (up) triangle (right) p pentagram h hexagram plot(x1,y1,s1,x2,y2.s2,) 在同一个坐标系中作出由向量对(x1,y1),(x2,y2),为节点的折线。例:在同一坐标系中作出函数和在区间-1,2上的图形。 hold on (off) 保持(释放)图形窗口 polar(theta,rho) 作以(theta,rho)为坐标的极坐标图形,theta,rho为同维数的向量例:作出四叶玫瑰线的图形。 fplot(fun,a,b) 作出函数fun 在区间a,b上的图形。 plot3(x,y,z) 作空间曲线的图形,x,
10、y,z为同维向量。例:作出曲线的图形。 subplot(m,n,k) 将图形窗口分成个子图形窗口,将当前操作定位在第k个子图形窗口。2、曲面图X,Y=meshgrid(x,y) 生成以数组x,y为坐标的网格矩阵mesh(X,Y,Z) 绘制网面图,X、Y、Z是同维矩阵surf(X,Y,Z) 绘制曲面图,与mesh 用法类似。例:作出曲面在上的图形 ezmesh(fun) 轻松绘出二元函数fun 的曲面图(easy to use mesh) 绘图区域为 ezmesh(fun,xmin,xmax,ymin,ymax) 在指定区域绘图 ezmesh(fun,circ) 绘图区域为圆域上机练习1、设x
11、为一个长度为n 的数组,编程求下列均值和标准差2、求满足的最小m值。3、用循环语句形成Fibonacci数列,并验证极限。(提示:计算至两边误差小于精度)4、分别用for 和while 循环结构编写程序,求出。并考虑一种避免循环语句的程序设计,比较不同算法的运行时间。5、求出所有的“水仙花数”。所谓“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。例如,153是一个“水仙花数”,因为。6、假定某天的气温变化记录如下表,试作图描述这一天的气温变化规律。时刻t(h)0123456789101112温度T()15141414141516182022232528时刻t(h)131415161718192021222324温度T()3132312927252422201817167、作出下列函数图像曲线 (要求分别使用plot 或fplot 完成)椭圆抛物面曲面空间曲线半球面三条曲线合成图8、作下列分段函数图 9、用MATLAB函数表示下列函数,并作图
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 嵌入式系统概论-以S3C2440核心为架构课件
- 地理事象的季节变化课件
- 地理中外著名旅游景观欣赏课件
- 地理中图版选修5第一章第二节主要自然灾害及其分布课件
- 地理中考复习-地图课件
- 北师大版历史八年级下册第17课《筑起钢铁长城》课件1
- 北师大版历史八下《祖国统一的历史大潮》课件5
- 北师大版历史八下《欣欣向荣的科教文体事业》3课件
- 北师大版历史八下《蓝色的地中海文明》课件
- 北师大版历史九年级下册第10课“冷战”与“热战”丁飞鹤T-课件
- 北师大版历史八下第17课《大河流域的文明曙光》课件
- 北师大版历史九上1718课课件
- 高中化学热力学复习10多重平衡与化学计算ppt课件
- 高中化学第1章化学反应与能量转化第3节化学能转化为电能电池ppt课件1鲁科版选修
- 高中化学第三节玻璃、陶瓷和水泥公开课课件