版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数 学 实 验,主讲教师 穆志民,matlab软件基础内容。 文章排版基本方法。 数据绘图及图片处理。 大量数据处理基本方法及软件实现。 最优化基本方法及软件实现。 其他补充。(一些比较高级的建模方法等),学习内容,1、matlab基本操作 2、高数中的matlab 3、线代中的matlab 4、概率方程中的matlab,数学实验使用的软件,1.优化软件: lingo 2.数据计算软件:Matlab,Mathematica 3.文章的排版软件:word,latex(数学) 4.数据统计处理软件: excel,spss,sas 5.论文阅读软件:word(.doc),Adobe Acrobat
2、(.pdf),超星阅览器rread(电子书,(.pdg,.pdf),cajview(.kdh,.pdf),第 一 章 matlab基础知识。,1节.matlab简介及其基本内容 2节.高等数学中的matlab 3节.线性代数中的matlab 4节.概率统计中的matlab 5节.方程(组)中的matlab 6节.数值处理与matlab,1.1.1 MATLAB简介 MATLAB是一个集数值计算、符号分析、图象显示、文字处理于一体的大型集成化软件.它最初由美国的CleveMoler博士所研制.其目的是为线性代数等课程中的矩阵运算提供一种方便可行的实验手段.经过十几年的市场竞争和发展,MATLAB
3、已发展成为在自动控制、生物医学工程、信号分析处理、语言处理、图像信号处理、雷达工程、统计分析、计算机技术、金融界和数学界等各行各业中都有极其广泛应用的数学软件.归纳起来,MATLAB具有以下几个特点:易学、适用范围广、功能强、开放性强、网络资源丰富.由于MATLAB的强大功能,它能使使用者从繁重的计算工作中解脱出来,把精力集中于研究、设计以及基本理论的理解上,所以,MATLAB已成为在校大学生、硕士生、博士生所热衷的基本数学软件.在此,我们把MATLAB作为学习数学的工具介绍给读者,希望能有利于读者今后的学习.,由于MATLAB 拥有大量的常用数学函数、工具箱,基本包括了现今数学、物理及工程应
4、用领域的常用函数,如能熟练掌握,无论在编程时间或程序量上,都远远低于Fortran、C 等高级语言,尤其在处理矩阵和向量计算方面更具有无可比拟的优势。 我们在数学建模竞赛中,由于只有短短的三到四天,而论文的评判不仅注重计算的结果更注重模型的创造性等很多方面,因此比赛中把大量的时间花费在编写和调试程序上只会喧宾夺主,是很不值得的,这时使用MATLAB 可以很大程度上的方便计算、节省时间,使我们将精力更多的放在模型的完善上,所以是较为理想的。,Matlab的安装 Matlab有各种版本,早期有Matlab1.0for386的DOS版本,后来逐步发展这里介绍的版本是Matlab6.xforWindo
5、ws因为它使用方便,界面美观,我们选择它作为主要讲解版本Matlab还有许多附加的部分,最常见的部分称为Simulink,是一个用作系统仿真的软件包,它可以让您定义各种部件,定义各自对某种信号的反应方式及与其它部件的连接方式最后选择输入信号,系统会仿真运行整个模拟系统,并给出统计数据Simulink有时是作为Matlab的一部分提供的,称为MatlabwithSimulink版本Matlab还有许多工具箱,它们是根据各个特殊领域的需要,用Matlab自身的语言编写的程序集,使用起来非常方便您可以视工作性质和需要购买相应的工具箱常见的工具箱有:,常见的工具箱,MATLAB的运行 启动MATLAB
6、点击MATLAB图标,进入到MATLAB命令窗(MATLABCommandWindow).在命令窗内,可以输入命令、编程、进行计算. 学会使用help命令在命令窗内输入help命令,再敲回车键.在屏幕上出现了在线帮助总览.(注意:MATLAB命令被输入后,必需敲回车键才能执行.为行文方便,以后不再每次提醒“敲回车键”.学会使用help命令,是学习MATLAB的有效方法.例如:要想知道MATLAB中的基本数学函数有哪些,可以在总览的第五行查到:MATLAB中的“基本数学函数”用elfun(elementary function)表示,于是,可进一步键入:“helpelfun”,屏幕上将出现“基本
7、数学函数”表.(注意:helpelfun之间有空格,以后不再每次提醒.)如果想了解sin函数怎样使用,可进一步键入helpsin.在工具栏中点击help按扭,或点击?号按扭,与上面获取帮助信息的方法是等效的.,常用控制命令: clc %清屏 clear %清变量 save %保存变量 load %导入变量,一些演示命令: logo surf(peaks(20)等,学会使用demo命令在命令窗内输入demo命令,再敲回车,键屏幕上将出现演示窗口.(MATLABDemoWindow)一共有三个窗口,左边的窗口显示欲演示内容的大标题,选定其中一项,右下方的小窗口显示欲演示的具体内容,选中其中一栏,再
8、点击run按扭,屏幕上将演示选定的演示程序.右上方的窗口显示关于大标题的一些说明.在命令窗内输入type (文件名),将显示演示程序的M文件,仔细研究演示程序的M文件,是学习MATLAB的又一有效方法. 进入演示窗还有另一方法:在工具栏中点击Help栏,下拉式菜单中点击examples and demos项,即可进入演示窗口. 退出 退出Matlab可键入quit或exit或选择相应的菜单中止Matlab运行会引起工作空间中变量的丢失。,MATLAB系统命令,1.1.2 变量、语句、矩阵与函数 变量,在MATLAB中,变量由字母、数和下划线组成.第一个字符必须是字母.一个变量最多由31个字符组
9、成,并区分大小写.下面是MATLAB中表示特殊量的字符:pi(圆周率)、eps(最小浮点数)、Inf(正无穷大)、NaN(表示0/0或inf-inf等不定值)、i,j(虚数单位) 语句,Matlab的表述语句、变量的类型说明由Matlab系统解释和判断Matlab语句通常形式为: 变量=表达式 或者使用其简单形式为: 表达式 表达式由操作符或其它特殊字符、函数和变量名组成表达式的结果为一个矩阵,显示在屏幕上,同时保存在变量中以留用如果变量名和“=”省略,则具有ans名(意思指回答),的变量将自动建立例如:键入1900/81 结果为:ans= 23.4568 需注意的问题有以下几点: *语句结束
10、键入回车键,若语句的最后一个字符是分号,即“;”,则表明不输出当前命令的结果 *如果表达式很长,一行放不下,可以键入“ ”(三个点,但前面必须有个空格,目的是避免将形如“数2”理解为“数2.”与“.”的连接,从而导致错误),然后回车 *变量和函数名由字母加数字组成,但最多不能超过63个字符,否则系统只承认前63个字符 *Matlab变量字母区分大小写,如A和a不是同一个变量,函数名一般使用小写字母,如inv(A)不能写成INV(A),否则系统认为未定义函数,矩阵方式输入 A=2 ,3 5;3 5 7;4 5 8 %矩阵输入 (a为2*3阶矩阵) b=3;5;7 %矩阵输入 det(A) %方阵
11、行列式 inv(A) %方阵的逆 x=Ab %ax=b方程组的解 y=inv(A)*b %与x相同 disp(a,b,x) %显示矩阵,矩阵,MATLAB的变量及数组均是以向量或矩阵方式存储,MATLAB中矩阵的输入方法如下:A=a11,a1n;am1,amn.逗号是同一行数之间的分隔符(也可用空格代替);分号是不同行的分隔符.,MATLAB中基本代数运算符,运算 符号 举例 加法,a+b + 5+3 减法,a-b - 5-3 乘法,ab * 5*3 除法,ab / or 48/4=448=12 乘幂,ab 52=25,MATLAB中向量(数组)、矩阵基本运算符 加法,A+B + 1 2+3
12、4 =1+3 2+4 减法,A-B - 1 2-3 4 = 1-3,2-4 乘法,A*B * 1,2*3;4=11 A.*B .* 1,2.*3,4=3,8 除法, A/B(AB) / 1,2;3 4/ 1,4;9,16=0.1,0.1; -0.6 0.4 A./B(A.B) . ./ 1,2;3 4./1,2;3,2 =1,1;1,2 乘幂,方阵的幂 1,2;3 42=7 10;15,22 元素的幂 . 1,2;3 4.2=1,4;9,16,例:我们要计算,可键入:y=sin(pi/6)得 y=0.5000 如果我们键入: x=0,pi/6,pi/3,pi/2,2*pi/3,5*pi/6,p
13、i; y=sin(x),得 y=00.50000.86601.00000.86600.50000.0000 这里,对于x有更简洁的输入方法:x=0:pi/6:pi,此命令表示x从0开始,以pi/6为步长变到pi为止. 如果我们键入: x=0,pi/6;pi/3,pi/2; y=sin(x)得 y=00.5000 0.86601.0000 其它的函数的用法与此类似.,MATLAB中符号函数的表示,函数,MATLAB提供了大量的函数.可以通过help查询.例如sqrt(开方)、log(常用对数)、log10(以10为底的对数)、sin(正弦)等.,MATLAB常用的基本数学函数 abs(x):纯量
14、的绝对值或向量的长度 sqrt(x):开平方 round(x):四舍五入至最近整数 fix(x):无论正负,舍去小数至最近整数 floor(x):地板函数,即舍去正小数至最近整数 ceil(x):天花板函数,即加入正小数至最近整数 rat(x):将实数x化为分数表示 rats(x):将实数x化为多项分数展开 sign(x):符号函数(Signumfunction)。当x0,sign(x)=1。 rem(x,y):求x除以y的余数 gcd(x,y):整数x和y的最大公因数 lcm(x,y):整数x和y的最小公倍数 exp(x):自然指数 pow2(x):2的指数 log(x):以e为底的对数,即
15、自然对数或 log2(x):以2为底的对数 log10(x):以10为底的对数,MATLAB常用的三角函数 sin(x): 正弦函数 cos(x): 馀弦函数 tan(x): 正切函数 asin(x):反正弦函数 acos(x):反余弦函数 atan(x):反正切函数 atan2(x,y):四象限的反正切函数 sinh(x): 超越正弦函数 cosh(x): 超越馀弦函数 tanh(x): 超越正切函数 asinh(x): 反超越正弦函数 acosh(x): 反超越馀弦函数 atanh(x): 反超越正切函数,finverse(f) 反函数,输出格式 任何Matlab语句执行结果都可在屏幕上显
16、示,同时赋给指定的变量,没有指定变量时赋给ans数字显示格式可由format命令来控制(Windows系统下的Matlab系统的数字显示格式可以由Option菜单中的NumericalFormat菜单改变)format仅影响矩阵的显示,不影响矩阵的计算与存贮(Matlab以双精度执行所有的运算) 首先,如果矩阵元素是整数则矩阵显示就没有小数,如x=-101,结果为: x= -101 如果矩阵元素不是整数则输出形式有:(用命令:format格式进行切换),MATLAB中关系和逻辑运算,1关系运算符 大于,=大于等于, = 等于,=不等于 运算法则:如果两个比较量a、b是标量,那么,当 a、b之间
17、的关系成立时输出值为1;否则输出值为0. 如果两个比较量a、b是相同维数的数组,那么就按标量的运算法则,对a、b的对应元素进行运算,最后的输出结果为一个与a(或b)同维的01数组. 如果a是标量,b是数组,那么按标量的运算法则将a与b的每个元素逐一比较,最后的输出结果为一个与b同维的01数组. 在算术运算、关系运算中,算术运算优先.,2逻辑运算符 a=y b=t,例:交换两个变量的值 myswap.m,有两个输入参数和两个输出参数,clear clc a=3,b=4, X=a; a=b, b=X %交换a,b值,函数文件,命令文件,命令文件的创建和运行: 在MATLAB的命令窗口点击“新建”工
18、具栏或在“file”下拉菜单中选“New”中的 “M-file”项,进入编辑/调试器. 例 计算所有小于1000的Fibonnaci数. %计算小于1000的Fibonnaci(斐波那契数列)数 clear clc f=1,2; i=1; whilef(i)+f(i+1)1000 f(i+2)=f(i)+f(i+1); i=i+1; end f,i 在“file”下拉菜单中选“Save”项,依提示输入文件名“fibno”至此,完成了命令文件fibno.m的创建.,function 输出形参列表=函数名(输入形参列表) % 注释说明部分(可选) 函数体语句(必须),第一行为引导行,表示该 M文件
19、是函数文件 函数名的命名规则与变量名相同 ( 必须以字母开头 ) 当输出形参多于一个时,用方括号括起来 以百分号开始的语句为注释语句,函数文件创建,函数文件由 function 语句引导,函数文件名必须与函数名一致 函数必须是一个单独的 M文件,functionf=ffibno(n) f=1,1; i=1; whilef(i)+f(i+1)n f(i+2)=f(i)+f(i+1); i=i+1; end f 在“file”下拉菜单中选“Save”项,依提示输入文件名“ffibno”至此,完成了函数文件ffibno.m的创建. 执行ffibno. 在MATLAB窗口中输入ffibno(1000)
20、并敲回车键即可.,例如:一个自编的函数文件mean.m,用于求向量的(或矩阵按列的)平均值 functiony=mean(x) %MEANAverageormeanvalue,ForVectors, %MEAN(x)returnsthemeanvalue %FormatrixMEAN(x)isarowvector %containingthemeanvalueofeachcolumn m,n=size(x); ifm=1 m=n; end y=sum(x)/m; 磁盘文件中定义的新函数称为mean函数,它与Matlab函数一样使用,例如z为从1到99的实数向量: z=1:99; 计算均值:me
21、an(z) ans= 50 mean.m程序的说明: (1)第一行的内容:函数名,输入变量,输出变量,没有这行这个文件就是命令文件,而不是函数文件 (2):表明右边的行是说明性的内容注释前一小部分行来确定M文件的注释,并在键入helpmean后显示出来显示内容为连续的若干个右边的文字 (3)变量m,n和y是mean的局部变量,在mean运行结束后,它们将不在工作空间z中存在如果在调用函数之前有同名变量,先前存在的变量及其当前值将不会改变,MATLAB编程语句,1控制语句 MATLAB也有控制流语句,用于控制程序的流程.主要有for循环、while循环、if和break三种控制语句.虽然语句很少
22、,但功能很强. for循环语句 for循环语句的一般表达形式为: fori=表达式 可执行语句1 可执行语句n end,作用:重复执行命令集commands,格式: for i=n1:(step):n2 commands; end,例:求S=1+2+3+50,可编程如下: s=0; fork=1:50 s=s+k; end,while循环 while循环语句用来控制一个或一组语句在某逻辑条件下重复预先确定或不确定的次数. while循环语句的一般表达形式为: while表达式 循环体语句 end,例:求S=1+2+3+50,可编程如下: S=0;k=0; whilek51 S=S+k;k=k+
23、1;%当条件k51时,反复执行语句S=S+k,k=k+1 end 以上这个例子事先已知循环次数是51,下面再看一个预先不能确定循环次数的例子.,例:用迭代法求解方程x-ex=0的根.初 始值x0=0.5,相对误差限=10(-8),原理,求解方程x-e-x=0的根.初始值x0=0.5,相对误差限=10-8,编程如下: ep=10(-8);dx=1;x0=0.5;k=0; whiledxep k=k+1; x=exp(-x0); dx=abs(x-x0)/(1+abs(x); x0=x; end,if和break语句 MATLAB中if和break语句的作用与使用方式同其它编程语言一样,用来将控制
24、流程 进行分流与中断退出. 例:可以把上面的解方程的例子中的循环语句改写成: x0=0; while(1) k=k+1; x=exp(-x0); dx=abs(x-x0)/(1+abs(x); ifdx=epsbreak;end x0=x; end 程序中while(1)说明循环条件总是真,直到满足dx=eps条件跳出循环体.,ifelseend分支结构 分支结构有三种形式: if表达式 执行语句 end 如果表达式的值非0,则执行下面的语句.否则执行end后面的语句. if 表达式 执行语句1 else 执行语句2 end,if表达式1 执行语句1 elseif表达式2 执行语句2 elseif表达式3 执行语句3 else(此句可以省略) 执行语句n end,例:函数,ifx=1 end,可编如下的程序:,x=inpu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年体育单招政治试题与答案
- 成形车刀课程设计ht200
- 基于日志审计的异常行为检测技术培训课程设计
- 财务结算 培训课程设计
- 社交网络谣言传播效果课程设计
- 辨认方向微课程设计
- 前端天气框架课程设计
- ESP的Wi-Fi气象站远程控制课程设计
- 初中美术示范画课程设计
- 45岁美术班课程设计
- 清真食品安全知识培训课件
- 实战网络靶场应用指南(2025版)-安全牛
- 2025年电厂安全教育考试试题(含答案)
- 学堂在线 现代生活美学-花香茶之道 章节测试答案
- 2025年公文写作公文试题及答案
- 科技立项费用管理办法
- T/CAPA 1-2019脂肪注射移植
- 研学旅行概论课程培训课件
- 船东保障和赔偿责任险条款
- 2021年中国邮政储蓄银行综合柜员岗位资格(初级)模拟考试(一)
- 送货单格式模板
评论
0/150
提交评论