数学建模02第二章Matlab语言基础-Matlab教程

上传人:我*** 文档编号:137340973 上传时间:2020-07-07 格式:PPT 页数:17 大小:166.50KB
返回 下载 相关 举报
数学建模02第二章Matlab语言基础-Matlab教程_第1页
第1页 / 共17页
数学建模02第二章Matlab语言基础-Matlab教程_第2页
第2页 / 共17页
数学建模02第二章Matlab语言基础-Matlab教程_第3页
第3页 / 共17页
数学建模02第二章Matlab语言基础-Matlab教程_第4页
第4页 / 共17页
数学建模02第二章Matlab语言基础-Matlab教程_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《数学建模02第二章Matlab语言基础-Matlab教程》由会员分享,可在线阅读,更多相关《数学建模02第二章Matlab语言基础-Matlab教程(17页珍藏版)》请在金锄头文库上搜索。

1、Matlab语言基础,1)启动与退出 双击matlab图标,进入matlab命令窗口(command window),即可输入命令语句,开始运算,或从开始菜单的程序中单击matlab进入。 单击file菜单中的Exit,或在命令窗口输入Exit并回车即可退出。 2)语句形式 变量=表达式 输入一个语句并以回车结束,则在工作区显示计算结果,语句以“;”结束,只进行计算但不显示结果。太长的表达式可以用续行号将其延续到下一行。一行可以写几个语句,它们之间用逗号或句号分开。 例:输入a=1,3) MATLAB中变量的命名规则是: (1)变量名必须是不含空格的单个词; (2)变量名区分大小写; (3)变

2、量名最多不超过19个字符; (4)变量名必须以字母打头,之后可以是任意字母、数字或下划线, 变量名中不允许使用标点符号. (5)特殊变量 ans:用于结果的缺省变量名 i、j:虚数单位 pi:圆周率 nargin:函数的输入变量个数 eps:计算机的最小数 nargout:函数的输出变量个数 inf:无穷大 realmin:最小正实数 realmax:最大正实数 nan:不定量 flops:浮点运算数,4)数学运算符号及标点符号,(1)MATLAB的每条命令后,若为逗号或无标点符号, 则显示命令的结果;若命令后为分号,则禁止显示结果. (2)“%” 后面所有文字为注释,M文件中(ctr+R全注

3、释,ctr+T全取消 ). (3) “.”表示续行.,5)数学函数,6)数组,7)矩阵,1、矩阵的建立 逗号或空格用于分隔某一行的元素,分号用于区分不同的行. 除了分号,在输入矩阵时,按Enter键也表示开始一新行. 输入矩阵时,严格要求所有行有相同的列 例m=1 2 3 4 ;5 6 7 8;9 10 11 12 p=1 1 1 1 2 2 2 2 3 3 3 3 特殊矩阵的建立: a= 产生一个空矩阵,当对一项操作无结果时,返回空矩阵,空矩阵的大小为零. b=zeros(m,n) 产生一个m行、n列的零矩阵 c=ones(m,n) 产生一个m行、n列的元素全为1的矩阵 d=eye(m,n)

4、 产生一个m行、n列的元素的单位矩阵 e=randn(m,n) 产生一个m行、n列正态分布随机矩阵,2矩阵中元素的操作 (1)矩阵A的第r行:A(r,:) (2)矩阵A的第r列:A(:,r) (3)依次提取矩阵A的每一列,将A拉伸为一个列向量:A(:) (4)取矩阵A的第i1i2行、第j1j2列构成新矩阵:A(i1:i2, j1:j2) (5)以逆序提取矩阵A的第i1i2行,构成新矩阵:A(i2:-1:i1,:) (6)以逆序提取矩阵A的第j1j2列,构成新矩阵:A(:, j2:-1:j1 ) (7)删除A的第i1i2行,构成新矩阵:A(i1:i2,:)= (8)删除A的第j1j2列,构成新矩

5、阵:A(:, j1:j2)= (9)将矩阵A和B拼接成新矩阵:A B;A;B,3矩阵的运算 (1)标量-矩阵运算:同标量-数组运算。 (2)矩阵-矩阵运算: 1 元素对元素的运算,同数组-数组运算 2矩阵运算: 矩阵加法:A+B 矩阵乘法:A*B 矩阵转置: 方阵的行列式:det(A) 方阵的逆:inv(A) 方阵的特征值与特征向量:V,D=eigA 求矩阵的范数: norm(A,1) 计算矩阵A的1范数 norm(A,2) 计算矩阵A的2范数 norm(A,inf) 计算矩阵A的无穷范数,8)关系与逻辑运算,1、关系操作符,2、逻辑运算符,9)程序设计,Matlab有两种工作方式: 1)人机

