版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、高 等 数 学 实 验,第一章 MATLAB 简介,MATLAB 简介,一、关于MATLAB 、MATLAB的特点 、MATLAB工具箱及启动 二、MATLAB程序编写 、MTLAB的基本元素及使用方法 、 M文件及函数 、程序语言的编写 三、上机实验,MATLAB 简介 关于MATLAB,、MATLAB的特点 功能强大 语言简单 扩充能力强、可开发性强 编程易、效率高 (从形式上看,MATLAB程序文 件是一个纯文本文件,扩展名为m.用任何字处理软件都可以对它进行编写和修改,因此程序易调试,人机交互性强。),、MATLAB工具箱及启动 ()MATLAB工具箱: MATLAB 主程序 最优化工
2、具箱(Optimization Toolbox) 图像处理工具箱(Image Processing Toolbox) 线性矩阵不等式控制工具箱(LMI Control Toolbox) 偏微分方程工具箱(Partial Differential Equation Toolbox) 统计工具箱(Statistics Toolbox) 符号数学工具箱(Symbolic Math Toolbox),MATLAB 简介 关于MATLAB,(2) MATLAB启动 可以利用菜单、快捷键或文件夹三种方式进人MATLAB工作窗口。,MATLAB 简介 关于MATLAB,MATLAB 简介 MATLAB程序编
3、写,MTLAB的基本元素及使用方法 一、 MTLAB的基本元素及使用方法 1、常量和变量 2、字符串 3、数组和矩阵的构造 4、运算符 5、数组和矩阵的运算,1常量和变量 1)常量和变量的定义 常量是MATLAB语言预定义的一些变量,在默认的情况下这些变量的值为常数。 变量是MATLAB的基本元素之一,与其他常规程序设计语言不同的是MATLAB语言不要求对所使用的变量进行事先说明,而且它也不需要指定变量的类型,系统会根据该变量被赋予的值或是对该变量所进行的操作来自动确定变量的类型。 变量的命名规则:变量名长度不超过31位,超过31位的字符系统将忽略不计;变量名区分大小写;变量名必须以字母开头,
4、变量名中可以包含字母、数字或下划线。,MATLAB 简介 MATLAB程序编写,2)常量和变量的运算 MATLAB关于常量和变量的运算与C语言基本相同 例:计算,MATLAB 简介 MATLAB程序编写,MATLAB 简介 MATLAB程序编写,2字符串 字符和字符串也是MATLAB的重要组成部分,MATLAB具有强大的字符串处理功能,特别是在MATLAB 6.5中有专门的符号运算工具箱(Symbolic toolbox)使其进行符号运算的功能更为强大。 1)设定字符串 MATLAB对字符串的设定非常简单,只需用单引号,将需设定的字符串引注即可。 2)字符串的操作 由于MATLAB语言是采用C
5、语言开发的,因此它的字符串操作与C语言的相应操作基本相同。在MATLAH中用eval函数来执行字符串的功能。,MATLAB 简介 MATLAB程序编写,3数组和矩阵的构造 1) 数组 只要用空格或逗号间隔数组元素,并用方括号括起来就可以了。 例如 x=0 1,7 5 注:还可以用增量法和linspace函数法来构造数组增量法构造数组。 增量法构造数组 例如 b=10:15 b=10:0.5:12 b=10:-1:5 lingspace函数法构造数组 用lingspace函数构造数组,需要指定首尾和元素总个数,形式为 x=linspace(first,last,num) 例如 x=linspac
6、e(0,10,5),MATLAB 简介 MATLAB程序编写,2) 矩阵 MATLAB里,二数组称为矩阵,在方括号里输入多个元素可以构造矩阵的一个行,并用逗号或空格将每个元素隔开,不同行用分号隔开 .例如, b=0 1 5;3 7 9,MATLAB 简介 MATLAB程序编写,4运算符 与其他程序语言类似,MATLAB提供了数学表达式功能.但是,与大多数程序语言不同的是,这些表达式主要对矩阵操作. 算术运算符实现四则运算以及幂,转置等运算,表达式采用的算术运算符如表1. 1所示。,MATLAB 简介 MATLAB程序编写,5数组和矩阵的运算 由数学知识可知,数组和矩阵有着不同的概念。在MATL
7、AB中,数组和矩阵在形式上很多一致之处,但是实际上它们遵循不同的运算规则。,MATLAB 简介 MATLAB程序编写,MATLAB 简介 MATLAB程序编写,MATLAB 简介 MATLAB程序编写,二、 M文件及函数 1. M文件 如果需要重复调用命令,或者命令的数比较多,将它们写成M文件的形式并保存.M文件分为脚本式M文件和函数式M文件。 (1) 脚本式M文件 例如 在编辑器中输入如下代码 a=1 2 3;0,1,0;3,4,5; b=det(a) c=inv(a) d=b*c 保存为math.m 在命令窗口中输入math可以执行文件。,MATLAB 简介 MATLAB程序编写,(2)
8、函数式M文件 例如给出x求,在编辑器中输入 function y=tentimes(x) %本程序求输入值与10的乘积 %用演示MATLAB函数帮助的实现方法 y=x*10; 将它保存到MATLAB的work目录中,M文件名为tentimes.m,MATLAB 简介 MATLAB程序编写,在命令窗口输入 help tentimes 显示 本程序求输入值与10的乘积 用演示MATLAB函数帮助的实现方法 输入 y=tentimes(10) 得到返回值 y= 100,MATLAB 简介 MATLAB程序编写,注:比较好的编程习惯,往往在程序的开始部分 写一些文本,提供关于怎么使用函数的帮助信息.紧
9、接函数定义行的以%符号开头的第一组连续行是函数的帮助文本.,MATLAB 简介 MATLAB程序编写,2. 函数 MATLAB提供了很多内部数学函数,包括abs,sqrt,exp和sin.对负数取平方根或对数不会导致错误,MATLAB会自动返回复数计算结果.MATLAB还提供了很多高级的数学函数,包括bessel和gamma 函数,在命令窗口入下面的命令,可以看此类函数的列表. help elfun 输入以下的命令,可以看到更多的高级数学函数和矩阵函数 help specfun help elmat,MATLAB 简介 MATLAB程序编写,注:(1)任意M文件中的第1个函数称为主函数. 主函
10、数可以有任意多个子函数,它们可以作为主函数的子函数. (2)大多数情况下,主函数是M文件中可以从MATLAB命令或从另一个M文件函数调用的唯一函数.调用该函数时,使用定义该函数的M文件的名称. 例如,average 函数在文件average.m中. function y=average(x) %计算矢量元素的平均值 y=sum(x)/length(x); 可以从MATLAB命令行用下面的命令计算3个数的平均值 average(2 5 2) ans = 3,MATLAB 简介 MATLAB程序编写,注意:一般使主函数的名称与M文件的相同.如果函数名与文件名不同,必须用文件名调用函数. M文件中可
11、以包含一个以上的函数.文件中除主函数以外的函数称为子函数,主函数放在最上面,子函数放在下面,各子函数不分先后顺序.,MATLAB 简介 MATLAB程序编写,三、程序语言的编写 程序控制语句决定程序运行时的走向,包括条件控制,循环控制,错误控制和终止运行控制等,这里介绍条件控制和循环控制.,MATLAB 简介 MATLAB程序编写,1条件控制 条件控制使得可以有选择地运行程序块.当条件可以用是或否来回答时,使用if语句;当条件根据表达式值的不同可有多个选项时,使用switch和case语句. (1)if语句 在MATLAB中,if语句有3种格式。 (1) 单分支if语句: if 条件 语句组
12、end 当条件成立时,则执行语句组,执行完之后继续执行if语句的后继语句,若条件不成立,则直接执行if语句的后继语句。,MATLAB 简介 MATLAB程序编写,例如 :当输入自变量的值,由如下分段函数给出 的值,MATLAB 简介 MATLAB程序编写,编辑M文件math.m: x=input(x=); if x0 y=x3; else y=3*x2; end x,y,MATLAB 简介 MATLAB程序编写,在命令窗口输入: math x=1 x= 1 y= 3,MATLAB 简介 MATLAB程序编写,(2) 双分支if语句: if 条件 语句组1 else 语句组2 end 当条件成立
13、时,执行语句组1,否则执行语句组2,语句组1或语句组2执行后,再执行if语句的后继语句。,MATLAB 简介 MATLAB程序编写,例3-4 计算分段函数的值。 程序如下: x=input(请输入x的值:); if x=0 y= (x+sqrt(pi)/exp(2); else y=log(x+sqrt(1+x*x)/2; end Y,MATLAB 简介 MATLAB程序编写,(3) 多分支if语句: if 条件1 语句组1 elseif 条件2 语句组2 elseif 条件m 语句组m else 语句组n end 语句用于实现多分支选择结构。,MATLAB 简介 MATLAB程序编写,例3-
14、5 输入一个字符,若为大写字母,则输出其对应的小写字母;若为小写字母,则输出其对应的大写字母;若为数字字符则输出其对应的数值,若为其他字符则原样输出。 c=input(请输入一个字符,s); if c=A end,MATLAB 简介 MATLAB程序编写,有多个选择时,可以类似地使用if/elseif语句. 例如 B样条函数的判断函数 程序如下: function f=pdbsline(x) if x0 f=0; elseif x1 f=x; elseif x2 f=2-x; else f=0; end,MATLAB 简介 MATLAB程序编写,保存为pdbsline.m,在命令窗口输入: p
15、dbsline(-1) ans = 0 pdbsline(1.36) ans = 0.6400 pdbsline(2.5) ans = 0 pdbsline(1) ans = 1,MATLAB 简介 MATLAB程序编写,(2) switch/case语句 该语句的通用格式为: switch switch-expression case case-expression1, statements1; case case-expression2, statements2; case case-expression3, statements3; otherwise statements; end,M
16、ATLAB 简介 MATLAB程序编写,switch-expression给出开关条件,当有case-expression与之匹配时,就执行其后的语句.如果没有case-expression与之匹配,就执行otherwise后面的语句.在执行过程中,只有一个case命令被执行,当执行完命令后,程序就跳出分支结构,执行end下面的语句.,MATLAB 简介 MATLAB程序编写,例如:编写转换成绩等级的函数文件,考试成绩在80,100分数段的显示优秀,在70,80)分数段显示良好,60,70) 分数段显示及格,0,60) 分数段显示不及格.,程序如下: function result=cj(x)
17、 n=fix(x/10); switch n case 8,9,10 disp(优秀); case 7 disp(良好); case 6 disp(及格); otherwise disp(不及格); end,MATLAB 简介 MATLAB程序编写,保存为cj.m,在命令窗口输入: cj(98) 优秀 cj(80) 优秀 cj(67) 及格 cj(23) 不及格,MATLAB 简介 MATLAB程序编写,2循环控制 使用循环控制语句,可以重复执行代码块,用for语句执行指定次数;while语句适合于循环一直执行,直到满足条件为止的情况; continue和break语句对退出循环给予更多控制.
18、 (1) for循环 for循环允许一组命令以固定的和预定的次数重复执行,for循环的一般形式如下: for v=expression(循环变量=初值:步长:终值) statements; end,MATLAB 简介 MATLAB程序编写,2循环结构 1)for语句 for语句的格式为: for 循环变量=表达式1:表达式2:表达式3 循环体语句 end 其中表达式1的值为循环变量的初值,表达式2的值为步长,表达式3的值为循环变量的终值。步长为1时,表达式2可以省略。,MATLAB 简介 MATLAB程序编写,MATLAB 简介 MATLAB程序编写,例3-9 已知 ,当n=100时,求y的值
19、。 程序如下: y=0; n=100; for i=1:n y=y+1/(2*i-1); end y,MATLAB 简介 MATLAB程序编写,在实际MATLAB编程中,采用循环语句会降低其执行速度,所以前面的程序通常由下面的程序来代替: n=100; i=1:2:2*n-1; y=sum(1./i); y,MATLAB 简介 MATLAB程序编写,(2) while语句 while语句的一般格式为: while (条件) 循环体语句 end 其执行过程为:若条件成立,则执行循环体语句,执行后再判断条件是否成立,如果不成立则跳出循环。,MATLAB 简介 MATLAB程序编写,例如: 求自然数前项n和,输入项数n 程序如下: n=input(n=) sum=0;k=1; %给和与循环变量赋初值 whil
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 硬笔书法考级培训
- 部编版下册教材培训
- 介绍伦敦金融
- 异位妊娠药物治疗护理查房
- 数控车削加工技术 教案 项目七 端面切削工艺及编程
- 15.4 电流的测量(6大题型)(含答案解析)
- 大单元教学内涵及特征
- 2024年党风廉政建设工作情况总结及2025年工作计划
- Windows Server网络管理项目教程(Windows Server 2022)(微课版)7.2 任务1 安装网络负载均衡
- 小学五年级地方课程安全教育教案备课
- 斜井提升安全管理制度
- 卡簧规格尺寸_图文
- 唐钢钢材材质单(共2页)
- GB∕T 35660.3-2021 信息与文献 图书馆射频识别(RFID) 第3部分:分区存储RFID标签中基于ISO IEC 15962规则的数据元素编码
- 美国高中化学酸碱反应 Acid-Base Reactions
- GB 18613-2012 电动机能效限定值及能效等级
- (完整版)广西良庆经济开发区园区循环化改造实施方案
- 勇者斗恶龙9图文攻略
- 介入治疗质控中心质控报告
- 医院年度财务报表和部门决算报表审计工作规程
- 工作闸门安装施工方案
评论
0/150
提交评论