MATLAB R2018B完全实战学习手册 作者:王朋出版时间: 2019年版内容简介本书从初学者的角度循序渐进地讲述了MATLAB R2018b的基础知识和应用,全书共分2篇,第1篇为MATLAB基础知识,详细介绍了MATLAB R2018b概述、MATLAB使用初步、MATLAB数值计算及符号计算、MATLAB计算的可视化和GUI设计、 MATLAB程序设计、Simulink仿真、MATLAB应用程序接口等基础知识。第2篇为MATLAB应用,分别介绍了MATLAB工具箱概述,MATLAB在图像处理、优化设计、数字信号处理、控制系统、电力系统、深度学习中的应用,尤其对于MATLAB R2018b全新增加的深度学习功能进行了深入介绍,读者可在基础知识学习的同时进行上机练习。 本书内容深入浅出,简明扼要,结构清晰,方便读者选择学习阅读,适合广大科研及工程技术人员使用,也可作为高校理工科学生的专业教学用书和参考用书。目录第1篇 MATLAB基础知识 第1章MATLAB R2018b概述 1.1 MATLAB R2018b简介 2 1.1.1 MATLAB概述 2 1.1.2 MATLAB的优势和特点 3 1.1.3 MATLAB的版本更新 4 1.1.4 MATLAB R2018b的新增功能 5 1.2 MATLAB R2018b的安装激活与内容选择 5 1.2.1 MATLAB R2018b的安装 6 1.2.2 MATLAB R2018b的激活 8 1.3 MATLAB R2018b的目录 10 1.3.1 MATLAB R2018b的目录结构 10 1.3.2 搜索路径及其设置 10 1.3.3 MATLAB R2018b的工作目录设置 12 1.4 MATLAB R2018b的工作环境 13 1.5 MATLAB R2018b的帮助系统 13 1.5.1 帮助命令 14 1.5.2 演示(Demos)帮助 15 1.5.3 帮助导航浏览器 15 第2章MATLAB使用初步 2.1 MATLAB R2018b的通用命令 17 2.2 MATLAB R2018b的常用数据类型 18 2.2.1 数值类型 19 2.2.2 逻辑类型 22 2.2.3 字符串 22 2.2.4 结构体类型 24 2.2.5 单元数组类型 26 2.2.6 函数句柄 27 2.3 基本矩阵操作 28 2.3.1 矩阵的创建 28 2.3.2 矩阵大小的改变 31 2.3.3 矩阵下标引用 33 2.3.4 矩阵信息的获取 34 2.3.5 矩阵结构的改变 36 2.4 运算符 37 2.4.1 算术运算符 37 2.4.2 关系运算符 38 2.4.3 逻辑运算符 39 2.4.4 运算优先级 39 2.5 字符串处理函数 40 2.5.1 字符串的构造 40 2.5.2 字符串比较函数 41 2.5.3 字符串查找和替换函数 42 2.5.4 字符串与数值的转换 43 2.6 文件读取I/O 43 2.6.1 文件的打开与关闭 43 2.6.2 读取与写入二进制文件 44 2.6.3 写入与读取文本文件 46 2.6.4 文件位置 47 第3章MATLAB数值计算 3.1 矩阵的基本运算 50 3.1.1 矩阵的加减运算 50 3.1.2 矩阵的乘法运算 51 3.1.3 矩阵的除法运算 52 3.1.4 矩阵的幂运算 52 3.1.5 矩阵的其他运算 53 3.2 矩阵分解 57 3.2.1 Cholesky分解 57 3.2.2 LU分解 57 3.2.3 QR分解 58 3.2.4 特征值分解 59 3.2.5 奇异值分解 60 3.3 线性方程组的求解 60 3.3.1 求线性方程组的唯一解或特解 61 3.3.2 求线性齐次方程组的通解 63 3.3.3 求非齐次线性方程组的通解 63 3.4 多项式 65 3.4.1 多项式的求值 65 3.4.2 多项式的根 66 3.4.3 多项式的运算 66 3.5 数据插值 68 3.5.1 一维插值 68 3.5.2 二维插值 70 3.6 曲线拟合 71 3.7 函数的极限和导数 73 3.7.1 函数的极限 73 3.7.2 函数的导数 74 3.8 数值积分函数 74 第4章MATLAB符号计算 4.1 符号对象的创建和使用 77 4.1.1 创建符号对象和表达式 77 4.1.2 符号对象的基本运算 79 4.2 符号表达式的替换、精度计算及化简 81 4.2.1 符号表达式的替换 81 4.2.2 精度计算 82 4.2.3 符号表达式的化简 83 4.3 符号微分与积分及其变换 85 4.3.1 符号表达式的微分运算 85 4.3.2 符号表达式的级数 87 4.3.3 符号表达式的积分运算 88 4.3.4 符号积分变换 89 4.4 符号方程求解 91 4.4.1 代数方程的求解 91 4.4.2 微分方程的求解 92 第5章MATLAB计算的可视化和GUI设计 5.1 绘图的基本步骤 94 5.2 二维图形的生成 95 5.2.1 plot基本命令 95 5.2.2 线型、颜色及数据点型的设置 99 5.2.3 图形的标注、图例说明及网格 100 5.2.4 多次叠图和多子图操作 101 5.2.5 坐标轴的控制 104 5.3 三维图形的生成 105 5.3.1 plot3基本命令 105 5.3.2 三维网线图和表面图的绘制 106 5.3.3 立体图形与图轴的控制 110 5.3.4 色彩的控制 112 5.4 特殊图形的操作 118 5.4.1 条形图 118 5.4.2 饼形图 120 5.4.3 统计直方图 121 5.4.4 极坐标图 121 5.4.5 离散数据绘图 122 5.4.6 面积图和图形填充 122 5.4.7 射线图和羽毛图 123 5.4.8 等高线图 124 5.5 句柄图形 125 5.5.1 图形对象的创建 125 5.5.2 图形对象句柄的获取 127 5.5.3 图形对象属性的获取和设置 130 5.6 图形用户界面(GUI)设计 132 5.6.1 GUI开发环境(GUIDE) 132 5.6.2 用户图形界面控件 134 5.6.3 对话框对象 136 5.6.4 界面菜单 141 5.6.5 GUI设计实例 142 第6章MATLAB程序设计 6.1 M文件 152 6.1.1 函数 153 6.1.2 脚本 158 6.2 MATLAB中的变量 160 6.3 MATLAB程序控制结构 161 6.3.1 顺序结构 161 6.3.2 循环结构 162 6.3.3 选择结构 164 6.3.4 其他流程控制语句 167 6.4 MATLAB程序调试 169 6.4.1 直接调试法 170 6.4.2 工具调试法 170 第7章Simulink仿真 7.1 Simulink概论 173 7.1.1 Simulink的概述 173 7.1.2 Simulink的启动 174 7.1.3 Simulink模型的特点 175 7.1.4 Simulink Editor窗口菜单命令 176 7.1.5 Simulink模块库 179 7.1.6 Simulink实例 185 7.2 Simulink模型创建 188 7.2.1 Simulink模块简易操作 188 7.2.2 创建模型的基本步骤 198 7.3 仿真的运行及结果分析 200 7.3.1 仿真参数的设置 200 7.3.2 Simulink仿真过程需要注意的技巧 204 7.3.3 观测输出Simulink的仿真结果 205 7.3.4 仿真诊断 212 7.4 模型的调试 212 7.4.1 Simulink调试器 212 7.4.2 调试模型及设置断点 215 7.5 子系统创建与封装 216 7.5.1 子系统介绍 216 7.5.2 创建子系统 217 7.5.3 封装子系统 220 7.6 S函数 223 7.6.1 S函数工作原理 223 7.6.2 编写S函数 224 7.7 Simulink与MATLAB结合建模的实例 230 第8章MATLAB 应用程序接口 8.1 MATLAB应用程序接口介绍 234 8.1.1 MEX文件 234 8.1.2 MAT文件 235 8.1.3 计算引擎 235 8.2 MATLAB编译器 235 8.2.1 编译器概述 235 8.2.2 编译器的安装和配置 236 8.2.3 创建C语言MEX文件 237 8.2.4 创建独立的应用程序 239 8.3 MAT文件的使用 240 8.3.1 在MATLAB中读写MAT文件 241 8.3.2 在普通的C/C++程序中读写MAT文件 242 8.4 MATLAB实时编辑器 242 8.5 MATLAB与Excel的联机使用 245 8.5.1 Excel Link的设置 246 8.5.2 Excel Link数据管理函数 247 8.5.3 xlswrite与xlsread 248 第2篇 MATLAB应用 第9章MATLAB工具箱概述 9.1 工具箱的安装和卸载 252 9.1.1 工具箱的安装 252 9.1.2 工具箱的卸载 252 9.2 数学、统计和优化工具箱 252 9.2.1 优化工具箱 252 9.2.2 神经网络工具箱 253 9.3 控制系统 253 9.3.1 控制系统工具箱 253 9.3.2 模糊逻辑工具箱 253 9.3.3 机器人系统工具箱 254 9.3.4 系统识别工具箱 254 9.3.5 鲁棒控制工具箱 254 9.4 信号处理和通信 254 9.4.1 DSP系统工具箱 254 9.4.2 信号处理工具箱 255 9.4.3 小波工具箱 255 9.5 图像处理和计算机视觉 255 9.5.1 图像获取工具箱 255 9.5.2 图像处理工具箱 255 9.6 测试和测量 256 9.6.1 数据采集工具箱 256 9.6.2 仪器控制工具箱 256 9.7 计算金融学工具箱 256 9.7.1 数据库工具箱 256 9.7.2 计量经济学工具箱 257 9.7.3 金融工具箱 257 第10章MATLAB在图形图像处理中的应用 10.1 MATLAB系统中的图像类型 258 10.2 图形图像的基本运算 262 10.2.1 图像绝对差值 262 10.2.2 图像相加 262 10.2.3 图像颜色组合 263 10.2.4 图像求补运算 263 10.2.5 图像相除 264 10.2.6 图像的线性运算 264 10.2.7 图像相乘 265 10.2.8 图像相减 266 10.3 图形图像的二维傅里叶变换 267 10.3.1 连续二维傅里叶变换 267 10.3.2 二维离散傅里叶逆变换 268 10.4 数字图像的离散余弦变换 268 10.4.1 图像的离散余弦变换 268 10.4.2 计算离散余弦变换矩阵 269 10.5 图形图像对比度的调整 270 10.5.1 调整图像对比度 270 10.5.2 有限对比度自适应直方图均衡化(CLAHE) 271 10.6 图形图像的分析 271 10.6.1 跟踪二值图像中的对象 271 10.6.2 霍夫变换 272 10.7 图形图像边界的提取 273 第11章MATLAB在优化设计中的应用 11.1 建立优化问题 275 11.1.1 选择求解器 275 11.1.2 参数设置 276 11.2 非线性优化问题 280 11.2.1 无约束最优化问题 280 11.2.2 有约束最优化问题 281 11.2.3 多目标优化问题 282 11.3 线性规划和混合整数线性规划 285 11.3.1 基于问题的最优化 285 11.3.2 基于求解器的最优化 289 11.4 二次规划问题 291 11.5 最小二乘法 292 11.5.1 线性最小二乘法 292 11.5.2 非线性最小二乘法 295 11.6 非线性方程组 296 第12章MATLAB在数字信号处理中的应用 12.1 离散信号与系统 298 12.1.1 常用离散信号 299 12.1.2 信号的基本运算 302 12.1.3 线性时不变系统的响应 305 12.2 数字信号的处理 310 12.2.1 离散傅里叶变换 310 12.2.2 快速傅里叶变换 315 12.3 数字滤波器的设计 317 12.3.1 IIR滤波器的设计 317 12.3.2 FIR滤波器的设计 321 第13章MATLAB在控制系统中的应用 13.1 控制系统的模型描述 324 13.2 控制系统的时域分析与MATLAB实现 328 13.2.1 单位阶跃响应 329 13.2.2 脉冲响应 329 13.2.3 零输入响应 330 13.2.4 任意输入响应 331 13.2.5 阶跃响应特性 332 13.2.6 线性系统响应特性 334 13.3 控制系统的频域分析与MATLAB实现 335 13.3.1 伯德图 336 13.3.2 奈奎斯特图 337 13.3.3 尼克尔斯频率响应图 337 13.3.4 奇异值图 338 13.3.5 频率响应 339 13.3.6 计算频率响应 340 13.4 控制系统的根轨迹分析 341 13.4.1 零极点图 341 13.4.2 根轨迹 342 13.4.3 零极点和根轨迹图 343 13.4.4 zgrid函数 344 13.5 控制系统的状态空间分析 345 13.5.1 系统的能控性 345 13.5.2 系统能观测性 346 第14章MATLAB在电力系统中的应用 14.1 Specialized Power Systems模型库概述 349 14.2 电源库 350 14.2.1 直流电压源 350 14.2.2 交流电压源 350 14.2.3 三相可编程电压源 352 14.3 元器件库 355 14.3.1 断路器 355 14.3.2 串联RLC支路 358 14.3.3 变压器 359 14.4 电机库 366 14.5 电力电子库 374 14.5.1 二极管 375 14.5.2 晶闸管 378 14.5.3 绝缘栅双极型晶体管 381 14.5.4 通用桥式电路 385 14.6 控制和测量模块库 387 14.6.1 Pulse &Signal Generators模块 388 14.6.2 测量模块 396 14.7 其他模块库 396 14.8 电力图形用户界面 397 14.8.1 调用方法 397 14.8.2 属性参数对话框 397 14.9 应用举例 405 14.9.1 有源功率因数校正APEC电路 405 14.9.2 电力系统输电线路的单相、三相重合闸 409 第15章MATLAB在深度学习中的应用 15.1 深度学习基础 413 15.1.1 AlexNet卷积神经网络 413 15.1.2 VGG-16卷积神经网络 414 15.1.3 VGG-19卷积神经网络 415 15.1.4 GoogLeNet卷积神经网络 416 15.1.5 从Caffe导入预先训练的卷积神经网络模型 416 15.1.6 神经网络训练的选项 416 15.1.7 深度学习的神经网络训练 417 15.2 深度学习图像分类 420 15.2.1 图像数据增强 420 15.2.2 增强图像源 421 15.3 从零开始深度学习训练 424 15.3.1 从Caffe导入卷积神经网络层 425 15.3.2 图像输入层 426 15.3.3 序列输入层 427 15.3.4 二维卷积层 428 15.3.5 二维反卷积层 429 15.3.6 全连接层 430 15.3.7 长短期记忆(LSTM)层 431 15.3.8 激活函数层 434 15.3.9 渗泄整流线性单元层 434 15.3.10 剪切整流线性单元层 435 15.3.11 批量归一化层 436 15.3.12 信道局部响应归一化层 438 15.3.13 dropout层 439 15.3.14 平均池化层 440 15.3.15 最大池化层 441 15.3.16 最大脱空层 442 15.3.17 深度拼接层 442 15.3.18 softmax层 442 15.3.19 分类输出层 443 15.3.20 回归输出层 444 15.3.21 建立层学习参数的学习速率因子 445 15.3.22 L2正则化因子 445 15.3.23 获取层可学习参数的学习率因子 446 15.3.24 获取层可学习参数的L2正则化因子 447 15.3.25 神经网络训练的选项 448 15.3.26 深度学习的神经网络训练 449 15.3.27 深度学习系列网络 452 15.3.28 图像数据增强 454 15.3.29 增强图像源 455 15.3.30 深度学习网络结构图 457 15.3.31 在图层中连接层 458 15.3.32 删除图层 458 15.3.33 断开图层 459 参考文献 上一篇: HTML5+CSS3+JavaScript项目开发 刘蕾 2019年版 下一篇: Office VBA开发经典 中级进阶卷 刘永富 2019年版