6、交互的命令行指令操作方式,即在命令窗口每输入一条命令,则立即运行该命令得到结果。 2)进行控制流的程序设计,即编制一种可存储的以M为扩展名的文件(简称M文件)。 在Matlab下执行该程序M文件分两种: (1)命令式M文件:也称脚本文件, 就是将Matlab的一系列命令按顺序编制成一个文本文件,文件名后缀为M,然后在command window 下运行文件名,则按顺序执行文件中的命令。 文件建立方法:1. 在Matlab中,点:File-New-M-file 2. 在编辑窗口中输入程序内容 3. 点:File-Save,输入文件名,后缀为M,存盘 例:建立命令式脚本文件qwe.m 在编辑窗口输

7、入如下命令: a=1 b=2; %行尾加分号,注意运行结果。 c=a+b 然后存盘。在command window 下输入qwe.m并回车。,(2)函数式M文件: MATLAB的内部函数是有限的,有时为了研究某一个函数的各种性态,需要为MATLAB定义新函数,为此必须编写函数文件. 函数文件是文件名后缀为M的文件,这类文件的第一行必须是一特殊字符function开始,格式为: function 因变量名=函数名(自变量名) 函数值的获得必须通过具体的运算实现,并赋给因变量. M文件建立方法: 1. 在Matlab中,点:File-New-M-file 2. 在编辑窗口中输入程序内容 3. 点:

8、File-Save,存盘,M文件名必须与函数名一致。 注:Matlab的应用程序也以M文件保存。 例:定义函数 f(x1,x2)=100(x2-x12)2+(1-x1)2 1.建立M文件:fun.m function f=fun(x) f=100*(x(2)-x(1)2)2+(1-x(1)2 2. 可以直接使用函数fun.m 例如:计算 f(1,2), 只需在Matlab命令窗口键入命令: x=1 2 fun(x),10)控制语句,MATLAB提供四种决策或控制流结构: for循环、 while循环、 if-else-end结构 switch-case结构。,1、for循环:允许一组命令以固定

9、的和预定的次数重复 for x=array commands end 在for和end语句之间的命令串commands按数组(array)中的每一列执行一次. 在每一次迭代中,x被指定为数组的下一列,即在第n次循环中,x=array(:,n) 例:求1+2+100 先建立脚本文件:mysum.m mysum=0; for i=1:1:100 mysum=mysum+i; end 存盘,然后在命令窗口输入mysum,并回车。,2、While循环 与for循环以固定次数求一组命令相反,while循环以不定的次数求一组语句的值. while expression commands end 只要在表达

10、式(expression)里的所有元素为真,就执行while和end语句之间的命令串commands. 例 求1+2+100 建立脚本文件:mysum.m mysum=0; i=1; while (i=100) mysum=mysum+i; i=i+1; end 存盘,然后在命令窗口输入mysum,并回车。,3、If-Else-End结构 (1)有一个选择的一般形式是: if expression commands end 如果在表达式(expression)里的所有元素为真,就执行if和end语句之间的命令串commands. (2) 有三个或更多的选择的一般形式是: if(expressi

11、on1) commands1 elseif(expression2) commands2 elseif(expression3) commands3 end,4、 switch-case结构 witch-case语句的一般表达式: Switch case 选择判断值1 选择判断语句1 case 选择判断值2 选择判断语句2 . Otherwise 判断执行语句 End 例子: Switch code case -1 disp(error) case 0 disp(write in English) case 1 disp(write in Chinese) Otherwise disp(wri

12、te in French) End,MATLAB提供三种中断控制流结构: continue break return 。 Continue:循环中断一次,后面循环继续; Break:循环中断,后面循环不继续,后面程序继续; return:循环中断,后面循环不继续,后面程序不继续。 function show_continue_break_return for i=1:4 if i=2 continue end i end for j=i:4 j end iiii=1,for i=1:4 if i=2 break end i end for j=i:4 j end iiii=2,for i=1:4 if i=2 return end i end for j=i:4 j End iiii=3,练习二,1.有一个4X5矩阵,编程求出其最大值及其所处的位置. 2. 一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下. 求它在第10次落地时,共经过多少米?第10次反弹有多高? 3.matlab编程实现continue break return三个函数的区别 4.编程求解函数值,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号