第一章 MATLAB入门 Chapter one: Introduction to MATLAB Matlab(Matrix Laboratory)是美国 MathWorks公司开发的一套高性能 的数值分析和计算软件,用于概念设计,算法开发,建模仿真,实时实现的理 想的集成环境,是目前最好的科学计算类软件之 MATLAB将矩阵运算、数值分析、图形处理、编程技术结合在一起, 为用户提供了一个强有力的科学及工程问题的分析计算和程序设计工具, 它还提供了专业水平的符号计算、文字处理、可视化建模仿真和实时控制 等功能,是具有全部语言功能和特征的新一代软件开发平台 MATLAB已发展成为适合众多学科,多种工作平台、功能强大的大型 软件。在欧美等国家的高校, MATLAB已成为线性代数、自动控制理论 数理统计、数字信号处理、时间序列分析、动态系统仿真等高级课程的基 本教学工具。成为攻读学位的本科、硕士、博士生必须掌握的基本技能。 在设计研究单位和工业开发部门, MATLAB被广泛的应用于研究和解决各 种具体问题。在中国, MATLAB也已日益受到重视,短时间内就将盛行起 来,因为无论哪个学科或工程领域都可以从 MATLAB中找到合适的功能。 MATLAB简史 1983年美国 Mathworks公司首次推出 MATLAB( Matrix laboratory) 之后其功能不断扩充,版本不断升级,1993年推出4.0版,95年4.2版, 97年5.0版,99年5.3版,5.X版无论是界面还是内容都有长足的进展, 其帮助信息采用超文本格式和PDF格式,可以方便的浏览。至2001年6月 推出6.1版,2002年6月推出6.5版,继而推出6.5.1版、7.0版、7.1 版、7.3( MATLAB2006b)版,最新版本为7.4(R2007a)版 从现在开始, MathWorks公司将每年进行两次产品发布,时间分别在 每年的3月和9月,而且,每一次发布都会包含所有的产品模块,如产 的 new feature、 bug fixes和新产品模块的推出。 在R2006a中( MATLAB7.2, Simulink6.4),主要更新了10个产品模 块、增加了多达350个新特性、增加了对64位 Windows的支持,并新推 出了.net工具箱
第一章 MATLAB 入门 Chapter one: Introduction to MATLAB Matlab(Matrix Laboratory)是美国 MathWorks 公司开发的一套高性能 的数值分析和计算软件,用于概念设计,算法开发,建模仿真,实时实现的理 想的集成环境,是目前最好的科学计算类软件之一。 MATLAB 将矩阵运算、数值分析、图形处理、编程技术结合在一起, 为用户提供了一个强有力的科学及工程问题的分析计算和程序设计工具, 它还提供了专业水平的符号计算、文字处理、可视化建模仿真和实时控制 等功能,是具有全部语言功能和特征的新一代软件开发平台。 MATLAB 已发展成为适合众多学科,多种工作平台、功能强大的大型 软件。在欧美等国家的高校,MATLAB 已成为线性代数、自动控制理论、 数理统计、数字信号处理、时间序列分析、动态系统仿真等高级课程的基 本教学工具。成为攻读学位的本科、硕士、博士生必须掌握的基本技能。 在设计研究单位和工业开发部门,MATLAB 被广泛的应用于研究和解决各 种具体问题。在中国,MATLAB 也已日益受到重视,短时间内就将盛行起 来,因为无论哪个学科或工程领域都可以从 MATLAB 中找到合适的功能。 MATLAB 简史 1983 年美国 Mathworks 公司首次推出 MATLAB (Matrix Laboratory), 之后其功能不断扩充,版本不断升级,1993 年推出 4.0 版,95 年 4.2 版, 97 年 5.0 版,99 年 5.3 版,5.X 版无论是界面还是内容都有长足的进展, 其帮助信息采用超文本格式和 PDF 格式,可以方便的浏览。至 2001 年 6 月 推出 6.1 版,2002 年 6 月推出 6.5 版,继而推出 6.5.1 版、7.0 版、7.1 版、7.3(MATLAB 2006b)版,最新版本为 7.4(R2007a)版。 从现在开始,MathWorks 公司将每年进行两次产品发布,时间分别在 每年的 3 月和 9 月,而且,每一次发布都会包含所有的产品模块,如产品 的 new feature、bug fixes 和新产品模块的推出。 在 R2006a 中(MATLAB 7.2,Simulink 6.4),主要更新了 10 个产品模 块、增加了多 达 350 个新特性、增加了对 64 位 Windows 的支持,并新推 出了.net 工具箱
The mathWorks於07年3月1日宣布 MATLAB及 Simulink产品家族 最新更新版本R2007a正式上市。此次改版為 The mathWorks自2006年起 实施每年兩次产品更新的标准时程。R2007a改版新增兩个新产品、82个产 改版更新及 bug fix等等。除此之外,R2007a可支援安裝英特尔( Intel) 处理器的Mac平台、 Windows vista,和64位元 Sun solaris sparc等作 业系統。 MATLAB的重要功能和主要组成部分 )功能:目前 MATLAB产品族的主要功能为 数值分析 数值和符号计算 工程与科学绘图 控制系统的设计与仿真 数字图像处理 数字信号处理 通讯系统设计与仿真 财务与金融工程 MATLAB具有用法简易、可灵活运用、程序结构强又兼具延展性的优点, 以下为其主要特色: 功能强的数值运算:在 MATLAB环境中,有超过500种数学、统计、科学 及工程方面的函数可使用,函数的标示自然,使得问题和解答像数学式子 般简单明了,让使用者可全力发挥在解题方面,而非浪费在电脑操作上 先进的资料视觉化功能: MATLAB的物件导向图形架构让使用者可执行视 觉数据分析,并制作高品质的图形,完成科学性或工程性图文并茂的文章。 高阶但简单的程序环境:做为一种直译式的程序语言, MATLAB让使用者 在短时间内写完程序,所花的时间约为用 FORTRAN或C的几分之一,而 且不需要编译( compile及联结(link)即能执行,同时包含了更多及更 容易使用的内建功能 开放及可延伸的架构: MATLAB容许使用者接触它大多数的数学原始码, 监视运算法,更改现存函数,甚至加入自己的函数使 MATLAB成为使用者 所须要的环境
The MathWorks 於 07 年 3 月 1 日宣布 MATLAB 及 Simulink 产品家族 最新更新版本 R2007a 正式上市。此次改版為 The MathWorks 自 2006 年起 实施每年兩次产品更新的标准时程。R2007a 改版新增兩个新产品、82 个产 品改版更新及 bug fix 等等。除此之外,R2007a 可支援安裝英特尔(Intel) 处理器的 Mac 平台、Windows Vista,和 64 位元 Sun Solaris SPARC 等作 业系統。 一. MATLAB 的重要功能和主要组成部分 一)功能:目前 MATLAB 产品族的主要功能为: - 数值分析 - 数值和符号计算 - 工程与科学绘图 - 控制系统的设计与仿真 - 数字图像处理 - 数字信号处理 - 通讯系统设计与仿真 - 财务与金融工程... MATLAB 具有用法简易、可灵活运用、程序结构强又兼具延展性的优点, 以下为其主要特色: • 功能强的数值运算:在 MATLAB 环境中,有超过 500 种数学、统计、科学 及工程方面的函数可使用,函数的标示自然,使得问题和解答像数学式子 一般简单明了,让使用者可全力发挥在解题方面,而非浪费在电脑操作上。 • 先进的资料视觉化功能: MATLAB 的物件导向图形架构让使用者可执行视 觉数据分析,并制作高品质的图形,完成科学性或工程性图文并茂的文章。 • 高阶但简单的程序环境: 做为一种直译式的程序语言,MATLAB 让使用者 在短时间内写完程序,所花的时间约为用 FORTRAN 或 C 的几分之一,而 且不需要编译(compile)及联结 (link) 即能执行,同时包含了更多及更 容易使用的内建功能。 • 开放及可延伸的架构: MATLAB 容许使用者接触它大多数的数学原始码, 监视运算法,更改现存函数,甚至加入自己的函数使 MATLAB 成为使用者 所须要的环境
丰富的程序工具箱: MATLAB的程序工具箱将套装前软件的优点,与一个灵 活的开放但容易操作的环境融合。这些工具箱提供了使用者在特别应用领 域所需之许多函数。现有工具箱有:符号运算(利用 Maple v的计算核心 执行)、影像处理、统计分析、讯号处理、神经网路、模拟分析、控制 系统、即时控制、系统确认、强建控制、弧线分析、最佳化、模糊逻辑、 mu分析及合成、化学计量分析等 1. MATLAB6.1的新功能 (1)全新的开发环境 GUIDE( GUI Development Environment):由早 期的单一命令窗口发展为将一些常用的交互式工作界面高度的集中 于操作桌面 (2)在命令窗口增加了错误跟踪功能( error display message and abort function): (3)提供了许多新的数值处理功能( umerical Treatment Techniques),更新了部分函数的功能和算法,增加了许多新函数 (4)在图形窗口增加了曲线拟合、数据统计等交互工具;( Curve Fitting, Data Analyzing (5)引入了类与对象及函数句柄等概念; Object;, Handle)用户可以 创建自己定义的类函数和函数句柄 (6)改进了编辑/调试器的界面及功能,( Editor/ Debugger)增加了行号 和书签等功能; (7)属性编辑器功能更强( Property Debugger),使用更方便: (8)建立了一个与以前完全不同的图形用户界面(GUI)图形窗口, ( Graphical Window)使用更加方便灵活 (9)增加了虚拟现实工具箱,( Virtual Reality Toolbox)使用标准的虚 拟现实建模语言(VRML)技术,可以创建由 MATLAB和 simulink 环境驱动的三维动画场景; (10)在应用程序接口方面增加了与Java的接口( Interface for Java) 并为二者的数据交换提供了相应的程序库。 MATLAB7的升级内容: MATLAB7针对编程环境,代码效率、数据可 视化、数学计算、文件IO等方面进行了升级,包括 开发环境
• 丰富的程序工具箱:MATLAB 的程序工具箱将套装前软件的优点,与一个灵 活的开放但容易操作的环境融合。这些工具箱提供了使用者在特别应用领 域所需之许多函数。现有工具箱有:符号运算(利用 Maple V 的计算核心 执行 )、影像处理、统计分析、讯号处理、神经网路、模拟分析、控制 系统、即时控制、系统确认、强建控制、弧线分析、最佳化、模糊逻辑、 mu 分析及合成、化学计量分析等。 1. MATLAB6.1 的新功能 (1) 全新的开发环境 GUIDE(GUI Development Environment):由早 期的单一命令窗口发展为将一些常用的交互式工作界面高度的集中 于操作桌面; (2) 在命令窗口增加了错误跟踪功能(error display message and abort function); (3) 提 供 了 许 多 新 的 数 值 处 理 功 能 (numerical Treatment Techniques),更新了部分函数的功能和算法,增加了许多新函数; (4) 在图形窗口增加了曲线拟合、数据统计等交互工具;(Curve Fitting, Data Analyzing ) (5) 引入了类与对象及函数句柄等概念;(Object,Handle) 用户可以 创建自己定义的类函数和函数句柄; (6) 改进了编辑/调试器的界面及功能; (Editor/Debugger)增加了行号 和书签等功能; (7) 属性编辑器功能更强(Property Debugger),使用更方便; (8) 建立了一个与以前完全不同的图形用户界面(GUI)图形窗口, (Graphical Window)使用更加方便灵活; (9) 增加了虚拟现实工具箱,(Virtual Reality Toolbox)使用标准的虚 拟现实建模语言(VRML)技术,可以创建由 MATLAB 和 simulink 环境驱动的三维动画场景; (10) 在应用程序接口方面增加了与 Java 的接口(Interface for Java), 并为二者的数据交换提供了相应的程序库。 MATLAB 7 的升级内容:MATLAB 7 针对编程环境,代码效率、数据可 视化、数学计算、文件 I/O 等方面进行了升级,包括: *开发环境
1、重新设计了桌面环境,针对多文档界面应用提供了简便的管理和访 问方法,允许用户自定义桌面外观,创建常用命令的快捷方式 2、增强数组编辑器( Array Editor)和工作空间浏览器( Workspace Browser)功能,用于数据的显示、编辑和处理; 3、在当前目录浏览器( Current Directory Browser)工具中,增加代码效 率分析、覆盖度分析等功能。; 4、M-Iint编码分析,辅助用户完成程序性能分析,提高程序执行效率; 5,增强M文件编辑器( M Editor),支持多种格式源代码文件可视化编 辑,例如C/C++, HTMLJJava等。 编程 1、支持创建嵌套函数( Nested Function),提供更灵活的代码模块化转化; 2、匿名函数( Anonymous Function)功能,支持在命令行或者脚本文件 中创建单行函数( Single Line Function) 3、支持条件分支断点,可以在条件分支语句中进行程序中断调试; 4、模块化注释,支持为代码段注释。 数学 1、支持整数算术运算 2、支持单精度数据类型运算,包括基本算术运算、线性代数、FFT等; 3、使用更强大的计算算法包Qhul2002.1,提供更丰富的算法支持 4、 Linsolve函数用于处理线性代数方程求解; 5、ODE求解器能够处理隐性微分方程组以及多点边界问题; *图形和3D可视化 1、新图形窗口界面 2、直接从图形窗体生成M代码,可以完成用户自定义绘图; 3、增强图形窗体注释 4、数据侦测工具( Data Exploration Tools,提供丰富的数据观测手段; 5、自定义图形对象,提供丰富的图形显示功能; 6、 GUIDE新增对用户界面和 ActiveX控件支持; 7、增强句柄图形对象支持完整地TeⅩ和 LateX字符集; 文件I/O和外部接口 新增文件ⅣO函数,支持读取任意格式文本数据文件,并且支持写
1、重新设计了桌面环境,针对多文档界面应用提供了简便的管理和访 问方法,允许用户自定义桌面外观,创建常用命令的快捷方式; 2、 增强数组编辑器(Array Editor)和工作空间浏览器(Workspace Browser)功能,用于数据的显示、编辑和处理; 3、在当前目录浏览器(Current Directory Browser)工具中,增加代码效 率分析、覆盖度分析等功能。; 4、M-Lint 编码分析,辅助用户完成程序性能分析,提高程序执行效率; 5,增强 M 文件编辑器(M Editor), 支持多种格式源代码文件可视化编 辑,例如 C/C++, HTML,Java 等。 * 编程 1、支持创建嵌套函数(Nested Function),提供更灵活的代码模块化转化; 2、匿名函数(Anonymous Function)功能,支持在命令行或者脚本文件 中创建单行函数(Single Line Function); 3、支持条件分支断点,可以在条件分支语句中进行程序中断调试; 4、模块化注释,支持为代码段注释。 * 数学 1、支持整数算术运算; 2、支持单精度数据类型运算,包括基本算术运算、线性代数、FFT 等; 3、使用更强大的计算算法包 Qhull 2002.1,提供更丰富的算法支持; 4、Linsolve 函数用于处理线性代数方程求解; 5、ODE 求解器能够处理隐性微分方程组以及多点边界问题; * 图形和 3D 可视化 1、新图形窗口界面; 2、直接从图形窗体生成 M 代码,可以完成用户自定义绘图; 3、增强图形窗体注释; 4、数据侦测工具(Data Exploration Tools),提供丰富的数据观测手段; 5、自定义图形对象,提供丰富的图形显示功能; 6、GUIDE 新增对用户界面和 ActiveX 控件支持; 7、增强句柄图形对象支持完整地 TeX 和 LaTeX 字符集; * 文件 I/O 和外部接口 1、新增文件 I/O 函数,支持读取任意格式文本数据文件,并且支持写
入 Excel和HDF5格式数据文件; 2、具有压缩功能的MAT文件格式,支持快速数据文件ⅣO能力; 3、 javaaddpath函数,无需重新启动 MATLAB就可完成Java类的加载、 删除等功能; 4、支持COM、服务器事件以及ⅤBS 5、支持SOAP,使用网络服务; 6、FTP对象,直接访问FTP服务器; 7、支持 Unicode编码格式,增强MAT文件字符集; 性能与系统平台支持 1、JI加速器支持所有数值数据类型 2、 WindowsⅫP系统下支持3GB内存访问。 R2007a的改版內容 *在 MATLAB产品家族部分的重点: 1.可於多核心和多个处理器的系統上,利用 MATLAB数学函式,处理多 执行绪( Multithreaded)运算 2.新版分散式运算工具箱(CT)具备4个运算引擎,可在同一台电脑上 执行平行运算 3.統計工具箱( Statistics toolbox)具备新的类別資料和資料阵列; 4.定点工具箱( Fixed- Point toolbox)可加快C语言的编译速度; 5.利用控制系統工具箱( Control system Toolbox)对延滯的控制迴路 精准建模及分析; 6.可利用系統辨识工具箱( System Identification Toolbox)产生非线 性模型; 7.基因演算法及直接法搜尋工具箱( Genetic Algorithm and Direct Search toolbox)提供模拟退火法( Simulated annealing)。 *在 Simulink产品家族部分新增的功能:
入 Excel 和 HDF5 格式数据文件; 2、具有压缩功能的 MAT 文件格式,支持快速数据文件 I/O 能力; 3、javaaddpath 函数,无需重新启动 MATLAB 就可完成 Java 类的加载、 删除等功能; 4、支持 COM、服务器事件以及 VBS; 5、支持 SOAP,使用网络服务; 6、FTP 对象,直接访问 FTP 服务器; 7、支持 Unicode 编码格式,增强 MAT 文件字符集; * 性能与系统平台支持 1、JIT 加速器支持所有数值数据类型; 2、Windows XP 系统下支持 3GB 内存访问。 ⚫ R2007a 的改版內容 * 在 MATLAB 产品家族部分的重点: 1.可於多核心和多个处理器的系統上,利用 MATLAB 数学函式,处理多 执行绪(Multithreaded)运算; 2. 新版分散式运算工具箱(DCT)具备 4 个运算引擎,可在同一台电脑上 执行平行运算; 3. 統計工具箱(Statistics Toolbox)具备新的类別資料和資料阵列; 4. 定点工具箱(Fixed-Point Toolbox)可加快 C 语言的编译速度; 5. 利用控制系統工具箱(Control System Toolbox)对延滯的控制迴路 精准建模及分析; 6. 可利用系統辨识工具箱(System Identification Toolbox)产生非线 性模型; 7. 基因演算法及直接法搜尋工具箱(Genetic Algorithm and Direct Search Toolbox)提供模拟退火法(Simulated annealing)。 * 在 Simulink 产品家族部分新增的功能: