Matlab基础及其应用

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

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

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

资源描述

Matlab基础及其应用主讲教师:李浩刘大刚holly@uestc.edu.cn物理电子学院教师简介MATLAB课程介绍定位:公共基础选修课目标:了解MATLAB,能够熟练掌握数学(矩阵)运算,简单编程,简单的数据处理、符号运算及基本图形绘制.对MATLAB面向对象编程与simulink有基本了解。参考教材:MATLAB基础及应用参考书目:《Matlab程序设计教程》,李海涛、邓樱,高等教育出版社/2005.5.1《精通MATLAB6.5版》,张志涌,北京航空航天大学出版社/2003.3《科学运算语言MATLAB5.3程序设计及应用》,薛定宇,清华大学出版社/2000《数值方法和MATLAB实现与应用》,拉克唐瓦尔德(美),机械工业出版社/2004.9特点:完全不必具备其它语言的基础,各年级各专业的同学都可选修。MATLAB课程安排学时:32学时(基于matlab6.5版本)安排:讲课16学时,上机16学时考核要求:实验报告必须齐备。考核方式:实验报告上机安排从9月21日(也就是下个星期四)起,每个星期四安排为上机时间。上机地点:主楼东312(物电机房)上机时间:18:00~20:0020:00~22:00主要内容1.Matlab概述与入门;2.数据类型和运算;3.数值计算;4.符号运算;5.数据和函数的可视化;6.Matlab编程;第一章MATLAB语言概述一、MATLAB产生的历史背景CleveMoler博士CleveMolerischairmanandchiefscientistatTheMathWorks.Molerwasaprofessorofmathandcomputerscienceforalmost20yearsattheUniversityofMichigan,StanfordUniversityandtheUniversityofNewMexico.在70年代中期,CleveMoler博士和其同事在美国国家科学基金的资助下开发了调用EISPACK和LINPACK的FORTRAN子程序库.EISPACK是特征值求解的FORTRAN程序库,LINPACK是解线性方程的程序库.在当时,这两个程序库代表矩阵运算的最高水平.一、MATLAB产生的历史背景1983年春天,CleveMoler到Standford大学讲学,MATLAB深深地吸引了工程师JohnLittle。JohnLittle敏锐地觉察到MATLAB在工程领域的广阔前景,同年,他和CleveMoler,SteveBangert一起,用C语言开发了第二代专业版。这一代的MATLAB语言同时具备了数值计算和数据图示化的功能。JackLittleCEO/FounderJackLittleispresident,CEO,andaco-founderofTheMathWorks,Inc.Hewasaco-authorandprincipalarchitectofearlyversionsofthecompany'sflagshipMATLABproductaswellastheSignalProcessingToolboxandtheControlSystemsToolbox.MATLAB的第一个商业化的版本是1984年推出的是3.0的DOS版本1992年MathWorks公司于推出了4.0版本,1994年的4.2版本扩充了4.0版本的功能,尤其在图形界面设计方面更提供了新的方法。1997年推出的5.0版允许了更多的数据结构,如单元数据、多维矩阵、对象与类等,使其成为一种更方便编程的语言。1999年推出的MATLAB5.3版在很多方面又进一步改进了MATLAB语言的功能。2000年10月底推出了其全新的MATLAB6.0正式版(Release12),在核心数值算法、界面设计、外部接口、应用桌面等诸多方面有了极大的改进。2002年6月发布了其全新的MATLAB6.5正式版(Release13)2004年5月推出Matlab7.0时至今日,经过MathWorks公司的不断完善,MATLAB已经发展成为适合多学科,多种工作平台的功能强大的大型软件。在国外,MATLAB已经经受了多年考验。在欧美等高校,MATLAB已经成为线性代数,自动控制理论,数理统计,数字信号处理,时间序列分析,动态系统仿真等高级课程的基本教学工具;成为攻读学位的大学生,硕士生,博士生必须掌握的基本技能。在设计研究单位和工业部门,MATLAB被广泛用于科学研究和解决各种具体问题。在国内,特别是工程学术界,MATLAB也逐步盛行起来。可以说,无论你从事工程方面的哪个学科,都能在MATLAB里找到合适的功能。1.语言简洁紧凑,使用方便灵活,库函数极其丰富;2.运算符丰富;3.兼聚结构化与面向对象编程的特性;4.程序设计自由度大;5.良好的程序可移植性;6.强大的图形功能;7.功能性工具箱和学科性工具箱;8.源程序的开放性。二、MATLAB的语言特点线性方程组求解nnnnnnnnnnbxaxaxabxaxaxabxaxaxa22112222212111212111nnnnnnnnbbbxxxaaaaaaaaa2121212222111211当D=|A|≠0,方程组有解,可用Cramer法则求解。线性方程组求解DDxDDxDDxnn,,,2211nnnnnnaaaaaaaaaD212222111211nninninnniiniiiaabaaaabaaaabaaD1,1,121,221,22111,111,111N阶行列式的计算需要n!次乘法,求解n阶线性方程组,共需要做(n+1)!次乘法。如n=20,则,需做:21!=5.10909×1019线性方程组求解数值求解方法:1.直接法Gauss消去法、Gauss-Jordan消去法、矩阵分解法等。2.迭代法Jacobi迭代法、Gauss-Seidel迭代法和超松弛迭代法等。线性方程组求解Matlab求解过程:4.1541.2426.33321321321xxxxxxxxx数据统计与处理一个工厂生产三种橄榄球用品:防护帽、垫肩、臀垫。需要不同数量的:硬塑料、泡沫塑料尼龙线、劳动力。为监控生产,管理者对它们之间的关系十分关心。为把握这些量的关系,列出下面的表格原料产品防护帽垫肩臀垫硬塑料422泡沫塑料132尼龙线133劳动力322原料产品关系表订单1订单2订单3订单4防护帽35206045垫肩10155040臀垫20124520管理者接到四份订单如上表所示。问应该如何计算每份订单所需的原材料,以便组织生产?204512204050151045602035223331231224BAC=22014647532010589300205125101345225165114370255输入下面Matlab指令A=[423;132;133;322];B=[35206045;10155040;…20124520];C=A*B考虑一个实际编程例子如何编写一个能求出两个矩阵相乘的计算机通用子程序?是否正确?错误,未考虑其一为标量加入标量判定,是否就是通用程序了?错误,考虑其一或二者为复数矩阵MATLAB实现:C=A*B0123456-1-0.8-0.6-0.4-0.200.20.40.60.81例、用简短命令计算并绘制在0x6范围内的sin(2x)、sinx2、sin2x。x=linspace(0,6)y1=sin(2*x),y2=sin(x.^2),y3=(sin(x)).^2;plot(x,y1,x,y2,x,y3)用四种方法描述cos(x)*sin(y)图形-505-4-2024-1-0.500.51-505-4-2024-1-0.500.51-4-2024-4-3-2-101234MATLAB包含两个部分:核心部分和各种可选的工具箱。核心部分中有数百个核心内部函数。工具箱又分为两类:功能性工具箱和学科性工具箱。功能性工具箱主要用来扩充其符号计算功能,图示建模仿真功能,文字处理功能以及与硬件实时交互功能。功能性工具箱可用于多种学科。学科性工具箱是专业的,如(control、signalproceessing、commumnication)toolbox等。这些工具箱都是由该领域内学术水平很高的专家编写的,所以用户无需编写自己学科范围内的基础程序。matlab工具箱MATLAB主工具箱符号数学工具箱SIMULINK仿真工具箱控制系统工具箱信号处理工具箱图象处理工具箱通讯工具箱系统辨识工具箱神经元网络工具箱金融工具箱三.Matlab界面与初步操作workspace指令窗口菜单工作目录选择栏快捷工具栏Commandwindow运行入门最简单的计算器使用法;数值、变量和表达式;指令行中的标点符号;计算结果的图形表示;求的运算结果。23)]47(212[(12+2*(7-4))/3^2ans=2指令输入提示符Answer的缩写简单矩阵的输入步骤:A=[1,2,3;4,5,6;7,8,9]A=123456789指令续行输入S=1-1/2+1/3-1/4+...1/5-1/6+1/7-1/8S=0.6345续行符号数值、变量和表达式数值的记述;变量命名规则;Matlab默认的预定义变量;运算符和表达式;复数和复数矩阵;Matlab采用习惯的十进制表示:-990.0011.3e-34.5e33数值范围:10e-308~10e308大小写敏感;首字母为英文(少于63个字符);变量名不包含空格、标点;画出衰减振荡曲线及其它的包络线。的取值范围是。teyt3sin330tey]4,0[t=0:pi/50:4*pi;y0=exp(-t/3);y=exp(-t/3).*sin(3*t);plot(t,y,'-r',t,y0,':b',t,-y0,':b')grid051015-1-0.500.512222)sin(yxyxz画出所表示的三维曲面,的取值范围是[-8,8]clear;x=-8:0.5:8;y=x';X=ones(size(y))*x;Y=y*ones(size(x));R=sqrt(X.^2+Y.^2)+eps;Z=sin(R)./R;surf(X,Y,Z);colormap(cool)xlabel('x'),ylabel('y'),zlabel('z')-10010-10010-0.500.51xyzMatlab编辑器界面

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

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

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

×
保存成功