资源描述
单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,欢 迎 学 习,微机应用软件,课时安排:,1,、,Matlab,简介,32,学时,2,、数据与图像处理,(Origin,、,Photoshop)4,学时,参考数目:,1,、,计算物理基础,彭芳麟 高等教育出版社,2,、,计算机在材料科学中的应用,许鑫华,机械工业出版社,数学物理方程的,MATLAB,解法与可视化,彭芳麟 清华大学出版社,4,、,大学物理习题计算机解法,MATLAB,编程应用,钟季康 机械工业出版社,学习要求:,1,、准备一个笔记本兼作业本。,2,、自己独立编程。,第,1,章,MATLAB,简介,MATLAB,是英语,Matrix Laboratory(,矩阵实验室,),的缩写,MATLAB,是当今国际上公认的在,科技领域最为优秀的应用软件和开发环境,。在欧美各高等院校,,MATLAB,已经成为应用线性代数、自动控制理论、数据统计、数字信号处理、图形处理等高级课程的基本数学工具,是理工科本科生、硕士生、博士生必须掌握的基本技能。在设计研究单位和工业部门,,MATLAB,已经超出实验室,广泛用于研究和解决具体的工程问题。,国内部分重点高校已作为理工学生的必修或选修课。,现在,Matlab,已经成为一个系列产品:,主包,中有数百个高度优化的,内部函数,。,工具包,(Toolbox,),,又分为两类:,功能性工具包,主要用来扩充,MATLAB,的数值分析、矩阵运算、数字信号处理、符号计算功能、图形建模仿真功能、文字处理功能、与硬件实时交互功能。这种工具包能用于多种学科。,学科性工具包 是专业性比较强的,,如:,控制系统工具包,(Control System Toolbox),、,通信工具包,(Communication Toolbox),、,图象处理工具包,(Image Processing Toolbox),、,统计工具包,(Statistic Toolbox),偏微分方程工具包,(Partial Differential Equation Toolbox),Matlab,语言的特点:,1,、极强的数值计算功能、作图功能和符号,计算功能。,数值计算主要内容:,矩阵的创建和保存,数值矩阵代数、乘方运算和分解,数组运算,多项式和有理分式运算,数理统计分析、差分和数值导数,用于求积分和微分方程的数值解和功能函数等。,在此环境下,所解问题的,Matlab,语言表述形式和其数学表达形式相同,不需要按传统的方法编程。,利用,MATLAB,可以轻易地绘制二维、三维曲线,三维曲面,并可进行图形和坐标的标识、坐标控制、图形的迭绘、视角和光照设计、色彩精细控制等及绘制动画,简单易行。,Matlab,语言的特点:,2,、用户使用方便,语句简单,内涵丰富。,MATLAB,是一种面向科学与工程计算的高级语言,允许,用数学形式的语言编写程序。,Matlab,语言是一种,解释执行,的语言,它灵活、方便,其调试程序手段丰富,调试速度快,需要学习时间少。,把编辑、编译、连接和执行融为一体,。它能在同一画面上进行灵活操作,快速排除输入程序中的书写错误、语法错误以至语意错误,从而加快了用户编写、修改和调试程序的速度。,Matlab,语言的特点:,3,、最受人欢迎的特点,开放性。,除内部函数外,所有,MATLAB,主包文件和各工具包文件都是可改的源文件。用户通过对源文件的修改,或加入自己编写的文件去构成新的专用工具包。,高版本的,Matlab,已逐步扩展到科学及工程计算的其它领域。因此,不久的将来,它一定能名符其实地成为,“万能演算纸式的”科学算法语言。,1.1 MATLAB,的操作界面,1,、操作界面介绍,菜单项;,工具栏;,【Command Window】,指令窗口;,【Command History】,指令记录窗口;,【Workspace】,内存空间窗口;,【Current Directory】,当前工作目录窗口;,MATLAB,操作窗口,双击桌面快捷键,启动软件。,接受命令的窗口,1.1.2,、指令窗的功能,1.,数值计算,2*sin(pi/3)+5*i-22/3,注意事项,变量名要区分大小写,应该指定输出变量名,?,怎样改变数字属性和字体,File/Preference,常用指令,who,列出内存中的变量名,Type,显示指定文件的内容,whos,列出内存中的变量名及其性质,clear,清除内存,帮助系统指令,help,指令名,常用符号,;,不显示结果,命令延续到下一行,重新调入上一命令行,重新调入下一命令行,关于变量,命名规则,字母打头,后面可以为字母、数字、下划线等,但不 能为空格符、标点。,区分大小写,Abc ABc,例:,MYvar12,、,12Myvar_,、,MY_Var12,、,_MyVar12,保存和查询,所有变量都保存在工作内存空间,workspace,中。,whos,查询、,clear,清除。,MATLAB,的保留常量,ans,预设的计算结果变量名,i,或,j,虚数单位,eps,正,的极小值,=2.2204e-16,inf,值,如,1/0,pi,3.1415926,NaN,不定值,如,0/0,/,2,、数据格式,:,10,的幂为,e,加上正负数字:,1.062e-20 6.022e23,数字后直接加,i,或,j,表示虚数:,3.14i 5+3i,3,、算符,算术运算算符:*,/()sqrt(),关系运算算符:、,逻辑运算算符:与,、或,、非,4,、表达式,从左至右、指数最先,乘除加减、括号提前。,例,1,:,6+4*32,ans=,42,x=(5+cos(47*pi/180)/(1+sqrt(7)-2i),例,2,:,计算表达式的值,并将结果赋给变量,x,例,9,:演示内带程序,ballode,%,自由下落小球与地面非弹性碰撞的运动轨迹,demo,%,演示,Matlab,的基本功能,Matlab,功能展示,例,1,:求解线性方程组,在,Matlab,指令窗口输入命令:,a=2,3,-1;8,2,3;45,3,9;,b=2;4;23;,x=inv(a)*b,x1=ab,例,2,:绘制正弦曲线和余弦曲线,,在指令窗口输入命令:,x=0:0.5:360*pi/180;,%x,从,0,0,到,360,0,并转换为弧度,plot(x,sin(x),x,cos(x),%,绘制正弦曲线和余弦曲线,例,3,:输入,10,个学生的成绩并对成绩按升序排序。,在指令窗口输入命令:,g=input(,请输入学生成绩,:),sort(g),请输入学生成绩,:65 78 96 98 91 84 79 83 74 81,1.2,数据格式与算符,数据分类:标量(,scalar,)、矢量(,vector,)、矩阵(,matrix,)、列阵(,array,),数据网格(,meshgrid,)、基元列阵(,cell array,),结构列阵(,structure array,),1.2.1,向量的输入,1.2.2,矩阵,1.2.2.1,矩阵的生成、标识与修改,1.2.2.1,矩阵的生成、标识与修改,1,、矩阵的输入,直接输入法,用空格或逗号分割同一行的元素,用分号结束一行元素,用方括号括起整个矩阵。,B=16 3 2 13;5 10 11 8;9 6 7 12;4 15 14 1,B=,16 3 2 13,5 10 11 8,9 6 7 12,4 15 14 1,A=1 2,6 9 8,A=,1 2 6 9 8,使用矩阵编辑器!,2,、矩阵的标识方式,标识元素是指标识某个、某行或某列元素,例:,A=16 3 2 13,5 10,11,8,9 6 7 12,4 15 14 1,怎样标识,11,?,A(2,3)或A(10),B,1,B,4,B,7,B,2,B,5,B,8,B,3,B,6,B,9,B(k),注意:按列排列!,A,1,1,A,1,2,A,1,3,A,2,1,A,2,2,A,2,3,A,3,1,A,3,2,A,3,3,A(i,j),行标与列标,注意,:,a.,在,查找,矩阵元素,A(i,j),时,若,i,j,超出了矩阵行数和列数,则显,示出错信息。,b.,储存,元素,A(i,j),时,若,i,j,超出,了矩阵行数和列数,则矩阵自动,扩充并以零填补没有输入的元素。,1.2.2,矩阵,冒号算符,用法,1,:生成矢量、矩阵,M=1:10,%,步长为,1,的行矢量,M=,1 2 3 4 5 6 7 8 9 10,B=0:pi/4:pi,%,步长为,/4,的行矢量,B=,0 0.7854 1.5708 2.3562 3.1416,用法,2,:表示矩阵的一部分或者一行或一列的全部元素,如:,A(:,j),矩阵,A,的第,j,列,A(i,:),矩阵,A,的第,I,行,A(1:k,j),矩阵,A,的第,j,列的前,k,个元素,小知识:,end,表示最后一个元素,如:,A(end,j),矩阵,A,的第,j,列的,最后一个元素,A(i,end),矩阵,A,的第,I,行的最后一个元素,M(10:-1:4),%M,的第十个元素和第四个元素的倒排,ans=,10 9 8 7 6 5 4,?,A(end,:),3,、指令函数生成矩阵,zeros,零矩阵,ones,全部元素为,1,的矩阵,eye,单位矩阵,rand,均匀分布的随机数矩阵,magic,幻方阵,randn,n,维正态分布的随机数矩阵,cell,空矩阵,diag,对角矩阵或提取对角元,linspace,等间距的矢量,logspace,对数等分的行矢量,Diag(a,k),k=o,是主对角线,,k 0,在主对角线上,,k Z=zeros(2,4),Z=,0 0 0 0,0 0 0 0,F=5*ones(3,3),F=,5 5 5,5 5 5,5 5 5,R=randn(4,4),R=,-0.4326 -1.1465 0.3273 -0.5883,-1.6656 1.1909 0.1746 2.1832,0.1253 1.1892 -0.1867 -0.1364,0.2877 -0.0376 0.7258 0.1139,a=1,3,5;,diag(a),ans=,1 0 0,0 3 0,0 0 5,diag(a,-1),ans=,0 0 0 0,1 0 0 0,0 3 0 0,0 0 5 0,diag(a,1),ans=,0 1 0 0,0 0 3 0,0 0 0 5,0 0 0 0,magic(3),ans=,8 1 6,3 5 7,4 9 2,eye(3),ans=,1 0 0,0 1 0,0 0 1,LINSPACE(x1,x2,N),在,x1,x2,产生,N,个等间距的点,linspace,等间距的矢量,linspace(2,5,6),ans=,2.0000 2.6000 3.2000 3.8000 4.4000 5.00000,Logspace(x1,x2,n),生成从,10,x1,到,10,x2,包含,n,个数据的矢量,logspace(1,3,3),ans=,10 100 1000,logspace,对数等分的行矢量,cell(3),ans=,Magic(n),为元素,1,到,n2,之间,行、列、对角线,的和都相等的,n,维矩阵,4,、修改矩阵合并,用一些小矩阵建造大矩阵,A=1 2 3;4 5 6;7 8 9,A=,1 2 3,4 5 6,7 8 9,B=A A+10;A+20 A+30,B=,1 2 3 11 12 13,4 5 6 14 15 16,7 8 9 17 18 19,21 22 23 31 32 33,24 25 26 34 35 36,27 28 29 37 38 39,删除行或列,A(:,2)=,删去第,2,列,A=,1 3,4 6,7 9,注意:,如果从矩阵中删去一个,元素,则其不成为一个矩阵,A(1,2)=,可以用一个指标的表达式提取、,删,去一个元素或一个元素序列,剩,余元素将构成一个列矢量,.,A(2:2:6),ans=,4 3 9,A(2:2:6)=,A=,1 7 6,?,B1=B(1:2:end,:),作业,P94,:,1,、,2,、,3,、,5,再见,
展开阅读全文