matlab教程全课件PPT.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《matlab教程全课件PPT.pptx》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 教程 课件 PPT
- 资源描述:
-
1、1 课程的作用课程的作用 课程的目的课程的目的 课程的特点课程的特点 课程安排课程安排2课程的作用课程的作用 在欧美各在欧美各高等学校高等学校,MatlabMatlab成为线性代数、自动控制理论、成为线性代数、自动控制理论、数字信号处理、时间序列分析、动态系统仿真、图像处理等数字信号处理、时间序列分析、动态系统仿真、图像处理等诸多课程的基本教学工具,成为诸多课程的基本教学工具,成为本科生、硕士生和博士生的本科生、硕士生和博士生的必须掌握的基本技能。必须掌握的基本技能。 在在设计研究单位和工业部门设计研究单位和工业部门,MatlabMatlab已被广泛地用于研究已被广泛地用于研究和和解决各种具体
2、的工程问题解决各种具体的工程问题。 可以预见,可以预见,MatlabMatlab将在我国科学研究和工程应用中发挥越将在我国科学研究和工程应用中发挥越来越大的作用。来越大的作用。3 讲授讲授MATLABMATLAB语言基础入门知识语言基础入门知识,介绍,介绍MATLABMATLAB产品的体系、产品的体系、MATLABMATLAB桌面工具桌面工具的使用方法,的使用方法,重点介绍重点介绍MATLABMATLAB的数据可视化、数值计算的基本步骤的数据可视化、数值计算的基本步骤以及以及如何使如何使用用MATLABMATLAB语言编写整洁、高效、规范的程序。语言编写整洁、高效、规范的程序。并涉及到一些具体
3、的并涉及到一些具体的专业应用工专业应用工具箱具箱(如:信号处理工具箱、图像处理工具箱等)。(如:信号处理工具箱、图像处理工具箱等)。 通过本课程的学习,通过本课程的学习,了解、熟悉、掌握了解、熟悉、掌握 MATLABMATLAB的基本编程方法的基本编程方法,并具有初并具有初步的利用计算机处理、解决实际问题的能力步的利用计算机处理、解决实际问题的能力,为进一步学习后续的专业课程做,为进一步学习后续的专业课程做好准备。好准备。本课程的目的本课程的目的( Objectives of This CourseObjectives of This Course ) 本课程的特点本课程的特点( Featur
4、es of This CourseFeatures of This Course ) 交叉性课程,是交叉性课程,是计算机技术计算机技术、数学理论数学理论知识以及诸多知识以及诸多工程理论工程理论知识的综合。知识的综合。 实践性课程。实践性课程。 内容多,课时少,要求同学上课认真听讲,要充分利用上机实践消化、理解、内容多,课时少,要求同学上课认真听讲,要充分利用上机实践消化、理解、 掌握课上讲解内容。掌握课上讲解内容。4课程安排课程安排 课堂教学:共课堂教学:共2424学时;学时;(1-121-12周)周) 上机试验:共上机试验:共2424学时。学时。 (2-132-13周,周二周,周二7-87-
5、8节,九实节,九实401401、402402、403403)p 学习成绩:学习成绩: 1)上机实验成绩占上机实验成绩占30%;30%; 2)考勤考勤 10% ;10% ; 3) 考试考试60% 60% (随堂考试)(随堂考试)。主要参考书主要参考书 精通精通MATLAB 6.5MATLAB 6.5张志涌张志涌 等编著,北航出版,等编著,北航出版,20032003年年 高等应用数学问题的高等应用数学问题的MatlabMatlab求解求解 薛定宇等著,清华大学出版薛定宇等著,清华大学出版社,社,20042004年年 MatlabMatlab程序设计与应用程序设计与应用 刘卫国主编,高等教育出版社刘
6、卫国主编,高等教育出版社5授课宗旨授课宗旨 讲授讲授MATLAB的通用功能。的通用功能。 寓教于例,由浅入深。寓教于例,由浅入深。 关于科学计算,着重强调理论概念、算法和实际计算三者关于科学计算,着重强调理论概念、算法和实际计算三者之间的关系。之间的关系。6第一讲第一讲 Matlab概述 前言前言 MatlabMatlab软件概述软件概述 MatlabMatlab的桌面环境及入门知识的桌面环境及入门知识71 Matlab1 Matlab概述概述 内容内容MatlabMatlab发展历史发展历史MatlabMatlab产品家族产品家族( (MatlabMatlab family of produ
7、ctsfamily of products) )体系体系Matlab Matlab 语言的特点。语言的特点。 目的目的全面了解全面了解 MatlabMatlab软件包软件包激发对激发对MatlabMatlab软件的学习兴趣。软件的学习兴趣。81.1 MATLAB的历史及影响的历史及影响 7070年代中期年代中期,Cleve MolerCleve Moler博土及其同事在美国国家基金会博土及其同事在美国国家基金会的帮助下,开发了的帮助下,开发了LINPACKLINPACK和和EISPACKEISPACK的的FORTRANFORTRAN语言语言子程序库,子程序库,这两个程序库代表了当时矩阵运算的最
8、高水平。这两个程序库代表了当时矩阵运算的最高水平。到了到了7070年代后期年代后期,身为美国新墨西哥州大学计算机系系主,身为美国新墨西哥州大学计算机系系主任的任的CIeve MolerCIeve Moler,在给学生上线性代数课时,为了让学生,在给学生上线性代数课时,为了让学生能使用这两个子程序库,同时又不用在编程上花费过多的能使用这两个子程序库,同时又不用在编程上花费过多的时间,开始着手用时间,开始着手用FORTRANFORTRAN语言为学生编写使用语言为学生编写使用LINPACKLINPACK和和EISPACKEISPACK的接口程序,他将这个程序取名为的接口程序,他将这个程序取名为MAT
9、LABMATLAB,其名称是由其名称是由MATrixMATrix和和 LABoratoryLABoratory(矩阵实验室)(矩阵实验室)两个单词的前三个字母所合成两个单词的前三个字母所合成。在在19781978年年,MalabMalab就面世了。这个程序获得了很大的成功,就面世了。这个程序获得了很大的成功,受到了学生的广泛欢迎。在以后的几年里,受到了学生的广泛欢迎。在以后的几年里,MatlabMatlab在多所在多所大学里作为教学辅助软件使用,并作为面向大众的免费软大学里作为教学辅助软件使用,并作为面向大众的免费软件广为流传。件广为流传。Cleve Moler9 将将MATLABMATLAB
10、商品化的不是商品化的不是Cleve MolerCleve Moler, ,而是一个名叫而是一个名叫Jack LittleJack Little的人。当免费的的人。当免费的MATLABMATLAB软件到软件到StanfordStanford大学,大学,Jack LittleJack Little正在该正在该校主修校主修控制控制,便接触到了当时,便接触到了当时MATLABMATLAB,直觉告诉他,这是一个,直觉告诉他,这是一个具有巨大发展潜力的软件。因此他在毕业沒多久,就开始具有巨大发展潜力的软件。因此他在毕业沒多久,就开始用用C C语语言重新编写了言重新编写了MATLABMATLAB的核心。的核
11、心。在在MolerMoler的协助下,于的协助下,于19841984年成年成立立MathWorksMathWorks公司,首次推出公司,首次推出MATLABMATLAB商用版。在其商用版推出商用版。在其商用版推出的初期,的初期,MATLABMATLAB就以其优秀的品质(就以其优秀的品质(高效的数据计算能力和开高效的数据计算能力和开放的体系结构放的体系结构)占据了大部分数学计算软件的市场,原来应用于)占据了大部分数学计算软件的市场,原来应用于控制领域里的一些封闭式数学计算软件包(如英国的控制领域里的一些封闭式数学计算软件包(如英国的UMISTUMIST、瑞、瑞典的典的LUNDLUND和和SIMN
12、ONSIMNON、德国的、德国的KEDDCKEDDC)就纷纷被淘汰或在)就纷纷被淘汰或在MATLABMATLAB上重建。上重建。Jack Little10 Cleve MolerCleve Moler至今仍是该公司的首席科学家至今仍是该公司的首席科学家,他以,他以6060多岁的高龄,还常常亲自进行撰写多岁的高龄,还常常亲自进行撰写程序的工作,非常令人佩服。如果你有数值运算方面的高水平问题,寄到程序的工作,非常令人佩服。如果你有数值运算方面的高水平问题,寄到 MathWorks MathWorks 后,后,大部份还是会由大部份还是会由 Cleve MolerCleve Moler亲自回答。在亲自
13、回答。在19941994年,年,PentiumPentium芯片曾发生芯片曾发生FdivFdiv的的bugbug, 当时当时Cleve MolerCleve Moler是第一个以软件方式解决此是第一个以软件方式解决此 bugbug的人,曾一时脍炙人口。的人,曾一时脍炙人口。 在公司初创的五年,在公司初创的五年,Jack LittleJack Little非常辛苦,常常身兼数职(董事长、总经理、推销、非常辛苦,常常身兼数职(董事长、总经理、推销、程序开发等),但公司一直稳定发展,从当初的一人公司,到程序开发等),但公司一直稳定发展,从当初的一人公司,到19931993年的年的200200人,到人
14、,到20002000年的年的 500500余人,到余人,到20052005年公司员工达到了年公司员工达到了13001300人,不但打败其他竞争软件,而且前景一片欣欣向人,不但打败其他竞争软件,而且前景一片欣欣向荣。根据荣。根据Jack LittleJack Little个人说法,个人说法,MATLABMATLAB早期成功的两大因素是:选用了早期成功的两大因素是:选用了C C语言及选定语言及选定PCPC为主为主要平台,这似乎和微软的成功有相互呼应之妙。要平台,这似乎和微软的成功有相互呼应之妙。 MathWorksMathWorks公司,目前仍然是私人企业,并未上市,这和公司,目前仍然是私人企业,
15、并未上市,这和Jack LittleJack Little个人理念有关,个人理念有关,他认为他认为MATLABMATLAB的设计方向应该一直是以顾客的需求与软件的完整性为首要目标的设计方向应该一直是以顾客的需求与软件的完整性为首要目标,而不是以盈,而不是以盈利为主要目的,因此利为主要目的,因此MATLABMATLAB一直是在稳定中求进步,而不会因为上市而遭受股东左右其发展一直是在稳定中求进步,而不会因为上市而遭受股东左右其发展方向。这也是为什么方向。这也是为什么MATLABMATLAB新版本总是姗姗来迟的原因,因为他们不会因为市场的需求而推新版本总是姗姗来迟的原因,因为他们不会因为市场的需求而
16、推出不成熟的产品。此外,由于出不成熟的产品。此外,由于Jack LittleJack Little保守的个性,也使得保守的个性,也使得MathWorksMathWorks不曾跨足不曾跨足MATLAB/SimulinkMATLAB/Simulink以外的行业,当前商场上纷纷扰扰的并购或分家,以外的行业,当前商场上纷纷扰扰的并购或分家,MathWorksMathWorks完全是绝缘体。完全是绝缘体。11 1992 1992年,支持年,支持Windows 3.xWindows 3.x的的MATLAB 4.0MATLAB 4.0版本推出,增加了版本推出,增加了SimulinkSimulink,Cont
17、rolControl,Neural NetworkNeural Network,Signal ProcessingSignal Processing等专用工具箱。等专用工具箱。 1993 1993年年1111月,月,MathWorksMathWorks公司推出了公司推出了Matlab 4.1Matlab 4.1,其中主要增加了符号运算功能。,其中主要增加了符号运算功能。当升级至当升级至Matlab 4.2cMatlab 4.2c,这一功能在用户中得到广泛应用。,这一功能在用户中得到广泛应用。 1997 1997年,年,Matlab 5.0Matlab 5.0版本问世了版本问世了, ,实现了真正
18、的实现了真正的3232位运算,加快数值计算,图形表现位运算,加快数值计算,图形表现有效。有效。 2001 2001年初,年初,MathWorksMathWorks公司推出了公司推出了Matlab 6.0Matlab 6.0(R12R12)。)。 2002 2002年年7 7月,推出了月,推出了Matlab 6.5(R13)Matlab 6.5(R13),在这一版本中,在这一版本中SimulinkSimulink升级到了升级到了5.05.0,性能有,性能有了很大提高,另一大特点是推出了了很大提高,另一大特点是推出了JITJIT程序加速器,程序加速器,MatlabMatlab的计算速度有了明显的的
19、计算速度有了明显的提高。提高。 2005 2005年年9 9月,推出了月,推出了MAILAB 7.1(Release14 SP3)MAILAB 7.1(Release14 SP3),在这一版本中,在这一版本中SimulinkSimulink升级到了升级到了6.36.3,软件性能有了新的提高,用户界面更加友好。值得说明的是,软件性能有了新的提高,用户界面更加友好。值得说明的是,Matlab V7.1Matlab V7.1版版采用了更先进的数学程序库,即采用了更先进的数学程序库,即“LAPACK”LAPACK”和和“BLAS”BLAS”。 目前,目前,MatlabMatlab软件支持多种系统平台,
20、如常见的软件支持多种系统平台,如常见的WindowsNT/XPWindowsNT/XP、UNIXUNIX、LinuxLinux等。等。Matlab版本的发展版本的发展median(X):返回向量X的中值。A = 4,15,-45,10,6;56,0,17,-45,0;三维数组,可对应至一个 X - Y - Z 三维立体坐标,如下图所示:函数文件可以带输入参数,也可以返回输出参数。 将程序的一些主要中间结果输出到命令窗口,从而确定错误的区段。*x),x); %数组乘符号.可以查看命令窗口输入过的命令或语句表达式按与常规相同的优先级自左至右执行运算。1 -8 -13subplot(3,2,1),
21、plot(t, y); title(Lins style is default)t = 0:199.然后在命令窗口调用该函数文件:if nargin = 26、算术运算 (续)计算函数在自变量采样“格点”上的函数值,即z=f(x,y)。、创建一维数组变量(续)h = stem(t,cos(t);执行命令:whos A,得到如下结果:三维数组元素的寻址:可以(行、列、页)来确定。subplot(224);stem(x,y,k);12 MATLABMATLAB就是这样经过了近就是这样经过了近3030年的专门打造、年的专门打造、2020多年的千锤百炼,它以高性能多年的千锤百炼,它以高性能的的数组运算
22、(包括矩阵运算)数组运算(包括矩阵运算)为基础,不仅实现了大多数数学算法的为基础,不仅实现了大多数数学算法的高效运行函高效运行函数数和和数据可视化数据可视化,而且提供了非常高效的,而且提供了非常高效的计算机高级编程语言计算机高级编程语言,在用户可参与的,在用户可参与的情况下,情况下,各种专业领域的工具箱各种专业领域的工具箱不断开发和完善,不断开发和完善,MATLABMATLAB取得了巨大的成功,已取得了巨大的成功,已广泛应用于广泛应用于科学研究、工程应用,用于数值计算分析、系统建模与仿真科学研究、工程应用,用于数值计算分析、系统建模与仿真。 早在早在2020世纪世纪9090年代初年代初,欧美等
23、发达国家的大学就将,欧美等发达国家的大学就将MATLABMATLAB列为一种必须掌握列为一种必须掌握的编程语言。近几年来,国内的很多大学也将的编程语言。近几年来,国内的很多大学也将MATLABMATLAB列为了本科生必修课程。列为了本科生必修课程。 与与MapleMaple、MathematicaMathematica数学计算软件相比,数学计算软件相比,MATLABMATLAB以数值计算见长,而以数值计算见长,而MapleMaple等以符号运算见长,能给出解析解和任意精度解,而处理大量数据的能力远不如等以符号运算见长,能给出解析解和任意精度解,而处理大量数据的能力远不如MATLABMATLAB
24、。 MATLABMATLAB软件功能之强大、应用之广泛,已成为为软件功能之强大、应用之广泛,已成为为2121世纪最为重要的科学计算世纪最为重要的科学计算语言语言。可见学习掌握这一工具的重要性。可见学习掌握这一工具的重要性。 13 MATLABMATLAB产品由若干模块组成,不同的模块完成不同的功能,其中有:产品由若干模块组成,不同的模块完成不同的功能,其中有: 实际上实际上MATLABMATLAB本身就是一个极其丰富的资源库,那么应该从哪一部分开始着手、学本身就是一个极其丰富的资源库,那么应该从哪一部分开始着手、学习使用习使用MATLABMATLAB呢?这就有必要了解这一软件产品的体系结构呢?
25、这就有必要了解这一软件产品的体系结构 。MATLAB CompilerMATLAB Compiler这种编译器可以将这种编译器可以将MATLABMATLAB程程序文件编译生成标准的序文件编译生成标准的C/C+C/C+语言文件,而生成语言文件,而生成的标准的的标准的C/C+C/C+文件可以被任何一种文件可以被任何一种C/C+C/C+编译编译器编译生成函数库或可执行文件,以提高程序的器编译生成函数库或可执行文件,以提高程序的运行效率。运行效率。1.2 MATLAB1.2 MATLAB产品的体系结构产品的体系结构 MATLABMATLABMATLAB ToolboxesMATLAB Toolboxe
展开阅读全文