MATLAB程序设计基础教程

出版时间:2012-8  出版社:刘国良、 杨成慧 西安电子科技大学出版社 (2012-08出版)  作者:刘国良,杨成慧 编  页数:389  

内容概要

  《高等学校电子信息类专业十二五规划教材:MATLAB程序设计基础教程》以MATLAB R2010a为基础,较全面、系统地介绍了MATLAB的理论和应用,内容 包括MATLAB的基本知识和基本程序设计、数值分析、科学计算、符号运算和 图形绘制等。本书理论充实,实例丰富,编排适当,图文并 茂。本书可作为电子信息类专业的本科、专 科和高职教材,也可供需要学习MATLAB语言的读者、其他专业(如软件专业) 的学生以及有关 专业技术人员使用。

书籍目录

第1章MATLAB基础 1.1MATLAB概论 1.1.1MATLAB概述 1.1.2MATLAB用户界面 1.1.3MATLAB基本用法 1.1.4MATLAB工具箱 1.2MATLAB的基本特性 1.2.1数字运算 1.2.2关系运算 1.2.3逻辑运算 1.2.4标量关系表达式的避绕式操作 1.2.5运算符的优先级 1.2.6关系与逻辑函数 1.2.7标点符号的使用 1.2.8常用的操作命令和快捷键 1.2.9简单的计算器使用法 1.2.10MATLAB支持的数据结构与数据类型 1.3数据类型 1.3.1整数 1.3.2浮点数与精度函数 1.3.3数字数据类型操作函数 1.3.4变量和常量 1.3.5逻辑数据 1.4复数 1.4.1复数的创建 1.4.2复数运算 1.4.3欧拉恒等式的转换 思考与练习 第2章向量、数组和矩阵 2.1向量、数组与矩阵的创建 2.1.1向量的创建 2.1.2向量的转置与操作 2.1.3向量的点乘、叉乘和混合积 2.1.4二维数组与多维数组 2.1.5矩阵的创建方法 2.2向量、数组和矩阵的寻址与赋值 2.2.1向量的寻址与赋值 2.2.2矩阵(数组)的下标索引 2.2.3矩阵元素的赋值 2.3标准矩阵与特殊矩阵 2.3.1标准矩阵 2.3.2特殊矩阵 2.4基本的四则运算 2.4.1向量、数组与数的四则运算 2.4.2向量、数组之间的四则运算 2.4.3矩阵加减运算 2.4.4矩阵的乘法 2.4.5矩阵的除法 2.5向量、数组和矩阵的其他运算 2.5.1乘方、开方运算 2.5.2指数、对数运算 2.5.3funm()函数求估值 2.5.4求极小值与极大值 2.5.5mean()函数求平均值 2.5.6求和、求累加和 2.5.7求积、求累加积 2.5.8矩阵的SVD算法 2.6矩阵的特征参数运算 2.6.1矩阵的秩与rank()函数 2.6.2矩阵的转置 2.6.3矩阵的逆与迹 2.6.4矩阵的特征值、特征向量与eig()函数 2.6.5矩阵的范围空间与null空间 2.6.6矩阵的行列式与det()函数 2.7矩阵的操作 2.7.1矩阵的变维 2.7.2矩阵的抽取 2.7.3repmat()函数与矩阵的复制 2.7.4矩阵元素的反褶与变向 2.8单元数组 2.8.1生成单元数组 2.8.2单元数组的赋值 2.8.3单元数组的内容显示 2.8.4单元数组的内容获取 2.8.5单元数组元素的删除 2.8.6单元数组的变维处理 2.9结构体 2.9.1结构体的生成 2.9.2成员变量的操作 思考与练习 第3章MATLAB程序设计 3.1概述 3.1.1MATLAB程序设计方法 3.1.2MATLAB程序结构 3.2循环程序 3.2.1for循环 3.2.2while循环 3.2.3break语句 3.2.4continue语句 3.2.5end语句 3.3分支结构 3.3.1条件转移结构 3.3.2switch开关结构 3.3.3try—catch试探结构 3.4人机交互语句 3.4.1echo命令 3.4.2用户输入提示命令input 3.4.3等待用户反应命令pause 3.5程序的常见错误处理 3.5.1错误的产生 3.5.2NaNs错误、除数为0的处理 3.5.3关系运算符容易出现的错误 思考与练习 第4章M脚本与M函数 4.1使用M文件编程 4.1.1M文件的结构 4.1.2M文件的建立、运行与命名规则 4.1.3程序的调试 4.1.4程序错误的检测和处理 4.1.5程序的分析与优化 4.2M函数 4.2.1函数M文件 4.2.2函数M文件的结构、规则和属性 4.2.3函数变量 4.2.4函数的分类 4.2.5内联函数与匿名函数 4.3函数的调用与函数句柄 4.3.1函数参数与函数的调用 4.3.2函数句柄 4.4函数编程的实例 4.4.1函数编程 4.4.2类的建立与函数重载 思考与练习 第5章图形绘制 5.1绘制二维图 5.1.1绘N—维线性图 5.1.2stem()绘制离散图形 5.1.3对数图 5.1.4polar()绘制极坐标图 5.2常用图形的绘制 5.2.1绘制直线、矩形、圆和椭圆 5.2.2绘制偏差条图形 5.2.3绘制直方图与其正态分布曲线 5.2.4填充图与面积图 5.3三维图形绘制 5.3.1plot3()函数 5.3.2mesh()和surf()函数 5.3.3meshgrid()函数 5.3.4meshc()和meshz()函数 5.3.5sphere()函数 5.3.6彗星图 5.4绘图控制 5.4.1图形窗口的创建、控制与 figure命令 5.4.2图形保持与多重线绘制 5.4.3子图控制与subplot()函数 5.4.4图形的注释和标记 5.4.5线型和颜色的控制 5.4.6坐标轴控制 5.5图形的高级控制 5.5.1colormap()函数与颜色映像 5.5.2光照控制 5.5.3视点控制和图形的旋转 5.5.4使用绘图工具绘制 5.6特殊图形的绘制 5.6.1使用bar()函数绘制柱状图 5.6.2使用stairs()绘制阶梯图形 5.6.3方向和速度矢量图形 5.6.4等值线的绘制 5.6.5饼形图 思考与练习 第6章MATLAB字符串与文件操作 6.1字符串与字符串矩阵 6.1.1字符串的生成 6.1.2字符串矩阵 6.2字符串运算 6.2.1abs()函数取数组的绝对值 6.2.2字符串逆转换与setstr()函数 6.2.3字符的加法运算 6.3字符串操作 6.3.1字符串寻址、编址与子字符串 6.3.2字符串转置 6.3.3字符串的连接 6.4字符串显示、打印与格式转换 6.4.1disp()函数 6.4.2fprintf()函数 6.4.3sprinff()函数 6.5字符串转换 6.5.1数字转换成字符串 6.5.2字符串转换成数字 6.5.3字符的大小写转换 6.6字符串的搜索与替换 6.6.1strtok()函数 6.6.2strfind()和findstr()函数 6.6.3字符串的替换 6.7字符串的比较与判断 6.7.1字符串的比较 6.7.2字符串判断 6.8字符串执行与宏 6.8.1val()函数与字符串求值 6.8.2feval()函数 6.9文件操作 6.9.1文件、数据的存储 6.9.2数据导入 6.9.3文件的打开 6.9.4文本文件的读,写 6.9.5低层文件I/O操作 6.9.6串口设备文件操作 思考与练习 第7章数值计算与分析 7.1MATLAB多项式 7.1.1概述 7.1.2多项式与根 7.1.3卷积运算与多项式乘法 7.1.4反卷积运算与多项式除法 7.1.5多项式加法 7.1.6多项式求导数 7.2有理多项式的运算 7.2.1使用residue()函数展开部分分式 7.2.2residue()函数的逆运算 7.2.3polyder()函数对有理多项式的求导 7.3多项式估值与拟合 7.3.1多项式拟合的估值与polyval()函数 7.3.2曲线拟合与polynt()函数 7.4数据插值 7.4.1一维插值与interpl()函数 7.4.2二维插值与interp2()函数 7.4.3抽样插值与interp()函数 7.4.4三次样条与spline()函数 7.5数值分析 7.5.1求极值 7.5.2求零点 7.5.3数值积分 7.5.4数值微分 7.5.5等差数列的求和、求累加和 7.5.6数列求积、求累加积 7.5.7factorial()函数与阶乘 7.5.8取整函数 7.6代数方程组求解 7.6.1恰定方程组的解 7.6.2超定方程组的解 7.6.3欠定方程组的解 7.6.4普通线性方程组的求解与linsolve()函数 7.7微分方程的数值解 7.7.1微分方程的数值解法 7.7.2MATLAB求解微分方程的数值解 思考与练习 第8章符号运算 8.1符号对象 8.1.1符号运算的特点 8.1.2符号变量及符号变量确定原则 8.1.3建立符号表达式和求值 8.1.4符号阶跃函数与冲激函数 8.2数值与符号变量的相互转换 8.2.1符号转换为数值 8.2.2数值转换为符号 8.2.3poly2sym()函数与多项式的符号表达式 8.3符号矩阵与运算 8.3.1符号矩阵的生成 8.3.2符号矩阵的索引和修改 8.3.3符号矩阵的四则运算 8.4符号表达式的化简 8.4.1合并多项式 8.4.2展开多项式 8.4.3转换多项式 8.4.4简化多项式 8.4.5因式分解与factor()函数 8.4.6分式通分 8.4.7符号替换 8.5符号微积分 8.5.1符号表达式求极限 8.5.2符号导数、微分和偏微分 8.5.3多元函数的导数与jacobian()函数 8.5.4计算不定积分、定积分 8.6符号级数与求和 8.6.1 symsum()函数与级数的求和 8.6.2泰勒级数与taylor()函数 8.6.3傅里叶级数 8.7符号矩阵的代数运算 8.7.1符号矩阵的代数运算 8.7.2符号矩阵的特征值、奇异值分解 8.8符号方程与求解 8.8.1创建符号方程 8.8.2符号代数方程求解 8.8.3非线性代数方程组的符号解法 8.8.4常微分方程的解析解 8.8.5复合函数方程 8.8.6反函数方程 8.9符号积分变换 8.9.1符号傅里叶变换 8.9.2符号拉普拉斯变换 8.9.3符号2变换 8.10符号函数图形绘制 8.10.1符号函数二维绘图函数ezplot() 8.10.2符号函数三维绘图函数ezplot3() 8.10.3符号函数曲面网格图及表面图的绘制 8.10.4等值线的绘制 思考与练习 第9章句柄图形与GUI设计 9.1句柄图形对象 9.1.1图形对象属性的获取和设置 9.1.2图形对象句柄的访问 9.1.3图形对象的复制与删除 9.2GUI的设计 9.2.1启动GUI开发环境 9.2.2GUI的可选控件和模板 9.2.3GUI窗口的布局与Layout编辑器 9.2.4GUI控件的属性控制 9.3编写响应函数 9.3.1响应函数的定义及类型 9.3.2响应函数的语法、参数与关联 9.3.3初始化响应函数 9.3.4添加响应函数 9.3.5运行GUI 9.3.6创建菜单栏 9.3.7创建右键弹出式菜单 9.3.8创建工具条 9.4编程创建GUI 9.4.1定义GUI 9.4.2创建GUI主界面 9.4.3添加控件 9.4.4设置GUI可视 9.4.5初始化GUI 9.4.6弹出菜单的响应程序 9.4.7按钮的响应程序 9.4.8控件与Callbacks函数关联 9.5标准对话框 9.5.1输入对话框inputdlg() 9.5.2打开文件 9.5.3保存文件 9.5.4其他对话框 9.5.5uicontrol()函数与GUI控件对象 9.6菜单设计 9.6.1标准主菜单与自定义菜单 9.6.2工具条菜单与uitoolbar()函数 思考与练习 部分习题参考答案

