MATLAB科学计算宝典

当前位置:首页 > 计算机网络 > 程序设计 > MATLAB科学计算宝典

出版社:电子工业出版社
出版日期:2012-5
ISBN:9787121166471
作者:刘正君
页数:400页

章节摘录

版权页:   插图:    (1)只有使用以下数据类型,MATLAB才会对其加速:logical、char、int8、uint8、int16、uint16、int32、uint32、double,而语句中如果使用的数据不是上述类型(比如:numeric、cell、structure、single、function handle、java classes、user classes、int64、uint64和稀疏矩阵),则不会加速。 (2) MATLAB不会对超过三维的数组进行加速。 (3)当使用for循环结构时,只有遵守以下3条规则才会被加速。 for循环的范围只用标量值来表示。 for循环内部的每一条语句都要满足上面第1条和第2条规则,即只使用支持加速的数据类型和三维以下的数组; 循环结构内只调用了内建函数(build-in function)。 (4)使用if (elseif)、while和switch时,条件测试语句中只有标量值,将加速运行。 (5)不要在一行中写入多条语句,这样会减慢运行速度,且不利于调试。建议用户不要编写如下语句格式: x=A.name;for k=1:20000,y(k)=sin(x(k));end; 程序规范编译器需要猜测的事情就越少,效率自然越高。 (6)当语句改变了原来变量的数据类型或形状(大小、维数)时,将会减慢运行速度。 (7)应使用复常量形式,如x=7+2i,而不是x=7+2*i,后者会降低运行速度。 (8)在程序结构上,应该遵守以下3条规则。 尽量避免使用循环和循环嵌套。在多层循环中,外环次数执行少、内环次数多时,可显著提高速度。 向量化设计M文件可以利用矩阵语言的特点,有些for循环和while循环可等价写为向量或者矩阵操作。 尽量用向量化的运算语句来代替循环结构。比如下面的程序: i=0; for t=0:.01;10 i=i+1 y(i)=sin(t); end 可以替换为 t=0:.01:10; y=sin(t); 常使用向量技术的函数有:All、diff、permute、permute、reshape、squeeze、any、find、logical、prod、shiftdim、sub2ind、cums、um、ind2sub、ndgrid、repmat、sort和sum等。 MATLAB文档中还有一句补充:在向量化程序代码的时候还要注意执行加速的情况,用户还可以用MATLAB JIT 加速器加速自己的代码。因此,用户需要根据实际情况来确定向量化自己的程序。

