《数学实验课件-MATLAB简介.ppt》由会员分享,可在线阅读,更多相关《数学实验课件-MATLAB简介.ppt(54页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一,课程绪论1,数学实验课程的主要内容 数学实验是近年来国内外高校所开设的一门新课程,因为较能适应时代的需要深受同学们的欢迎。类似的课程在研究生阶段,甚至一些中学也纷纷开设。关于该课程准确的界定没有统一的说法,一般认为可以是通过借助计算机以及相关软件对已有的数学结论的验证和探索,这部分可以看成和其他的实验一样;另一个方面可以看成将数学的有关知识和实际问题结合,利用计算机进行求解分析。一,课程绪论 前一种界定可以看成是狭义的,后一种界定包括非常的广泛,也可以认为是数学的应用,相关的课程比如有数学模型等。我们课程的内容应该属于后一种界定。当然由于学时的限制,主要以下面的几个方面进行讲解:方程求解,
2、微分方程,数据处理(插值和拟合),最优化方法。数学软件是进行数学实验的基本平台,我们的实验主要依靠matlab进行,可以是直接调用该软件的函数,也可能是通过软件进行编程解决问题。一,课程绪论2,数学实验课程的目标 从该课程所研究的内容可以看到该课程的基本目标:借助软件加深对数学结论的理解,借助软解求解一些用数学方法不能(或者难以)解决的问题。通过对实际问题的分析,建立适当的数学模型,最后借助数学软件进行求解计算。一,课程绪论3,课程的教学方法合和手段 由于课程的特点,决定我们的课程学习中需要提高大家两个方面的能力:数学分析能力,计算机求解数学问题的能力。为实现这两个方面的目的,我们的课程中会对
3、一些实际例子进行分析,提高同学们的分析能力。当然,由于课程的开放性特点,要求大家大量的阅读相关数学建模的资料。比如我校的数学模型精品课程网站。对于第二方面能力的培养,希望大家熟悉的掌握Matlab软件。上机时认真对待老师安排的实验。二,Matlab简介MATrix LABoratory 由美国MathWorks公司开发适合多学科、功能强大高级课程的基本教学工具二,Matlab简介 代数:求逆、特征值、行列式、代数方程解的化简、数学表达式的指定精度求值 微积分:微分、积分、求极限、泰勒展开、级数求和 数值分析:插值与拟合、数值微分与积分、函数逼近、代数方程和微分方程的数值解和符号解 统计计算:均
4、值、方差、概率、参数估计、假设检验、相关性和回归分析、统计绘图、随机数产生器等 优化问题的求解:线性规划、非线性规划等问题的求解 MATLAB的主要特点 1)运算符和库函数极其丰富,语言简洁,编程效率高 2)图形功能强大 3)功能强大的工具箱 4)易于扩充二,Matlab简介命令窗口MATLAB工作区MATLAB 的程序编辑器MATLABMATLAB帮助系统帮助系统MATLAB变量浏览器器MATLAB路径浏览器器返回Matlab的环境2.Matlab环境命令窗口命令编辑区标题栏菜单栏工具栏MatlabMatlab环境环境命令窗口是用户与命令窗口是用户与MATLAB进行交互的主要场所进行交互的主
5、要场所 标题栏标题栏 菜单栏菜单栏 工具栏工具栏 命令编辑区命令编辑区如如:键入:键入:X=4.5 并回车并回车,将显示:将显示:X=4.5再键入:再键入:Y=sin(X*pi)并回车,将显示:并回车,将显示:Y=1 表达式后面跟分号表达式后面跟分号“;”,将不显示结果;,将不显示结果;跟跟,或不跟任何符号,将显示表达式的计算结果;或不跟任何符号,将显示表达式的计算结果;当一个表达式没写完就需换行时,应在该行末尾键入当一个表达式没写完就需换行时,应在该行末尾键入之后再回车换行。之后再回车换行。例如,s=1-1/2+1/3+1/4+sin(3*x+y)-cos(x).-1/8+1/10+1/20
6、 按按 键,会再显示出刚才键入的命令行键,会再显示出刚才键入的命令行 反反复复按按 键键,可可以以回回调调以以前前键键入入的的所所有有命命令令行行 “”“”“”键可移动光标键可移动光标 还有还有“Home”“End”“Esc”键等键等;,的作用的作用用于命令行编辑的控制键和方向键用于命令行编辑的控制键和方向键 1)以字母开头,后面可跟字母,数字和下短线;2)大小写字母有区别,不超过31个字符。例如:xie23_1,a,A 和 Arui32r这四个都可作为变量。特殊变量名特殊变量名:ans 用于结果的缺省变量名 pi 圆周率 eps 计算机的最小数,当和1相加就产生比 1大的数 inf 无穷大,
7、如1/0 NaN 不定量,如0/0 i或j -1的开平方,即虚单位 realmin 最小可用正实数 realmax 最大可用正实数变量名命名规则变量名命名规则 工作区:接受MATLAB命令的内存区域,存储着命令编辑区输入的命令和创建的所有变量值。查看工作区变量 who或whos 显示当前工作区中的所有变量 clear 清除工作区中的所有变量 clear(变量名)清除指定的工作区变量2.Matlab环境工作区保存工作区变量quit 或 单击右上角的“”按钮,退出工作区save (文件名)将当前工作区的变量储存在 一个MAT-文件中load (文件名)调出一个MAT-文件2.Matlab环境工作区
8、2.Matlab环境变量浏览器在命令窗口单击“变量浏览器”按钮,或选择“File”菜单里的“show Workspace”就可打开变量浏览器。变量浏览器按钮2.Matlab环境变量浏览器显示工作空间里的所有变量。可以更改变量名返回返回2.Matlab环境程序编辑器在MATLAB命令窗口单击“新建”按钮,就可打开MATLAB程序编辑器,在此可建立和编辑M文件。返回返回M文件:命令文件和函数文件文件:命令文件和函数文件1.M1.M文件的建立文件的建立1)进入程序编辑器()进入程序编辑器(MATLAB Editor/Debug)2)输入程序)输入程序3)保存程序)保存程序2.Matlab环境程序编辑
9、器程序编辑器2.2.命令命令M M文件及其运行文件及其运行命令命令M M文件:一些命令行的组合。文件:一些命令行的组合。例如:例如:%文件名文件名example.m x=4;y=6;z=2;items=x+y+z cost=x*25+y*22+z*99 average_cost=cost/items1)在程序编辑窗口输入)在程序编辑窗口输入,以名为以名为example.m的的 M文件存磁盘文件存磁盘2)在)在MATLAB命令编辑窗口键入命令编辑窗口键入example,便会,便会顺序执行该文件中的命令。顺序执行该文件中的命令。3.3.函数函数M M文件及其调用文件及其调用函数函数M文件的形式为文
10、件的形式为function function 输出变量列表输出变量列表=函数名(输入变量列表)函数名(输入变量列表)函数体语句;函数体语句;例如:例如:function f=f1(x)f=100*(x(2)-x(1)2)2-(1-x(1)2;调用格式:调用格式:x=2 3;f=f1(x)结果为:结果为:f=99又如:又如:function F,G=f2(x)F=2*x(1)2+2*x(2)2-2*x(1)*x(2)-4*x(1)-6*x(2);G=x(1)+5*x(2)-5 2*x(1)2-x(2);-x(1)-x(2);调用格式:调用格式:x1=4 5;F1,G1=f2(x1)结果为:结果为
11、:F1=-4 G1=24 27 -4 -5无输出参数时,如:无输出参数时,如:function printresults(x)或或 function =printresults(x)which test 显示显示 M 文件文件 test.m 所在的目录所在的目录文件管理文件管理what 返回当前目录下返回当前目录下 M,MAT,MEX 文件的列表文件的列表dir 列出当前目录下的所有文件列出当前目录下的所有文件cd 显示当前的工作目录显示当前的工作目录type test 在命令窗口下显示在命令窗口下显示 test.m 的内容的内容delete test 删除删除 M 文件文件 test.m2.
12、Matlab环境路径浏览器单击“路径浏览器”按钮或选择“File”菜单下的“Set Path”项,即可打开路径浏览器。路径浏览器按钮2.Matlab环境路径浏览器能够修改MATLAB的搜索路径并查看任意路径下的所有文件。2.Matlab环境路径浏览器 只有将自己存放M文件(程序)的目录加入到MATLAB搜索范围内,在命令窗口中键入文件名后,才能执行。2.Matlab环境路径浏览器加目录到搜索范围的方法:1)先用“Browse”按钮选中要加入的目录;2)单击“Add to Path”按钮;3)单击“Refresh”按钮,修改后的搜索路径将起作用;4)如果你想永远保持当前搜索路径,再单击“Save
13、 Setting”按钮。帮助命令 help 函数名函数名 例如,例如,help sqrt 显示:显示:SQRT square root.help 显示帮助的所有子目录标题。显示帮助的所有子目录标题。help 函数子目录标题函数子目录标题 显示某一类的所有函数显示某一类的所有函数 或命令。或命令。2.Matlab环境帮助系统帮助窗口2.Matlab环境帮助系统在MATLAB命令窗口 单击工具栏的“?”按钮或键入helpwin,即可进入“帮助窗口”.帮助桌面2.Matlab环境帮助系统在MATLAB命令窗口 单击“Help”菜单下的“Help Desk”选项,即可进入“帮助桌面”。帮助桌面2.Ma
14、tlab环境帮助系统可提供更多的帮助信息。自动启动浏览器,相关内容逐级查找就可找到相应的帮助信息。三.数组和函数矩阵的创建矩阵的剪裁与拼接数组的运算矩阵的运算数学函数与矩阵函数输出:A=1 2 3 4 5 6 x=linspace(0,pi,11)%11个从0到pi的等间隔数.三.数组和函数矩阵的创建1)1)直接定义直接定义键入:A=1 2 3;4 5 62)2)一维数组的简单构造一维数组的简单构造:x=0:0.1:1%从0到1,增量为0.1。三.数组和函数矩阵的创建 “;”“,”“”的作用的作用1)表达式后面跟分号“;”,将不显示结果;2)跟,或不跟任何符号,将显示表达式的计算结果;3)当一
15、个表达式没写完就需换行时,应在该行末尾键入之后再回车换行。(但若行末是.时,应键入.)。3)一维数组的操作键入:x=pi*(0:0.1:1);y=sin(x)输出:y=Columns 1 through 7 0 0.3090 0.5878 0.8090 0.9511 1.0000 0.9511Columns 8 through 11 0.8090 0.5878 0.3090 0.0000三.数组和函数矩阵的创建输出:输出:ans=0 0.3142 0.6283 0.9425 1.2566键入:键入:y(3)%表示表示y的第的第3个元素个元素输出:输出:ans=0.5878键入:键入:x(1:5
16、)三.数组和函数矩阵的创建例如,键入:A=1 2 3;4 5 6;7 8 9;A(3,:)%A的第三行输出:ans=7 8 9三.数组与函数矩阵的剪裁与拼接从一个矩阵中取出若干行(列)构成新矩阵称为剪裁剪裁,“:”是非常重要的剪裁工具。键入:B=A(2:3,:)%A的2,3行输出:B=4 5 6 7 8 9键入:A(:,1)%A的第一列输出:ans=1 4 7三.数组与函数矩阵的剪裁与拼接键入:A=1 2 3;4 5 6;7 8 9;C=A(1:2,1 3)%A的第1,2行的第1,3列输出:C=1 3 4 6键入:A(1:2:3,3:-1:1),%A的第1,3行反向排列输出:ans=3 2 1
17、 9 8 7三.数组与函数矩阵的剪裁与拼接如果键入:D=C,zeros(2,1)输出:D=1 3 0 4 6 0 三.数组与函数矩阵的剪裁与拼接将几个矩阵拼接在一起称为拼接拼接,左右拼接行数要相同,上下拼接列数要相同。键入:E=D;eye(2),ones(2,1)输出:E=1 3 0 4 6 0 1 0 1 0 1 1三.数组与函数矩阵的剪裁与拼接数组求幂数组求幂 a.c=a1c a2c a3c;c.a=ca1 ca2 ca3;a.b=a1b1 a2b2 a3b3;设设 a=a1 a2 a3,b=b1 b2 b3,c=标量标量标量加法标量加法 a+c=a1+c a2+c a3+c;标量乘法标量
18、乘法 a*c=a1*c a2*c a3*c;数组加法数组加法 a+b=a1+b1 a2+b2 a3+b3;数组乘法数组乘法 a.*b=a1*b1 a2*b2 a3*b3;数组右除数组右除 a./b=a1/b1 a2/b2 a3/b3;数组左除数组左除 a.b=b1/a1 b2/a2 b3/a3;三.数组与函数数组的运算+矩阵加法;矩阵加法;-矩阵减法;矩阵减法;*矩阵乘法;矩阵乘法;矩阵转置;矩阵转置;矩阵乘幂;矩阵乘幂;矩阵矩阵左除左除 ;/矩阵矩阵右除。右除。XA=B的解是A右除B,即X=B/A。例如,设A是可逆矩阵,AX=B的解是A左除B,即 X=AB;三.数组与函数矩阵的运算输出:an
19、s=0.8415 0.9093 0.1411 -0.7568 -0.9589 -0.2794常用的数学函数常用的数学函数 单变量数学函数的自变量可以是数组,此时,输出的是各元素的函数值构成的同规格数组。例如,输入:a=1 2 3;4 5 6;sin(a)三.数组与函数函数 MATLAB中的常用数学函数有:三角函数三角函数:sin(x),sinh(x),asin(x),asinh(x),cos(x),tan(x),cot(x),sec(x),csc(x)等。等。指数函数指数函数:exp(x),log(x),log10(x),log2(x),sqrt(x)等。等。整值函数整值函数:朝零方向取整:朝
20、零方向取整fix(x),朝朝-方向取方向取 整整floor(x),朝朝+方向取整方向取整ceil(x),四舍四舍 五入到最接近的整数五入到最接近的整数round(x),符号函符号函 数数sign(x)等等 其他数学函数其他数学函数:绝对值或复数的幅值:绝对值或复数的幅值abs(x)三.数组与函数函数size(A)返回一个二元素向量,第一个元素返回一个二元素向量,第一个元素 为为A的行数,的行数,第二个元素为第二个元素为A的列数的列数size(A,1)返回返回A的行数的行数size(A,2)返回返回A的列数的列数length(A)返回返回max(size(A)diag(A)提取提取A的对角元素返
21、回列向量的对角元素返回列向量数组特征及矩阵操作函数三.数组与函数函数diag(v)以向量以向量v作对角元素创建对角矩阵作对角元素创建对角矩阵 max(v)求最大值求最大值min(v)求最小值求最小值sum(v)求和求和mean(v)求平均值求平均值sort(v)按升序排列按升序排列数组特征与矩阵操作函数三.数组与函数函数 d=eig(A),v,d=eig(A)特征值与特征向量特征值与特征向量 det(A)矩阵矩阵A的行列式的行列式 inv(A)矩阵的逆矩阵的逆 orth(A)正交化正交化 poly(A)特征多项式特征多项式 rank(A)矩阵的秩矩阵的秩 zeros(m,n)m行行n列的零矩阵
22、列的零矩阵 ones(m,n)m行行n列的全列的全1矩阵矩阵 eye(n)n阶单位矩阵阶单位矩阵rand(m,n)m行行n列的均匀分布随机数矩阵列的均匀分布随机数矩阵randn(m,n)m行行n列的正态分布随机数矩阵列的正态分布随机数矩阵矩阵函数布置实验布置实验1 1 熟悉MATLAB软件的用户环境,掌握其一般目的命令和MATLAB数组操作与运算函数;2 2 通过实例练习,达到能灵活应用MATLAB软件解决一些简单问题。实验目的实验目的实验过程中应注意得一些问题:1,如何输入m文件?怎么存盘?存到哪里?2,文件和变量命名。3,注意数学的输入习惯和matlab的区别。4,矩阵的运算和行列数之间的
23、关系,即什么时候可以运算。5,“.*”代表的意思,为什么引入这个运算?6,函数m文件和命令m文件的区别。1 1回回忆忆你你所所学学过过的的数数学学函函数数,并给出并给出x=3.56时时以下函数的值以下函数的值.实验内容实验内容 2 2利利用用帮帮助助了了解解向向量量函函数数max,min,sum,mean,sort,length,矩矩阵阵函函数数rand,size的功能和用法。的功能和用法。操操作作步步骤骤:先先用用函函数数rand生生成成一一个个1015的的矩矩阵阵,再再使使用用上上面面提提到到的的函函数数,看看产生什么样的输出。看看产生什么样的输出。实验内容实验内容3 3设有分块矩阵设有分块矩阵其中其中E,R,O,SE,R,O,S分别为单位阵、随机阵、分别为单位阵、随机阵、零阵和对角阵,试编写一个命令零阵和对角阵,试编写一个命令M M文件,文件,计算验证计算验证实验内容实验内容提示:先产生一个矩阵A,计算出A2;另一方面,计算矩阵 ,比较结果是否一致。(1)方阵的行列式(2)矩阵的秩(3)方阵的幂 (4)方阵的逆阵(5)向量组的秩 (5)向量组的正交化(7)方阵的特征向量和特征值.4.4.回忆线性代数的一些基本概念以及基本的回忆线性代数的一些基本概念以及基本的运算运算,查找可以使用哪些命令实现查找可以使用哪些命令实现.分别举出至少一个例子说明其用法.实验内容实验内容
限制150内