章节摘录

版权页:   插图:   4.函数体 函数体为M文件的主要部分,是函数的执行代码。 除上面的H1行和帮助文本外,为了易于理解,可以在书写代码时添加注释语句。这些注释语句在编译程序时会被忽略,因此不会影响编译速度和程序运行速度,但是能够增加程序的可读性。 5.函数的工作空间 (1)函数有它们自己的专用工作空间,与MATLAB的工作空间是分开的。函数内变量与MATLAB工作空间之间唯一的联系是函数的输入和输出变量。如果函数任一输入变量值发生变化,其变化仅在函数内出现,不影响MATLAB工作空间的变量。函数内所创建的变量只驻留在函数的工作空间,而且只在函数执行期间临时存在,以后就消失。因此,从一个调用到下一个调用,在函数工作空间变量存储信息是不可能的。 (2)如果一个预定盼变量(如pi)在MATLAB工作空间被重新定义,它不会延伸到函数的工作空间。逆向有同样的属性,即函数内的重新定义变量不会延伸到MATLAB的工作空间中。 (3)当调用一个函数时,输入变量不会拷贝到函数的工作空间,但它们的值在函数内可读。然而,只要改变输入变量内的任何值,数组就可拷贝到函数工作空间。进而,按缺省,如果输出变量与输入变量相同,例如,如果函数是x=fun(x,y,z)中的x,那么就将它拷贝到函数的工作空间。因此,为了节约存储和增加速度,最好是从大数组中抽取元素,然后对它们作修正,而不是使整个数组拷贝到函数的工作空间。 4.2.3函数变量 MATLAB的变量有输入变量、输出变量和函数内使用的变量之分,还可分为局部变量、全局变量、永久变量。 输入变量相当于函数的入口数据,也是一个函数操作的主要对象,从某种意义上来说,函数的功能就是对输入变量进行一定的操作,从而实现一定的功能。函数的输入变量为局部变量,函数对输入变量的一切操作和修改如果不依靠输出变量的话,将不会影响工作区间中该变量的值。 1.局部变量 在M函数文件中,所有变量默认为局部变量。因此,在一个函数文件中的变量与MATLAB工作区中的同名变量是完全不同的变量,它们存在内存的不同位置。 每个函数都有自己的局部变量,这些变量存储在该函数独立的工作区中,与其他函数的变量及主工作区中的变量分开存储。当函数调用结束时,这些变量随之删除,不保存在内存中。并且,除了函数返回值,该函数不改变工作区中其他变量的值。 脚本文件没有独立的工作区,当通过命令窗口调用脚本文件时,脚本文件分享主工作区,当函数调用脚本文件时,脚本文件分享主调函数的工作区。需要注意的是,如果脚本中改变了工作区中变量的值,则在脚本文件调用结束后,该变量的值发生改变。

