matlab简介

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

2020/1/11matlab1MATLAB简介MATLAB(MATrixLABoratory)1.强大的数值计算和工程运算功能2.丰富的图形函数3.多种工具箱Matlab的基本数据单元是不需指定维数的矩阵。Matlab的所有计算都是通过双精度进行的,在内存中的数都是双精度的。double是一个双精度浮点数,每个存储的双精度数用64位。char用于存储字符,每个存储的字符用16位。2020/1/11matlab2Matlab中预定义变量Ans分配最新计算表达式的值,这个表达式并没有给定一个名字Eps返回机器精度Realmax返回计算机能处理的最大浮点数Realmin返回计算机能处理的最小的非零浮点数Pi,3.14159265Inf定义为1/0。当出现被零除时,Matlab就返回inf,并不中断执行而继续计算NaN定义为“NotaNumber”,这个非数值要么是%类型,要么是inf/inf2020/1/11matlab3变量列表who列出已定义的变量Whoglobal与who相同,但仅列出全局变量whoa*给出所有以a开头的变量的一个列表whos给出比命令who更详细的列表,如显示矩阵的维数whosglobal与whos相同,但仅列出全局变量2020/1/11matlab4删除与清除clear删除所有变量clearglobal删除全局变量clearall删除所有变量,全局变量,函数clearvar1var2...删除变量var1,var2,…clc清除屏幕2020/1/11matlab5退出和中断exit,quit结束Malab会话。程序完成,如果没有明确保存,则变量中的数据丢失ctrl+c中断一个Malab任务2020/1/11matlab6快捷键↑或ctrl+p恢复前面的命令↓或ctrl+n恢复当前命令之后键入的命令→或ctrl+f向右移动一个字符←或ctrl+b向左移动一个字符Delete,Backspace删除字符2020/1/11matlab711.1Matlab的特点11.1.1数值计算与符号计算功能•数值计算功能•符号计算功能•强大的科学数据可视化能力•高层绘图指令实现默认的图形表现方式•底层绘图指令更改图形属性•符号函数的可视化2020/1/11matlab811.2Matlab的基本功能11.2.1Matlab的编程环境11.2.2Matlab的程序设计基础•11.2.2.1Matlab的基本语句结构•11.2.2.2Matlab的变量操作•11.2.2.3Matlab的编程基础2020/1/11matlab911.2.1Matlab的编程环境Matlab既是一种语言,又是一种编程环境。Matlab提供了很多方便用户的工具,用于管理变量、输入输出数据以及生成和管理M文件。以下以Matlab6.0简介之。Matlab6.0的界面是一个web浏览器形式的工作环境,如下图所示。2020/1/11matlab102020/1/11matlab1111.2.2Matlab的程序设计基础用户可在Matlab的命令窗口键入一个命令,也可以由它定义的语言在编辑器中编写应用程序,Matlab软件对此进行解释后,在Matlab环境下对它进行处理,最后返回结果.2020/1/11matlab1211.2.2.1Matlab的基本语句结构Matlab以复数矩阵作为最基本的运算单元,既可以对它进行整体处理,也可以对元素进行单独处理。Matlab语言最基本的赋值语句结构为变量名列表=表达式2020/1/11matlab1311.2.2.2Matlab的变量操作1.向量向量是matlab中的一个基本单位,向量的每一个元素的运算包括1)向量的创建;2)向量的加减运算;3)向量的乘除运算2020/1/11matlab14(1)向量的创建在matlab的命令窗口键入以下字符a=[123456987]a=123456987希望得到元素从0到20,步距为2的一个向量,只需键入以下命令即可t=[0:2:20]t=24681012141618202020/1/11matlab15(2)向量的加减运算设a,b为同维向量,则c=a+b或c=a-b得到两个向量相加减的结果。向量与常数的相加减为每个元素加减这个常数。例如:b=a+2得到b=34567811109c=a+bc=4681012142018162020/1/11matlab16(3)向量的乘除运算a.向量的乘法运算点积运算的运算符为.*,其意义为两个向量的对应元素进行乘法运算,例如a=[12],b=[34]则c=a.*b=[38]^为向量的乘方运算,例如c=a.^2=[14]b.向量的除法运算2020/1/11matlab172.矩阵输入矩阵时每一行元素有分号或者回车键分隔。例如:B=[1234;5678;9101112]B=1234567891011122020/1/11matlab18Matlab中矩阵的多种运算(2)矩阵乘法:(1)矩阵转置运算:C=B'C=159261037114812D=B*CD=3070110701742781102784462020/1/11matlab19(3)矩阵点乘当两矩阵维数相同时,运算符.*的结果是两矩阵的对应元素相乘。E=[12;34];F=[23;45];G=E.*FG=2612202020/1/11matlab20(4)矩阵的乘方矩阵为方阵时,可以进行矩阵的乘方运算,运算符为^E^3ans=375481118若仅是元素进行乘方运算,可用运算符.^E.^3ans=1827642020/1/11matlab21(5)矩阵的逆矩阵逆利用函数inv计算,此时,要求矩阵方阵且可逆。X=inv(E)X=-2.00001.00001.5000-0.5000(6)矩阵元素的赋值与运算Matlab允许用户对矩阵的单个元素进行赋值和操作,Matlab此时命令方式为X(i,j)=变量名2020/1/11matlab22(7)矩阵的特征值及特征多项式a.特征值利用函数eig来计算eig(E)ans=-0.37235.3723b.特征多项式利用函数poly来计算特征多项式的系数,此时,多项式系数以降幂形式排列。p=poly(E)p=1.0000-5.0000-2.00002020/1/11matlab233.多项式(1)多项式的创建例如:s4+3s3-15s2-2s+9如果想将其输入到matlab中,只需按下列方式输入向量x=[13-15-29]x=13-15-292020/1/11matlab24(2)计算多项式的值可利用函数“polyval”计算多项式的值。例如,多项式在s=2的值为z=polyval([10001],2)z=17(3)求多项式的根若求以下多项式的根s4+3s3-15s2-2s+9roots([13-15-29])ans=-5.57452.5836-0.79510.78602020/1/11matlab25(4)多项式的乘法和除法a.多项式的乘积可利用它们系数的卷积得到MATALB的函数conv可以实现。x=[12];y=[148];z=conv(x,y)z=161616b.多项式的除法利用函数deconv可以返回两个多项式除法的结果和余数。[xx,R]=deconv(z,y)xx=12R=00002020/1/11matlab26(5)多项式的加法两个同阶多项式的相加,可用z=x+y。对于一般x和y不同维数的情况,可用自定义的函数polyadd完成function[poly]=polyadd(poly1,poly2)%polyadd(poly1,poly2)addstwopolynominalspossiblyofunevenlengthiflength(poly1)length(poly2)short=poly1;long=poly2;elseshort=poly2;long=poly1;endmz=length(long)-length(short);ifmz0poly=[zeros(1,mz),short]+long;elsepoly=long+short;end2020/1/11matlab27例z=polyadd(x,y)x=12y=148z=15102020/1/11matlab2811.2.2.3Matlab的编程基础Matlab的编程效率要比其它高级语言Basic、Fortran、Pascal、C高,且易于维护。包括有:a.M文件b.函数c.绘图2020/1/11matlab291.M文件Matlab有两种常用的方式:第一种方式,在命令窗口中直接键入命令,同时可看到运算结果.第二种方式,指用户采用任何文字处理软件编写和修改一个ASCII码文件,其扩展名必须为.m。2.函数Matlab由包括许多标准函数,每个函数都完成某一特定功能的代码组成。Matlab也允许用户编写自己所需的函数,其扩展名为.m,其中必须以关键字function开头.2020/1/11matlab303.绘图希望绘制一个作为时间函数的正弦波的图像。首先产生一个时间向量,然后计算每一时刻的正弦值。t=0:0.25:7;y=sin(t);plot(t,y)2020/1/11matlab312020/1/11matlab32(3)在图形屏幕上书写文字在图形屏幕的点(x,y)上书写文字,采用命令text(x,y,’text’)e.gtext(3,0.45,’sint’)2020/1/11matlab33(4)图形类型和颜色Matlab的图形允许用户定义点、线的类型及其颜色,其命令行格式为Plot(x,y,str)例如:‘y+’表示一个黄色的加号,而‘b--’表示一个蓝色的虚线。(5)坐标轴的设定在绘制图形时,Matlab允许手工设定坐标的范围。v=[x-minx-maxy-miny-max]2020/1/11matlab34NNToolbox简介目前最新的神经网络工具箱是NNToolboxV4.0版本,它几乎完整地概括了现在的神经网络的新成果,所设计的网络模型有:(1)感知器;(2)线性网络;(3)BP网络;(4)径向基网络;(5)自组织网络;(6)反馈网络;2020/1/11matlab35对于各种网络模型,神经网络工具箱集成了多种学习算法,为用户提供了极大的方便。最关键的是,丰富的函数可以节省的大量的编程时间。此外,神经网络工具箱中还给出了大量的示例程序,为用户轻松的使用工具箱提供生动的实用范例增加了神经网络控制的范例NN预测控制NN反馈线性化控制NN模型参考自适应控制2020/1/11matlab36在新的工具箱中有如下的几个函数,它们对任何的网络都适用。init——初始化函数sim——仿真函数train——训练函数adapt——自适应学习new**——生成新网络**p,ln,ff,elm等等2020/1/11matlab37newc竞争newcf级联前向newelmelmannewff前向newfftd时延前向newgrnn广义回归newhopHopfieldnewlin线性newlind线性网络设计newlvq学习向量量化newp感知器newpnn概率newrb辐射基newrbe准确辐射基newsom自组织竞争2020/1/11matlab38训练函数算法类型trainb批处理trainc循环重复(增量式)trainr随机训练(增量式)trains序列训练(增量式)trainbr贝叶斯BPtraincgb共轭梯度Powell-Beale重新启动traincgf共轭梯度Fletcher-Reevestraincgp共轭梯度Polak-Ribieretraingd梯度法traingda自适应梯度法traingdm动量梯度法常用前向神经网络训练算法2020/1/11matlab39续traingdx快速BP算法(gdagdm组合)trainlmLevenbe

1 / 41
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功