Matlab
-
MATLAB7.0编程基础王家文,王皓,刘海编著大家一定想又轻松、又快捷的学习一种功能强大的编程软件吧?MATLAB7.0会让你体会到学习编程其实并不累啊!他简便易学:和C语言等大同小异,而且使用更为简便,具有一般语言基础的用户很快就可以掌握.计算功能强大:MATLAB拥有庞大的数学、统计及工程函数,可使用户立刻实现所需的强大数学计算功能。先进的可视化工具:MATLAB提供功能强大的、交互式的二维和三维绘图功能,可用户创建富有表现力的彩色图形。开放性、可扩展性强:M文件是可见的MATLAB程序,所以用户可以查看源代码。特殊应用工具箱:MATLAB的工具箱加强了对工程及科学中特殊应用的支持。很简单吧!本书针对美国MathWorks公司推出的最新.MATLAB 7.0软件作为介绍对象,详细介绍了MATLAB软件的基本用法和MATlLAB语言的基本结构。本书共分9章,第1章说明MATLAB特点、MATLAB软件基本的使用方法;第2章~第4章讲解MATLAB数值运算和符号运算;第5章介绍MATLAB数据类型、控制语句、IO操作以及面向对象技术;第6章~第8章从MATLAB图形对象、图形对象的操作和GUI设计来说明MATLAB图形功能;第9章讲解MATLAB软件的Simulink技术。本书是专为初学者尽快入门而编写的,内容简明扼要,并配以大量的实例,便于读者理解。本书免费附赠光盘,并提供了书中算例的源代码供读者参考。
-
精通Matlab与C/C++混合程序设计刘维编著本书主要介绍如何运用Matlab与C/C进行混合程序设计。本书全面详细介绍了MatlabC数学库、MatlabC数学库、Matcom、MatlabCOMBuilder、MatlabEngine及编译Matlab独立可执行程序等Matlab混合程序设计的内容。本书共分为7章,主要内容包括:Matlab编程的基础知识、MatlabC语言接口、如何生成可独立运行的Matlab程序、在VisualC中调用Matlab程序、Matcom、MatlabCOMBuilder与VisualC混编程以及在VisualC中调用MatlabC数学库。本书各章都包含大量的实例程序,可供寻求将Matlab程序脱离Matlab环境的Matlab程序设计人员、寻求高效算法库的C/C开发人员学习和参考。本书采用的开发和运行环境为:VisualC6.0与Matlab6.5。[前言]最早接触Matlab是在大学期间参加“大学生数学建模竞赛”的时候,那时候惟一的感觉就是“相见恨晚”。接着在读研究生做课题的时候,开始使用Matcom编译Matlab程序以期获得更快的处理速度,使用Matcom的C矩阵库以期在享受高效率矩阵运算库的同时,实现和VisualC6.0开发环境的无缝连接。后来,MathWorks公司将Matcom收购并将其功能整合到Matlab中。直到Matlab6.5的推出,Matlab与C/C混合编程增加了MatlabC语言接口、MatlabC数学库、MatlabCOMBuilder和Matcom等诸多内容,由此Matlab与C/C进行混合程序设计的方法也派生出诸多“门派”。MatlabC语言接口即Matlab提供的一组C语言API函数以供用户调用。这组C语言API函数是Matlab和用户C代码之间的桥梁。用户可以在Matlab的MEX文件中调用C语言API函数,也可以在纯C/C开发环境中调用C语言API函数。MatlabC数学库是Matlab提供的一组封装好的矩阵运算数学库,其使用方法和Matlab环境中的编写方法非常相似,如果用户用VC(为了书写方便,书中出现的VC是VisualC的简写)实现用户界面,而又希望寻找一组高效的矩阵运算数学库的话,MatlabC数学库是一个不错的选择。MatlabCOMBuilder可以将Matlab的用*.m文件表达的函数编译为COM组件。这也是MathWorks公司推荐的一种进行Matlab混合编程的方法。很多用Matlab编译器编译有错误的文件用MatlabCOMBuilder却能很好地解决。只是具体操作起来,在VC中调用COM组件比调用C数学库和C语言API函数略微复杂。Matcom是第一个可以将Matlab的*.m文件编译为C/C代码的工具。现在,MathWorks公司已经将其集成到Matlab中,没有必要再使用Matcom来编译*.m文件了。但是Matcom的C矩阵库仍然有使用的价值,相对于MatlabC数学库来说,其使用起来更为简单和方便。可以看出,上述各种Matlab与C/C混合程序设计的方法各有千秋,具体使用时还要结合开发者的具体情况。但无论使用哪种方法,Matlab的数据结构与C/C的数据结构之间的相互访问和转换都是关键,这也是本书的重点所在,希望读者在读本书的过程中注意。本书的所有源代码都可以在附带的光盘中找到。另外,为了与书中程序对应及保证全文体例上的统一,本书中的符号全部采用正体书写。由于作者的水平有限,如果读者对本书的内容有疑问或者发现书中有错误的地方,请发送邮件到matlab_vc_program@yahoo.com.cn与作者讨论或批评指正,谢谢!在本书的编写过程中得到了很多同志的支持与帮助。特别感谢李璐、李群、路瑞强、伍炜、周志勇、王国房六位同志,由于本书涉及VisualC6.0与Matlab程序设计的诸多方面,很多关键问题都是在与六位同志的讨论中解决的。不仅如此,他们还为本书提供了很多的宝贵资料。感谢齐春溪女士不辞辛劳地完成了本书所有章节的初步排版工作,并且找出了本书初稿中的诸多错误。最后感谢所有对本书的完成提供过帮助的人们,没有他们的帮助和付出,本书也不可能完成。
-
MATLAB在化学中的应用许国根等编著MATLAB语言是一种简单、高效、功能极强的高级语言,在科学与工程计算领域中有着其他语言无法比拟的优势。本书以MATLAB5.X和6.X版本为对象,从实际应用的角度对MATLAB在化学研究中的应用作了浅显易懂的介绍。书中通过列举各种实际例子,既介绍了MATLAB的一般用法,包括常用命令、语法规则、矩阵运算、数学函数及二、三维图形的绘制,又介绍了比较复杂的数值计算、图形用户界面和工具箱函数回调的编写方法。本书重点阐述了如何利用MATLAB解决化学研究中的实际问题,介绍了数值计算、绘图及优化、统计、神经网络和模糊逻辑等工具箱函数的应用;通过介绍实例和实际编写MAT:LAB程序,使读者能够熟练应用MATLAB语言实现并改进各种算法。本书可作为高等学校化学、化工及环境保护各专业及材料、医药、卫生等一些相关专业师生的参考教材,对从事上述领域工作的广大科技工作者和开发应用人员也具有重要的参考价值。对于其他学科领域的读者,本书也不失为一本极好的参考书。
-
MATLAB实用教程苏金明,阮沈勇编本书结合MATLAB最新版本7.0全面介绍MATLAB数值计算、图形笔程序设计等3个方面的内容。数值计算部分紧密结合大学教学课程进行介绍,包括高等数学、线性代数、计算方法、概率论与娄重 统计、最优化方法和偏微分方程数值解等的MATLAB实现。图形部分介绍二维、三维图形的绘制和编辑,以及科学计算可视化、计算几何等。程序设计部分介绍M文件设计、图形用户界面设计、文件操作、编译和接口等内容。 本书内容十分丰富,且与大学基础课程密切相关,可作为高等学校相关专业的的教材或辅助教材,也可供MATLAB爱好者入门、自学和参考。
-
智能控制及其MATLAB实现李国勇编著内容简介目录本书系统地论述了神经网络控制、模糊逻辑控制和模型预测控制系统的基本概念、工作原理、控制算法及其利用MATLAB和Simulink实现的方法。该书取材先进实用,讲解深入浅出,各章均有大量用MATLAB编写的仿真实例,便于读者掌握和巩固所学知识。 本书可作为从事智能控制与智能系统研究、设计和应用的科学技术人员的参考用书,也可作为高等院校自动化、计算机、电子和通信以及机电工程等专业研究生和高年级本科生的教材。今天,随着科学技术的迅猛发展,神经网络正以极大的魅力吸引着世界上众多专家、学者为之奋斗。人工神经网络特有的非线性适应性信息处理能力,克服了传统人工智能方法对于直觉,如模式、语音识别、非结构化信息处理方面的缺陷,使之在神经专家系统、模式识别、智能控制、组合优化、预测等领域得到成功应用。人工神经网络与其他传统方法相结合,将推动人工智能和信息处理技术不断发展。近年来,人工神经网络正向模拟人类认知的道路上更加深入发展,与模糊系统、遗传算法、进化机制等结合,形成计算智能,成为人工智能的一个重要方向,将在实际应用中得到发展。模糊控制作为结合传统的基于规则的专家系统、模糊集理论和控制理论的成果而诞生,它是以模糊集合论、模糊语言变量及模糊逻辑推理为基础的一种计算机控制。在模糊控制中,并不是像传统控制那样需要对被控过程进行定量的数学建模,而是试图通过从能成功控制被控过程的领域专家那里获取知识,即专家行为和经验。从线性控制与非线性控制的角度分类,模糊控制是一种非线性控制;从控制器智能性看,模糊控制属于智能控制的范畴,而且它已成为目前实现智能控制的一种重要而又有效的手段。模糊神经网络控制在控制领域里已经成为一个研究热点,其原因在于两者之间的互补性质。神经网络和模糊系统均属于无模型的估计器和非线性动力学系统,也是一种处理不确定性、非线性和其他不确定问题的有力工具。模型预测控制(Model Predictive Control,MPC)是20世纪80年代初开始发展起来的一类新型计算机控制算法。该算法直接产生于工业过程控制的实际应用,并在与工业应用的紧密结合中不断完善和成熟。模型预测控制算法采用了多步预测、滚动优化和反馈校正等控制策略,因而具有控制效果好、鲁棒性强、对模型精确性要求不高的优点。广义预测控制作为一种新型的远程预测控制方法,集多种算法的优点为一体,具有较好的性能,受到人们的重视。该算法以CARIMA模型为基础,采用了长时段的优化性能指标,结合辨识和自校正机制,具有较强的鲁棒性和模型要求低等特点,并有广泛的适用范围。这个算法可克服广义最小方差(需要试凑控制量的加权系数)、·极点配置(对阶的不确定性十分敏感)等自适应算法中存在的缺点。近年来,广义预测控制算法在国内外控制理论界已引起了广泛的重视,它可看成是迄今所知的自校正控制方法中最为接近具有鲁棒性的一种。神经网络、模糊逻辑和预测控制等新学科相结合,正在显示出其巨大的应用潜力.针对神经网络、模糊逻辑和预测控制的迅速推广应用,MathWorks公司在其MATLAB版中添加了神经网络、模糊逻辑和预测控制工具箱。该工具箱由长期从事神经网络、模糊逻辑和预测控制研究与开发工作的有关专家和技术人员编制。工具箱提供了许多进行神经网络、模糊逻辑和侦测控制设计和分析的工具函数,这给用尸带来了极大的方便。即使不了解算法的本质,也可以直接应用功能丰富的函数来实现自己的目的。这些函数编程简单,可为使用者节省大量的编程时间,使其能够把更多的精力投入到网络设计而不是具体程序实现上。本书就是本着把当前国际控制界最为流行的面向工程与科学计算的高级语MATL~d3与神经网络、模糊逻辑和预测控制结合起来的宗旨编写的。本书主要从三个方面阐述了神经网络、模糊逻辑和预测控制系统的数字仿真方法。第1种方法为采用MATLAB语言根据具体的控制算法编程进行仿真;第2种方法为利用MATLAB提供的神经网络、模糊逻辑和预测控制工具箱函数直接进行仿真;第3种方法为根据Simulink动态仿真环境进行仿真。其中,第2种方法最为简单,它不需要了解算法的本质;第3种方法最为直观,它可以在运行仿真时观察仿真结果;第1种方法最为复杂,它需要了解算法的本质,要根据不同的控制算法进行具体编程,但这种方法也最为灵活,使用者可以根据自己所提出的新算法任意编程,该方法主要用于对某种新控制算法的仿真和应用。当然,利用其他计算机语言也可根据控制算法进行具体编程,但相比较而言,以利用MATLAB编程最为简单,原因是MATLAB具有强大的矩阵运算和图形处理功能。而第2种和第3种方法较适合于初学者,主要用于对某种成熟控制算法的仿真和应用。全书分3篇共9章,系统地论述了神经网络控制、模糊逻辑控制和模型预测控制的基本概念、工作原理和控制算法及其利用MATLAB和Simulink对其实现的方法。本书可作为高等院校自动化、计算机和机电工程等电子信息类专业本科生和研究生的教材,也可作为从事智能控制与智能系统研究、设计和应用的科学技术人员的参考用书。鉴于本书的通用性和实用性较强,故它也可作为从事自动控制及相关专业的教学、研究、设计人员和工程技术人员的参考用书。在本书的出版过程中,电子工业出版社应用电子技术图书事业部张榕编辑和高等教育教材事业部韩同平编辑给予了大力支持与帮助,作者在此表示深深的谢意。作者还要特别感谢参考文献中所列教材、专著及论文的作者们,正是这些优秀的作品为作者提供了非常丰富的营养,使得作者能够在自己的教学与科研的基础上汲取各家之长,形成一本具有自己特色的著作。由于作者水平有限,书中难免有遗漏与不当之处,恳请各位专家和广大读者批评指正。 第1章神经网络控制理论1.1神经网络的基本概念1.1.1生物神经元的结构与功能特点1.1.2人工神经元模型1.1.3神经网络的结构1.1.4神经网络的工作方式1.1.5神经网络的学习1.1.6神经网络的分类1.2典型神经网络的模型1.2.1MP模型1.2.2感知机神经网络1.2.3自适应线性神经网络1.2.4 BP神经网络1.2.5径向基神经网络1.2.6竞争学习神经网络1.2.7学习向量量化(LVQ)神经网络1.2.8Elman神经网络1.2.9 Hopfield神经网络1.2.10Boltzmann神经网络1.2.11神经网络的训练1.3神经网络控制系统1.3.1神经控制的基本原理1.3.2神经网络在控制中的主要作用1.3.3神经网络控制系统的分类第2章MATLAB神经网络工具箱函数2.1感知机神经网络工具箱函数9 9线性神经网工具箱函数. 2.3BP神经网络工具箱函数2.4径向基神经网络工具箱函数2.5自组织神经网络工具箱函数2.6学习向量量化(LVQ)神经网络工具箱函数2.7Elman神经网络工具箱函数2.8Hopfield神经网络工具箱函数2.9MATLAB神经网络工具箱的图形用户界面第3章基于Simulink的神经网络控制系统3.1基于Simulink的神经网络模块-3.1.1模块的设置3.1.2模块的生成3.2基于Simulink的三种典型神经网络控制系统3.2.1神经网络模型预测控制3.2.2反馈线性化控制3.2.3模型参考控制第二篇摸糊逻辑控制及其MATLAB实现第4章模糊逻辑控制理论4.1模糊逻辑理论的基本概念4.1.1模糊集合及其运算4.1.2模糊关系及其合成4.1.3模糊向量及其运算4.1.4模糊逻辑规则4.1.5模糊逻辑推理4.2模糊逻辑控制系统的基本结构4.2.1模糊控制系统的组成4.2.2模糊控制器的基本结构4.2.3模糊控制器的维数4.2.4模糊控制中的几个基本运算操作4.3模糊逻辑控制系统的基本原理4.3.1模糊化运算4.3.2数据库4.3.3规则库-4.3.4模糊推理-4.3.5清晰化计算4.4离散论域的模糊控制系统的设计4.5具有PID功能的模糊控制器第5章MATLAB模糊逻辑工具箱函数5.1MATLAB模糊逻辑工具箱简介5.1.1模糊逻辑工具箱的功能特点5.1.2模糊推理系统的基本类型5.1.3模糊逻辑系统的构成5.2利用模糊逻辑工具箱建立模糊推理系统5.2.1模糊推理系统的建立、修改与存储管理5.2.2模糊语言变量及其语言值5.2.3模糊语言变量的隶属度5.2.4模糊规则的建立与修改5.2.5模糊推理计算与去模糊化5.3MATLAB模糊逻辑工具箱的图形用户界面5.3.1模糊推理系统编辑器(Fuzzy)5.3.2隶属度函数编辑器(Mfedit)5.3.3模糊规则编辑器(Ruleedit)5.3.4模糊规则浏览器(Ruleview)5.3.5模糊推理输入输出曲面视图(Suffview)5.4基于Simulink的模糊逻辑的系统模块第6章模糊神经和模糊聚类及其MATLAB实现6.1基于标准模型的模糊神经网络6.1.1模糊系统的标准模型6.1.2系统结构6.1.3学习算法6.2基于Takagi-Sugeno模型的模糊神经网络6.2.1模糊系统的Takagi-Sugeno模型6.2.2系统结构6.2.3学习算法63MATLAB模糊神经工具箱函数6.3.1模糊神经系统的建模函数6.3.2采用网格分割方式生成模糊推理系统函数6.3.3MATLAB模糊神经推理系统的图形用户界面6.4 MATLAB模糊聚类函数6.4.1模糊C-均值聚类函数6.4.2减法聚类函数6.4.3基于减法聚类的模糊推理系统建模函数第三篇预测控制及其MATLAB实现第7章预测控制理论7.1动态矩阵控制理论7.1.1预测模型7.1.2滚动优化7.1.3误差校正7.2广义预测控制理论7.2.1预测模型-7.2.2滚动优化7.2.3反馈校正7.3预测控制理论分析7.3.1广义预测控制的性能分析7.3.2广义预测控制与动态矩阵控制规律的等价性证明7.3.3广义预测控制与动态矩阵控制的比较第8章MATlAB预测控制工具箱函数8.1系统模型辨识函数8.1.1数据向量或矩阵的归一化8.1.2基于线性回归方法的脉冲响应模型辨识8.1.3脉冲响应模型转换为阶跃响应模型8.1.4模型的校验8.2系统模型建立与转换函数8.2.1模型转换8.2.2模型建立8.3基于阶跃响应模型的控制器设计与仿真函数8.3.1输入/输出有约束的模型预测控制器设计与仿真8.3.2输入/输出无约束的模型预测控制器设计8.3.3计算由阶跃响应模型构成的闭环系统模型8.4基于状态空间模型的预测控制器设计函数8.4.1输入/输出有约束的状态空间模型预测控制器设计8.4.2输入/输出无约束的状态空间模型预测控制器设计8.4.3状态估计器设计8.5系统分析与绘图函数8.5.1计算和绘制系统的频率响应曲线8.5.2计算频率响应的奇异值8.5.3计算系统的极点和稳态增益矩阵8.5.4系统分析和绘图8.6通用功能函数8.6.1通用模型转换8.6.2方程求解8.6.3离散系统的分析第9章隐式广义预测自校正控制及其MATLAB实现9.1单输入单输出系统的隐式广义预测自校正控制算法9.2多输入多输出系统的隐式广义预测自校正控制算法9.3仿真研究9.3.1单输入单输出系统的仿真研究9.3.2多输入多输出系统的仿真研究附录A隐式广义预测自校正控制仿真程序清单附录BMATLAB函数一览表附录CM灯LAB函数分类索引参考文献
-
MATLAB 7.0在图像处理中的应用罗军辉等编著本书深入浅出、系统全面地介绍了MATLAB 7.0在数字图像处理中的应用。结合数字图像处理的一些最新技术和发展趋势,以及大量的MATLAB 7.0实例,循序渐进地讲解了MATLAB 7.0在数字图像中的应用,使读者能够尽快理解和掌握使用MATLAB 7.0的数字图像处理工具对图像进行处理的方法。 全书共分12章,第1-5章详细讲解了数字图像处理的一些基本知识,包括图形的显示、图像的绘制、基本操作和变换等;第6-11章讲解了一些主要的图像处理技术的实用方法,包括图像增强和复原、图像编码及压缩、形态学等的应用;第12章主要介绍了小波在图像处理中的应用,并给出了两个具体应用实例。 本书可作为高等院校大学本科、专科教材或资料参考书,也适用于广大从事图像处更换的工程技术人员。
-
MATLAB 7基础与提高飞思科技产品研发中心编著本书是”MATLAB应用技术”毓丛书之一,全百系统地会绍了MATLAB7这个功有强大的软件,全书共分11章,首先详细讲解了MATLAB数值运算、符号运算、程序设计初步和基本绘图功能;然后列举了很多诮用实例,旨在通过实践操作巩固前百所学习的知识;最后讲述了MATLAB的高及部分,包括图形用户界面设计、Simulink、Notbook、几种常用的工具箱,以及外部程序接口知识等。本书可作为理工科各专业的高年级本科生、研分生学习MATLAB的辅助教材,也可作为希望在这一领域进行研究和应用的科技工作者的参考书。
-
计算方法王能超编著本书是从《计算方法》(人民教育出版社,1978年)一书几经改版而成的,各种版本都受到读者广泛的欢迎,累计已发行数十万册。这次再版在内容处理上有创新。本书坚持“简单的重复生成复杂”的理念,运用某种算法设计技术统一了各种数值算法,其设计原理容易理解,设计方法容易掌握。为便于读者自学,本书附加了“例题选解”以及“常用算法的MATLAB文件汇集”等有关材料。本书可供本科、专科各类院校的不同专业作为普及计算方法知识的教材,亦可供工程技术人员阅读参考。
-
C语言与MATLAB接口李传军编著本书以简洁的语言、丰富的实例系统地介绍了C语言与MATLAB接口函数(称之为:C-MEX函数)的编程方法。用实例详细地介绍了MATLAB中所提供的数据类型在C-MEX函数中的编程方法。这些数据类型主要包括:双精度(double)以及非双精度(single、uint8、uint16、uint32、uint64、int8、int16、int32、int64)的数值阵列(如:标量、矢量、矩阵及三维阵列)、字符串、structures阵列、cell阵列、sparse阵列等。同时,介绍了如何在C-MEX函数中实现调用MATLAB函数;如何用MATLAB本身所提供的BLAS库函数、LAPACK库函数实现C-MEX函数编程;以及如何用外接IntelMKL库函数实现C-MEX函数编程。并给出用C-MEX函数实现MATLAB中的svd、eig、lu、chol、inv、det等数学函数功能的实例,这些库函数的使用可以明显提高运算速度。同时,本书附录还介绍了在C-MEX函数中的错误语法示例、MEX库函数及MX库函数。本书对C-MEX函数的介绍全面,举例详尽。不仅能够成为MATLAB与MEX混合编程的工程人员的参考书,而且可以作为C语言编程者的参考书,同时也可以作为MATLAB培训的课程教材。
-
MATLAB 7辅助信号处理技术与应用飞思科技产品研发中心编著本书是“MATLAB应用技术”系列丛书之一,介绍了信号与系统基础知识、常用信号变换、离散系统结构、IIR数字滤波器设计、FIR数字滤波器设计、平稳信号分析、非平稳信号分析、高斯信号分析以及信号处理的GUI实现。其中,信号与系统基础知识包括连续信号与模型、离散信号与模型;常用信号变换包括Z变换、ChirpZ变换、FFT变换、DCT变换和Hilbert变换等;离散系统结构包括IIR、FIR和Lattice结构;IIR滤波器设计包括模拟和数字低通、高通、带通与带阻滤波器设计,以及基于冲激响应不变法和双线性Z变换法的IlR滤波器设计等;FIR滤波器设计包括基于窗函数、频率抽样法和切比雪大逼近法的FIR滤波器设计;平稳信号分析包括经典功率谱估计、基于参数模型的功率谱估计和基于非参数模型的功率谱估计;非平稳信号分析包括STFT变换、Gabor展开、Wigner-Ville分布与Choi-Williams分布;非高斯信号分析包括基于非参数法的双谱估计、基于参数模型的双谱估计,以及双谱估计的应用;信号处理的GUI实现包括滤波器设计与分析的FDATool工具和滤波器设计与信号分析的SPTool工具。■本书可作为理工科各专业的高年级本科生、研究生学习信号处理的辅助教材,也可作为希望在这一领域进行研究和应用的科技工作者的参考书。