数学建模软件求解入门幻灯片.ppt
《数学建模软件求解入门幻灯片.ppt》由会员分享,可在线阅读,更多相关《数学建模软件求解入门幻灯片.ppt(83页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数学建模软件求解入门第1页,共83页,编辑于2022年,星期六Matlab简介简介第2页,共83页,编辑于2022年,星期六n1997年仲春,MATLAB5.0版问世,紧接着是5.1、5.2,以及和1999年春的5.3版。与 4.x相比,现今的MATLAB拥有更丰富的数据类型和结构、更友善的面向对象、更加快速精良的图形可视、更广博的数学和数据分析资源、更多的应用开发工具。n 发展至今,Matlab7.0版已经问世Matlab简介简介第3页,共83页,编辑于2022年,星期六Matlab简介简介第4页,共83页,编辑于2022年,星期六nMatlab软件主要由三部分组成:Matlab主包,Sim
2、ulink和工具箱Matlab软件的组成软件的组成第5页,共83页,编辑于2022年,星期六第第1章章 矩阵及其基本运算矩阵及其基本运算n1实数值矩阵输入nMATLAB的强大功能之一体现在能直接处理向量或矩阵。当然首要任务是输入待处理的向量或矩阵。n不管是任何矩阵(向量),我们可以直接按行方式输入每个元素:同一行中的元素用逗号(,)或者用空格符来分隔,且空格个数不限;不同的行用分号(;)分隔。所有元素处于一方括号()内;当矩阵是多维(三维以上),且方括号内的元素是维数较低的矩阵时,会有多重的方括号。如:1)Time=11 12 1 2 3 4 5 6 7 8 9 10Time=11 12 1
3、2 3 4 5 6 7 8 9 102)A=1 2 3;2 3 4;3 4 5A=1 2 32 3 43 4 53)Null_M=%生成一个空矩阵4)A=A;1 2 3,1;2;3;4第6页,共83页,编辑于2022年,星期六特殊矩阵的生成特殊矩阵的生成命令命令 全零阵全零阵函数函数 zeros格式 B=zeros(n)%生成nn全零阵B=zeros(m,n)%生成mn全零阵B=zeros(m n)%生成mn全零阵B=zeros(size(A)%生成与矩阵A相同大小的全零阵命令命令 单位阵单位阵函数函数 eye格式 Y =eye(n)%生成nn单位阵Y =eye(m,n)%生成mn单位阵Y =
4、eye(size(A)%生成与矩阵A相同大小的单位阵第7页,共83页,编辑于2022年,星期六命令命令 均匀分布随机矩阵均匀分布随机矩阵函数 rand 格式 Y=rand(n)%生成nn随机矩阵,其元素在(0,1)内Y=rand(m,n)%生成mn随机矩阵命令命令 全全1阵阵函数 ones格式 Y=ones(n)%生成nn全1阵Y=ones(m,n)%生成mn全1阵Y=ones(m n)%生成mn全1阵Y=ones(size(A)%生成与矩阵A相同大小的全1阵思考:如何产生思考:如何产生20至至50间的随机数?间的随机数?第8页,共83页,编辑于2022年,星期六向量生成方法向量生成方法第9页
5、,共83页,编辑于2022年,星期六第10页,共83页,编辑于2022年,星期六2.定数线性采样法该采样法在给定的范围内确定等距离的一个样本数。该方法很实用,特别适合定义大的数组例如:在例如:在 之间取之间取5个点个点linspace(-pi,pi,5)3.利用随机数发生器定义一维数组例如:产生5个(0,1)均匀分布随机数,并定义一维数组x。x=rand(1,5)第11页,共83页,编辑于2022年,星期六Matlab常用命令常用命令第12页,共83页,编辑于2022年,星期六Matlab常用命令常用命令第13页,共83页,编辑于2022年,星期六n若要检视现存於工作空间(若要检视现存於工作空
6、间(Workspace)的变数,可键入)的变数,可键入who:nwho nYour variables are:ntestfile x n这些是由使用者定义的变数。若要知道这些变数的详细资料,可键入:这些是由使用者定义的变数。若要知道这些变数的详细资料,可键入:nwhos nName Size Bytes Class nA 2x4 64 double array nB 4x2 64 double array nans 1x1 8 double array nx 1x1 8 double array ny 1x1 8 double array nz 1x1 8 double array nGra
7、nd total is 20 elements using 160 bytes n使用使用clear可以删除工作空间的变数:可以删除工作空间的变数:nclear A nA n?Undefined function or variable A.Matlab常用命令应用第14页,共83页,编辑于2022年,星期六n 变量与常量变量与常量n变量是任何程序设计语言的基本要素之一,MATLAB语言当然也不例外。与常规的程序设计语言不同的MATLAB并不要求事先对所使用的变量进行声明,也不需要指定变量类型,MATLAB语言会自动依据所赋予变量的值或对变量所进行的操作来识别变量的类型。在赋值过程中如果赋值变
8、量已存在时,MATLAB语言将使用新值代替旧值,并以新值类型代替旧值类型。n在MATLAB语言中变量的命名应遵循如下规则:n(1)变量名区分大小写。n(2)变量名长度不超31位,第31个字符之后的字符将被MATLAB语言所忽略。n(3)变量名以字母开头,可以是字母、数字、下划线组成,但不能使用标点。n与其他的程序设计语言相同,在MATLAB语言中也存在变量作用域的问题。在未加特殊说明的情况下,MATLAB语言将所识别的一切变量视为局部变量,即仅在其使用的M文件内有效。若要将变量定义为全局变量,则应当对变量进行说明,即在该变量前加关键字global。一般来说全局变量均用大写的英文字符表示。nMA
9、TLAB语言本身也具有一些预定义的变量,这些特殊的变量称为常量。第15页,共83页,编辑于2022年,星期六n另外MATLAB有些永久常数(Permanent constants),虽然在工作空间中看不 到,但使用者可直接取用,例如:npi nans=n3.1416 n=n下表即为MATLAB常用到的永久常数。n 小整理:MATLAB的永久常数 n i或j:基本虚数单位(即)n eps:系统的浮点(Floating-point)精确度 n inf:无限大,例如1/0 n nan或NaN:非数值(Not a number),例如0/0 n pi:圆周率 p(=3.1415926.)n realm
10、ax:系统所能表示的最大数值 n realmin:系统所能表示的最小数值 n nargin:函数的输入引数个数 n nargout:函数的输出引数个数 第16页,共83页,编辑于2022年,星期六特别注意第17页,共83页,编辑于2022年,星期六实现Matlab与word的无缝连接步骤:1)在命令窗口输入notebook-setup 2)选择word版本 3)在命令窗口输入notebook 4)word中输入文字以及Matlab语句,全部选中,选中下拉菜单,点选define input cell,再选择evaluate cell第18页,共83页,编辑于2022年,星期六作出泊松分布的密度图
11、形x=0:20;y=poisspdf(x,5);stem(x,y)第19页,共83页,编辑于2022年,星期六将硬盘的数据读入变量现在有一组数据保存在three.xls文件中,要在Matlab中读入这组数据a=xlsread(e:three.xls)如果保存在文件soil.txt中只要输入a=load(e:soil.txt)第20页,共83页,编辑于2022年,星期六矩阵的简单运算矩阵的简单运算结果显示:结果显示:A+B=9 2 74 7 105 12 8AB=-7 0 -5-2 -3 -4-3 -6 4运算符:“”和“”分别为加、减运算符。运算规则:对应元素相加、减,即按线性代数中矩阵的“十
12、”,“一”运算进行。加、减运算加、减运算例例A=1,1,1;1,2,3;1,3,6B=8,1,6;3,5,7;4,9,2AB=A+BA-=A-B第21页,共83页,编辑于2022年,星期六运算符:*运算规则:按线性代数中矩阵乘法运算进行,即放在前面的矩阵的各行元素,分别与放在后面的矩阵的各列元素对应相乘并相加。1两个矩阵相乘乘法乘法例例X=2 3 4 5;1 2 2 1;Y=0 1 1;1 1 0;0 0 1;1 0 0;Z=X*Y结果显示为:结果显示为:Z=8 5 6 3 3 3 第22页,共83页,编辑于2022年,星期六上例中:a=2*X则显示:a=4 6 8 102 4 4 2矩阵的数
13、乘:数乘矩阵矩阵的数乘:数乘矩阵维数相同的两个向量的点乘。数组乘法:A.*B表示A与B对应元素相乘。向量的点乘(内积)向量的点乘(内积)需要注意的是点乘与矩阵的乘法是有区别的需要注意的是点乘与矩阵的乘法是有区别的第23页,共83页,编辑于2022年,星期六例:a=1 2 3;4 2 6;7 4 9b=4;1;2;x=ab则显示:x=-1.5000 2.00000.5000如果a为非奇异矩阵,则ab和b/a可通过a的逆矩阵与b阵得到:ab=inv(a)*b b/a=b*inv(a)数组除法:A./B表示A中元素与B中元素对应相除。矩阵除法矩阵除法Matlab提供了两种除法运算:左除()和右除(/
14、)。一般情况下,x=ab是方程a*x=b的解,而x=b/a是方程x*a=b的解。同样此时也要注意除法和点除之间的区别同样此时也要注意除法和点除之间的区别第24页,共83页,编辑于2022年,星期六运算符:运算规则:(1)当A为方阵,P为大于0的整数时,AP表示A的P次方,即A自乘P次;P为小于0的整数时,AP表示A-1的P次方。(4)标量的数组乘方P.A,标量的数组乘方定义为数组乘方:A.P:表示A的每个元素的P次乘方。矩阵乘方矩阵乘方矩阵的乘方要求矩阵矩阵的乘方要求矩阵A是方阵是方阵第25页,共83页,编辑于2022年,星期六例 A=1 2 3;4 5 6;7 8 9A=1 2 3 4 5
15、6 7 8 9 D=det(A)D=0运算符:运算规则:若矩阵A的元素为实数,则与线性代数中矩阵的转置相同。若A为复数矩阵,则A转置后的元素由A对应元素的共轭复数构成。若仅希望转置,则用如下命令:A.。矩阵转置矩阵转置方阵的行列式方阵的行列式函数 det格式 d=det(X)%返回方阵X的行列式的值第26页,共83页,编辑于2022年,星期六函数 inv格式 Y=inv(X)%求方阵X的逆矩阵。若X为奇异阵或近似奇异阵,将给出警告信息。例1-43 求的逆矩阵方法一A=1 2 3;2 2 1;3 4 3;Y=inv(A)或Y=A(-1)则结果显示为 Y=1.0000 3.0000 -2.0000
16、 -1.5000 -3.0000 2.5000 1.0000 1.0000 -1.0000方法二:由增广矩阵进行初等行变换B=1,2,3,1,0,0;2,2,1,0,1,0;3,4,3,0,0,1;C=rref(B)%化行最简形X=C(:,4:6)%取矩阵C中的A(-1)部分矩阵求逆矩阵求逆命令命令 逆逆第27页,共83页,编辑于2022年,星期六子矩阵的提取和运算子矩阵的提取和运算使用命令:使用命令:BA(v1,v2),其中,其中,v1向量表示子矩阵要包含的行号向量表示子矩阵要包含的行号构成的向量,构成的向量,v2表示要包含的列号构成的向量。若表示要包含的列号构成的向量。若v1为:,则表示要
17、为:,则表示要提取所有的行,同样使用列号。关键词提取所有的行,同样使用列号。关键词end表示最后一行(或列)表示最后一行(或列)例如:例如:B1A(1:2:end,:)表示提取表示提取A矩阵的全部奇数行、所有列矩阵的全部奇数行、所有列B2=A(3,2,1,2,3,4)表示提取表示提取A矩阵矩阵3,2,1行、行、2,3,4列构成子矩阵。列构成子矩阵。B3=A(:,end:-1:1)表示将表示将A矩阵左右翻转,即最后一列排在最前面。矩阵左右翻转,即最后一列排在最前面。第28页,共83页,编辑于2022年,星期六 A(:,2)=%删除第二列(:代表所有行)删除第二列(:代表所有行)例例 A=1 2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数学 建模 软件 求解 入门 幻灯片
限制150内