前言

  MATLAB是一款适合不同专业的人士解决问题的软件,最大的特色在于其根据需要不断扩充工具箱。即使不是专业的软件开发人员,也可以调用MATLAB中的工具箱进行计算,再借助通用数据类型交换数据,从而可以借用MATLAB强大的科学计算功能。  随着科学的发展,使用数值仿真来验证定理或者结论的方式已经成为一种重要的手段。它具有快速、节省成本以及灵活多变等特点。而MATLAB已经在数值仿真任务中占有统治地位。同时,它的版本每年更新两次,及时扩充自身的功能,应用专业领域广泛。这一点是很多同类软件无法比拟的。  MATLAB软件是基于C语言和FORTRAN语言编写的。但是MATLAB对很多功能都已经函数化,即一个复杂的计算任务,在MATLAB中常常用一条语句就可以实现。对于初学者,该软件很容易入门。随着使用者对研究问题的深入,可以积累MATLAB程序,常用的程序段可以写成函数文件的形式,有一定数目程序的文件之后,就可以建立自己的“工具箱”。本书内容的编写从简单问题入手,逐步扩展到专业问题的求解。对MATLAB函数的介绍采用统一的格式进行详细说明,同时给出大量实例帮助读者理解函数的功能。  熟练应用MATLAB需要一定时间,读者在安装好MATLABR2008a版本后,可以运行本书给出的程序,通过修改参数查看输出变化来了解MATLAB函数的功能。另外需要注意的一点是,本书介绍的少部分函数属于MATLABR2008a特有的,较低版本因缺少相应函数会出现错误提示。为了节省读者输入程序的时间,本书配备含书中MATLAB代码的光盘,为程序代码实现高效率复用提供便利条件。  主要内容  本书全面讲解MATLAB数值计算和数据可视化仿真方面的功能。全书分为4篇,共27章,具体的内容如下。  第1篇基础篇,包括第1~6章。首先介绍MATLAB安装方法和一些基本的操作知识。对于新手来说,了解基本操作是非常重要的。然后介绍数据类型、向量和矩阵的使用,它们是编程的基础。随后介绍不同类型的表达式,它们是进行数值计算的纽带。接下来介绍程序结构与优化设计,讲解主要的程序结构、程序加速与调试方面的知识。最后介绍不同类型文件的处理方法及文件批量处理的方法。  第2篇科学计算,包括第7~15章。介绍MATLAB求解高等数学知识方面的一些函数功能。首先介绍线性方程组与超越方程的求解方法,解方程在很多问题中都可能遇到,通过本篇的介绍,读者可以了解不同类型方程的解法。然后介绍数据拟合与插值的MATLAB实现,它们是数据处理的常用工具。随后介绍最值问题的解法,因为很多问题的最优结果往往是最大值或者最小值,这部分内容可以帮助读者找到最佳答案。接下来介绍随机数的使用,它们是一些经典算法的基础,如蒙特-卡罗算法、随机布朗运动等;介绍微分方程组的求解和一些积分表达式的计算,它们是高等数学的基石;介绍常用数学变换的MATLAB实现,它们是进行信号和图像处理的重要工具。最后介绍一些特殊函数的MATLAB计算方法。  第3篇数据可视化仿真,包括第16~18章。主要介绍图形的绘制与编辑、用户图形界面设计方面的知识。首先介绍二维图形的绘制,其中包括绘图函数的功能介绍、图形对象的编辑方法、特殊图形的绘制、多图的布局方法、基本图像处理函数介绍、制作动画的方法,以及图形的保存等知识。随后介绍三维图形绘制方面的知识,如基本函数的介绍、彩色图的绘制与编辑、无色网格曲面的绘制、视角与光照效果的设置、图形的注释等知识。通过这些内容,读者可以掌握常见图形的绘制。最后介绍基本的用户图形界面设计,利用这方面的知识,读者可以进行人机交互操作,可以辅助动态过程的研究。  第4篇科学问题编程,包括第19~27章。介绍不同专业问题的编程实现。首先介绍基本的建模知识,学习它们可以辅助求解专业问题。然后介绍混沌方面部分现象的模拟,如离散与微分方程中的分岔混沌现象的计算、混沌吸引子、Lyapunov指数等;介绍分形图形的几种绘制方法,如递归、迭代函数系统、L系统等;介绍元胞自动机方面的基础知识,如奇偶规则、砂堆规则等;介绍晶体生长的模拟,其中主要以扩散限制凝聚为基础展开介绍;介绍几种光学现象的模拟,如鱼眼效果、全息、干涉现象的模拟。介绍几种机械运动的仿真,如凸轮与连杆的运动。随后介绍MATLAB在经济学中的应用,主要是通过MATLAB在数值计算和统计学方面建立在该领域的应用扩展。最后介绍几种常用算法的原理和程序实现。  本书特色  MATLAB论坛技术版版主10年实战经验的总结。  全程实例解说MATLAB数值计算和数据可视化功能,提高读者实用经验。  内容丰富而且翔实,点面兼顾,力图覆盖更多专业面的问题介绍。  配套的光盘免去了输入代码的烦琐工作,有助于提高学习效率。  较多的过程模拟采用动画方式,生动形象。  读者对象  本书既可以作为学校或研究机构及企业中利用MATLAB进行数值计算的教程,也可作为MATLAB开发的案头参考书,还可作为自学MATLAB的参考用书。  本书约定  本书的附图和运行结果可能会与实际环境中的操作界面或结果略有差别,这可能是由于操作系统平台、MATLAB版本不同而导致的,在此特别说明,一切以实际环境为准。  致谢与分工  本书由刘正君编著,其中,南京师范大学的博士生陈玲玲为第27章的编写提供了大量素材,作者感谢自己的学生陈杭在编写过程中提出的宝贵建议,姚新军负责前期的策划与后期质量监控。全书由成都道然科技有限责任公司审校。参与编写工作的人员还有:黄中林、张强林、王晓、王斌、万雷、吴艳、王呼佳、夏慧军、张赛桥、陶林、赵会春、余松、李晓宁、赵滕伦、李佳等。  本书的出版得到的资助基金有:国家自然科学基金(11104049,11047153,10674038,10604042)、国家基础研究项目(2006CB302901)、中国博士后科学基金(20080430913)、哈尔滨工业大学科研创新基金(HIT.NSRIF.2009038)、哈尔滨工业大学优秀青年教师培养计划(HITQNJS.2008.027)。作者在此要特别感谢家人的大力支持,没有他们的支持,本书不可能这么快就与读者见面。  由于作者水平有限,书中不足之处在所难免,恳请读者批评、指正。