编辑推荐

《高等学校电子信息类专业"十二五"规划教材:MATLAB程序设计基础教程》的宗旨是把MATLAB作为解决实际问题的一种有用工具,立足于“实用”与“精选”,其特点是: 由浅入深、从点到面介绍了MATLAB的基础知识、理论实质和应用,结合章节内容介绍了大量的MATLAB函数。并且根据理论、定义和概念,介绍了许多自定义函数,以提高学生的编程能力。 面向电子信息类专业课,精心筛选了有代表性的例程,有助于读者加深对理论的理解和提高其实际动手能力。 遵循学习规律,采用图、表、例等多种形式搭配的实例讲解,摒除学习和理解死角。所有实例程序均经过实际运算,结果可靠、代码完整,读者可以完全准确地重现《高等学校电子信息类专业"十二五"规划教材:MATLAB程序设计基础教程》所提供的算例结果,举一反三,提高读者兴趣和阅读成就感。 精心选择、编排各章节内容,使其更合理、更科学、更紧凑。 为了便于读者的学习,《高等学校电子信息类专业"十二五"规划教材:MATLAB程序设计基础教程》还在每章后面列出了部分思考与练习题,供学生上机实习。

图书封面

评论、评分、阅读与下载


    MATLAB程序设计基础教程 PDF格式下载


用户评论 (总计1条)

 
 

  •   很喜欢本书 想学matlab编程才买的 感觉会比较合适 纸和印刷都不错
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7