书籍目录

第1篇  基础篇
第1章 MATLAB科学计算基础
第2章 理解MATLAB的数据类型
第3章 向量与矩阵运算
第4章 表达式
第5章 程序结构与优化
第6章 文件处理
第2篇 科学计算
第7章 线性方程组
第8章 超越方程的求解
第9章 数据拟合与插值
第10章 最值问题的求解
第11章 随机数的应用
第12章 微分方程组的计算
第13章 积分运算
第14章 数学变换运算
第15章 特殊函数
第3篇 数据可视化仿真
第16章 二维数据可视化
第17章 三维数据可视化
第18章 图形用户界面设计
第4篇 科学问题编程
第19章 MATLAB建模基础
第20章 混沌现象
第21章 分形图形
第22章 元胞自动机
第23章 晶体生长模拟
第24章 光学现象模拟
第25章 机械运动模拟
第26章 经济和金融问题的求解
第27章 常用算法及MATLAB实现

编辑推荐

《MATLAB科学计算宝典》由刘正君编著,熟练应用MATLAB需要一定时间,读者在安装好MATLAB R2008a版本后,可以运行《MATLAB科学计算宝典》给出的程序,通过修改参数查看输出变化来了解MATLAB函数的功能。另外需要注意的一点是,《MATLAB科学计算宝典》介绍的少部分函数属于MAILAB R2008a特有的,较低版本因缺少相应函数会出现错误提示。为了节省读者输入程序的时间,《MATLAB科学计算宝典》配备含书中MATLAB代码的光盘,为程序代码实现高效率复用提供便利条件。

作者简介

《MATLAB科学计算宝典》由刘正君编著,共27章,分为4篇,详细讲解MATLAB的计算和数据表现功能,介绍利用HATLAB对科学问题进行计算与仿真。针对部分专业的问题,给出利用HATLAB进行模拟的程序和仿真结果。第1篇为基础篇,包括第1~6章,介绍MATLAB基本知识,具体包括:数据类型、向量与矩阵的定义、表达式、程序结构与优化、文件处理。在介绍基本知识的同时,还给出一些实用经验促进读者更好地利用该软件。第2篇是科学计算,包括第7~15章,详细介绍基本科学问题的求解方法,具体包括:线性方程组、超越方程、数据拟合与插值、最值问题、随机数、微分方程组、积分运算、数学变换、特殊函数等。本篇内容是求解复杂科学问题的基础。第3篇为数据可视化仿真,包括第16~18章,具体包括:二维和三维图形的绘制、用户图形界面设计。第4篇是科学问题编程,包括第19~27章,介绍混沌、分形、元胞自动机、光学现象、机械运动、常用算法等方面的编程知识。通过对不同问题按照建模、程序化实现、过程仿真的顺序介绍HATLAB的应用。 《MATLAB科学计算宝典》结构清晰,图形与程序结合,实例丰富,具有很强的实用性。很多实例的选取力图全面,对实际问题的剖析和程序实现进行了详细的讲解。《MATLAB科学计算宝典》既可以作为学校或研究机构及企业中利用HATLAB进行数值计算的教程,也可作为HATLAB开发的案头参考书,还可作为自学MATLAB的参考用书。

图书封面


 MATLAB科学计算宝典下载



发布书评

 
 


精彩短评 (总计2条)

  •     能够满足自己的需求,物有所值!
  •     作为参考资料不错
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024