MATLAB R2022a完全自学一本通
书籍作者:刘浩 |
ISBN:9787121445903 |
书籍语言:简体中文 |
连载状态:全集 |
电子书格式:pdf,txt,epub,mobi,azw3 |
下载次数:7029 |
创建日期:2023-05-28 |
发布日期:2023-05-28 |
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板 |
内容简介
本书面向MATLAB的初、中级读者,在介绍MATLAB R2022a集成环境的基础上,对MATLAB使用中常用的知识和工具进行了详细的介绍。书中各章均提供了大量有针对性的示例,可供读者进行实战练习。 根据内容的侧重点不同,全书分为4部分,共20章:第1~5章为基础部分,第6~11章为数学应用部分,第12~16章为工程应用部分,第17~20章为高级应用部分。为了使读者能够更好地操作MATLAB,本书中示例的命令已记录在M文件及其他相关文件中,读者可以将相关的目录设置为工作目录,直接使用M文件进行操作,以便快速掌握MATLAB的使用方法。
作者简介
刘浩,博士,毕业于北京航空航天大学,博士后出站,现就职于重庆大学,从事教学、科学研究与实验技术开发工作。承担航空、航天、汽车等领域课题研究20余项。在国内外著名期刊发表论文20余篇,多篇文章被SCI、EI收录,其中国际A类期刊5篇;获授权国家发明专利多项,使用MATLAB等工具从事科研工作近二十年,经验丰富。
目录
第1部分
第1章 MATLAB概述 1
1.1 MATLAB简介 2
1.1.1 MathWorks及其产品概述 2
1.1.2 MATLAB与其他数学软件 2
1.1.3 MATLAB的主要特点 3
1.1.4 MATLAB系统的组成 3
1.1.5 MATLAB应用程序简介 4
1.2 目录结构 5
1.3 工作环境 6
1.3.1 选项卡/组 7
1.3.2 命令行窗口 8
1.3.3 工作区窗口 9
1.4 通用命令 9
1.5 文件管理 10
1.5.1 当前文件夹窗口 10
1.5.2 搜索路径及其设置 11
1.6 帮助系统 12
1.6.1 纯文本帮助 13
1.6.2 演示帮助 13
1.6.3 帮助导航浏览器 14
1.7 示例展示 14
1.8 本章小结 15
第2章 基础知识 16
2.1 数据类型 17
2.1.1 数值类型 17
2.1.2 逻辑类型 21
2.1.3 字符类型 23
2.1.4 函数句柄 25
2.1.5 结构体类型 27
2.1.6 数组存储形式 30
2.1.7 元胞数组类型 31
2.1.8 map容器类型 35
2.2 矩阵的基本操作 39
2.2.1 矩阵和数组的概念及其区别 39
2.2.2 矩阵的构造 40
2.2.3 矩阵大小及结构的改变 44
2.2.4 矩阵下标引用 46
2.2.5 矩阵信息的获取 48
2.2.6 矩阵的保存和加载 53
2.3 运算符 59
2.3.1 算术运算符 59
2.3.2 关系运算符 60
2.3.3 逻辑运算符 61
2.3.4 运算优先级 62
2.4 字符串处理函数 63
2.4.1 字符串或字符串数组的构造 63
2.4.2 字符串比较 64
2.4.3 字符串查找和替换 65
2.4.4 字符串和数值的转换 66
2.5 本章小结 67
第3章 数组与矩阵 68
3.1 数组运算 69
3.1.1 数组的创建和操作 69
3.1.2 数组的常见运算 72
3.2 矩阵操作 77
3.2.1 创建矩阵 77
3.2.2 改变矩阵大小 81
3.2.3 重构矩阵 84
3.3 矩阵元素的运算 84
3.3.1 矩阵的加减法运算 84
3.3.2 矩阵的乘法运算 85
3.3.3 矩阵的除法运算 87
3.3.4 矩阵的幂运算 87
3.3.5 矩阵元素的查找 88
3.3.6 矩阵元素的排序 88
3.3.7 矩阵元素的求和 89
3.3.8 矩阵元素的求积 90
3.3.9 矩阵元素的差分 91
3.4 矩阵运算 92
3.4.1 矩阵分析 92
3.4.2 矩阵分解 97
3.4.3 特征值和特征向量 103
3.5 稀疏矩阵 104
3.5.1 稀疏矩阵的存储方式 105
3.5.2 稀疏矩阵的生成 105
3.5.3 稀疏矩阵的运算 109
3.6 本章小结 110
第4章 程序设计 111
4.1 M文件编辑器 112
4.2 变量 115
4.2.1 变量的命名 115
4.2.2 变量的类型 115
4.2.3 特殊变量 116
4.2.4 关键字 116
4.3 控制流 117
4.3.1 顺序结构 117
4.3.2 if-else-end分支结构 118
4.3.3 switch-case结构 119
4.3.4 try-catch结构 121
4.3.5 for循环结构 122
4.3.6 while循环结构 124
4.4 常用指令 125
4.4.1 return指令 125
4.4.2 input指令和keyboard指令 125
4.4.3 yesinput指令 126
4.4.4 pause指令 126
4.4.5 continue指令 126
4.4.6 break指令 127
4.4.7 error指令和warning指令 127
4.5 脚本和函数 127
4.5.1 脚本 127
4.5.2 函数 129
4.5.3 M文件的一般结构 130
4.5.4 匿名函数、子函数、私有函数与私有目录 132
4.5.5 重载函数 134
4.5.6 eval函数和feval函数 134
4.5.7 内联函数 136
4.5.8 向量化和预分配 139
4.5.9 函数的函数 139
4.5.10 P码文件 140
4.6 变量的检测与传递 142
4.6.1 输入/输出变量检测指令 142
4.6.2 “可变数量”输入/输出变量 142
4.6.3 跨空间变量传递和赋值 144
4.7 程序调试 146
4.7.1 程序调试的基本概念 147
4.7.2 直接调试法 147
4.7.3 使用调试函数进行调试 148
4.7.4 工具调试法 151
4.7.5 程序的性能优化技术 152
4.8 本章小结 153
第5章 数据可视化 154
5.1 图形绘制 155
5.1.1 离散数据及离散函数 155
5.1.2 连续函数 155
5.1.3 图形绘制示例 156
5.1.4 图形绘制的基本步骤 158
5.2 二维图形绘制 158
5.2.1 plot指令 158
5.2.2 栅格 163
5.2.3 文字说明 163
5.2.4 线型、标记和颜色 166
5.2.5 坐标轴设置 168
5.2.6 图形叠绘 169
5.2.7 子图绘制 170
5.2.8 交互式绘图 171
5.2.9 双坐标轴绘制 172
5.2.10 fplot绘图指令 173
5.2.11 ezplot绘图指令 174
5.2.12 特殊坐标轴绘图 175
5.2.13 二维特殊图形函数 176
5.3 三维图形绘制 180
5.3.1 三维曲线图绘制 180
5.3.2 三维网格图绘制 181
5.3.3 三维曲面图绘制 182
5.3.4 光照模型 183
5.3.5 绘制等值线图 185
5.4 四维图形可视化 186
5.4.1 用颜色描述第四维 186
5.4.2 其他函数 186
5.5 本章小结 187
第2部分
第6章 数值计算 188
6.1 多项式及其函数 189
6.1.1 多项式的表达式和创建 189
6.1.2 多项式求根 190
6.1.3 多项式的四则运算 191
6.1.4 多项式的导数、积分与估值 193
6.1.5 多项式运算函数及操作指令 194
6.1.6 有理多项式 195
6.2 数据插值 196
6.2.1 一维插值 197
6.2.2 二维插值 199
6.3 函数的极限 200
6.3.1 极限的概念 200
6.3.2 求极限的函数 201
6.4 函数数值积分 202
6.4.1 数值积分问题的数学表述 202
6.4.2 一元函数的数值积分 203
6.4.3 多重数值积分 204
6.5 本章小结 205
第7章 符号计算 206
7.1 符号计算概述 207
7.2 符号对象和符号表达式 207
7.2.1 对象创建命令 207
7.2.2 对象创建示例 208
7.2.3 运算符和基本函数 211
7.2.4 对象类别识别函数 213
7.2.5 表达式中的变量确定 215
7.2.6 符号计算的精度 216
7.3 符号表达式的基本操作 217
7.3.1 符号表达式的显示 217
7.3.2 符号表达式的合并 218
7.3.3 符号表达式的展开 218
7.3.4 符号表达式的嵌套 219
7.3.5 符号表达式的分解 220
7.3.6 符号表达式的化简 220
7.4 符号表达式的替换 221
7.4.1 subs替换函数 221
7.4.2 subexpr替换函数 222
7.5 符号函数的操作 223
7.5.1 复合函数操作 223
7.5.2 反函数操作 224
7.6 微积分 224
7.6.1 极限 225
7.6.2 微分 226
7.6.3 积分 227
7.6.4 级数求和 227
7.6.5 泰勒级数 228
7.7 积分变换 229
7.7.1 傅里叶变换 229
7.7.2 拉普拉斯变换 230
7.7.3 Z变换 230
7.8 方程求解 232
7.8.1 代数方程求解 232
7.8.2 微分方程求解 234
7.9 符号分析可视化 235
7.9.1 funtool分析界面 235
7.9.2 taylortool分析界面 238
7.10 本章小结 239
第8章 概率统计 240
8.1 产生随机数 241
8.1.1 二项分布随机数的产生 241
8.1.2 正态分布随机数的产生 241
8.1.3 常见分布随机数的产生 242
8.2 概率密度计算 243
8.2.1 通用函数概率密度值 243
8.2.2 专用函数概率密度值 244
8.3 累积概率分布 245
8.3.1 通用函数累积概率值 245
8.3.2 专用函数累积概率值 247
8.4 统计特征 247
8.4.1 平均值、中值 248
8.4.2 数据比较 248
8.4.3 期望 249
8.4.4 方差和标准差 249
8.4.5 协方差与相关系数 250
8.5 统计作图 251
8.5.1 正整数频率表 251
8.5.2 累积分布函数图形 252
8.5.3 最小二乘拟合直线 252
8.5.4 绘制正态分布概率图形 253
8.5.5 样本数据的盒图 254
8.5.6 参考线绘制 255
8.5.7 样本概率图形 256
8.5.8 正态拟合直方图 257
8.6 本章小结 258
第9章 数学建模基础 259
9.1 曲线拟合函数 260
9.1.1 多项式拟合 260
9.1.2 加权最小方差拟合原理及示例 261
9.1.3 非线性曲线拟合 263
9.2 参数估计函数 264
9.2.1 常见分布的参数估计 264
9.2.2 点估计 266
9.2.3 区间估计 268
9.3 参数传递 268
9.3.1 输入和输出参数的数目 269
9.3.2 可变数目的参数传递 270
9.3.3 返回被修改的输入参数 271
9.3.4 全局变量 272
9.4 本章小结 273
第10章 智能算法 274
10.1 粒子群算法实现 275
10.1.1 基本原理 275
10.1.2 程序设计 276
10.1.3 经典应用 283
10.2 遗传算法实现 287
10.2.1 基本原理 287
10.2.2 程序设计 290
10.2.3 经典应用 295
10.3 蚁群算法概述 300
10.3.1 基本原理 300
10.3.2 程序设计 301
10.3.3 经典应用 304
10.4 本章小结 310
第11章 偏微分方程 311
11.1 偏微分方程工具箱 312
11.1.1 偏微分方程常见类型 312
11.1.2 偏微分方程的求解过程 317
11.2 求解偏微分方程 319
11.2.1 求解椭圆方程 319
11.2.2 求解抛物线方程 323
11.2.3 求解双曲线方程 327
11.2.4 求解特征值方程 331
11.3 本章小结 335
第3部分
第12章 优化工具 336
12.1 优化常用函数及最优化问题 337
12.1.1 优化常用函数 337
12.1.2 最优化问题 339
12.2 线性规划 341
12.2.1 线性规划函数 342
12.2.2 线性规划问题的应用 343
12.3 无约束非线性规划 352
12.3.1 基本数学原理介绍 353
12.3.2 无约束非线性规划函数 354
12.3.3 无约束非线性规划问题的应用 357
12.4 二次规划 357
12.4.1 二次规划函数quadprog 358
12.4.2 二次规划问题的应用 359
12.5 有约束最小化 361
12.5.1 有约束最小化函数fmincon 361
12.5.2 有约束最小化的应用 364
12.6 目标规划 365
12.6.1 目标规划函数fgoalattain 365
12.6.2 目标规划的应用 367
12.7 最大最小化 372
12.7.1 最大最小化函数fminimax 372
12.7.2 最大最小化的应用 373
12.8 本章小结 375
第13章 句柄图形对象 376
13.1 句柄图形对象体系 377
13.1.1 句柄图形组织 377
13.1.2 句柄图形对象类型简介 378
13.2 句柄图形对象操作 378
13.2.1 创建对象 378
13.2.2 访问对象句柄 380
13.2.3 复制和删除对象 382
13.2.4 控制图形输出 383
13.2.5 保存句柄 387
13.3 句柄图形对象属性设置 388
13.3.1 设置属性 388
13.3.2 设置默认属性 389
13.3.3 通用属性 392
13.4 Figure对象 392
13.4.1 Figure对象介绍 392
13.4.2 Figure对象操作 394
13.5 Axes对象 394
13.5.1 标签与外观 394
13.5.2 位置 395
13.5.3 一图多轴 396
13.5.4 坐标轴控制 399
13.5.5 线条颜色控制 401
13.5.6 绘图操作 401
13.6 Core对象 402
13.6.1 Core对象介绍 402
13.6.2 Core对象创建示例 403
13.7 Plot对象 404
13.7.1 Plot对象介绍 404
13.7.2 Plot对象创建示例 404
13.7.3 连接变量 405
13.8 Group对象 406
13.8.1 Group对象介绍 406
13.8.2 创建Group对象 406
13.8.3 对象变换 406
13.9 Annotation对象 407
13.9.1 Annotation对象介绍 407
13.9.2 Annotation对象使用示例 408
13.10 本章小结 409
第14章 Simulink仿真基础 410
14.1 Simulink概述 411
14.1.1 基本概念 411
14.1.2 工作环境与启动 413
14.1.3 模型特点 415
14.1.4 模块组成 416
14.1.5 数据类型 417
14.1.6 模块和模块库 422
14.1.7 常用工具 427
14.1.8 示例演示 429
14.2 模型创建 431
14.2.1 模块的基本操作 431
14.2.2 模型和模型文件 434
14.2.3 模型创建流程 436
14.2.4 模块的基本操作 440
14.2.5 模块连接与处理 442
14.3 过零检测和代数环 443
14.3.1 过零检测 443
14.3.2 代数环 445
14.4 本章小结 446
第15章 Simulink仿真的应用 447
15.1 子系统的创建和封装 448
15.1.1 子系统介绍 448
15.1.2 创建子系统 449
15.1.3 封装子系统 450
15.2 仿真模型分析 454
15.2.1 模型状态的确定 455
15.2.2 线性化的数学描述 457
15.2.3 平衡点分析 458
15.2.4 微分方程的求解算法 459
15.3 运行仿真 460
15.3.1 启动仿真 460
15.3.2 仿真配置 463
15.3.3 优化仿真过程 468
15.4 模型调试 470
15.4.1 Simulink调试器 471
15.4.2 命令行调试及设置断点 471
15.5 实例应用 472
15.6 本章小结 478
第16章 Stateflow应用初步 479
16.1 Stateflow基础 480
16.1.1 Stateflow的定义 480
16.1.2 状态图编辑器 480
16.1.3 状态操作 482
16.1.4 转移操作 483
16.1.5 流程图 484
16.2 并行机制 487
16.2.1 设置状态关系 487
16.2.2 并行状态活动顺序配置 488
16.2.3 本地事件广播 488
16.2.4 直接事件广播 489
16.3 Stateflow的对象 490
16.3.1 真值表 490
16.3.2 图形函数 492
16.4 本章小结 493
第4部分
第17章 图形用户界面 494
17.1 图形用户界面介绍 495
17.2 控件 495
17.2.1 控件的创建 496
17.2.2 鼠标动作执行 498
17.2.3 事件队列的执行顺序 499
17.2.4 回调函数的编写 500
17.3 对话框对象 503
17.3.1 公共对话框 503
17.3.2 一般对话框 507
17.4 界面菜单 513
17.4.1 菜单建立 513
17.4.2 菜单属性 514
17.5 编写M文件 515
17.6 GUIDE工具 516
17.6.1 利用GUIDE进行图形用户界面设计 517
17.6.2 GUIDE创建的工具 523
17.6.3 创建带有Uicontrol控件的图形用户界面 525
17.7 本章小结 526
第18章 文件I/O操作 527
18.1 文件夹的管理 528
18.1.1 当前文件夹管理 528
18.1.2 创建文件夹 531
18.1.3 删除文件夹 532
18.1.4 复制或移动文件或文件夹 533
18.2 打开和关闭文件 535
18.2.1 打开文件 535
18.2.2 关闭文件 537
18.3 工作区数据文件 538
18.3.1 输出数据到MAT文件中 538
18.3.2 读取MAT文件――load函数 538
18.3.3 查看MAT文件的变量 539
18.4 读/写二进制文件 539
18.4.1 写二进制文件 539
18.4.2 读二进制文件 541
18.5 读/写文本文件 544
18.5.1 写文本文件 544
18.5.2 读文本文件 545
18.5.3 其他读/写文本文件的函数 548
18.6 文件内的位置控制 553
18.7 导入数据 555
18.8 本章小结 556
第19章 编译器 557
19.1 编译器概述 558
19.2 编译器的安装和配置 558
19.2.1 编译器的安装 558
19.2.2 编译器的配置 558
19.3 编译过程 559
19.4 编译命令mcc 559
19.5 编译生成独立可执行的应用程序 560
19.5.1 编译M文件 560
19.5.2 编译图形绘制M文件 562
19.5.3 由含feval指令的M文件生成EXE文件 563
19.5.4 编译GUI文件 565
19.6 本章小结 566
第20章 外部接口 567
20.1 接口概述 568
20.1.1 MEX文件介绍 568
20.1.2 MAT文件介绍 568
20.1.3 MATLAB计算引擎介绍 568
20.2 MEX文件应用 569
20.2.1 MEX文件的结构 569
20.2.2 创建C/C++语言MEX文件 570
20.2.3 调试C/C++语言MEX程序文件 574
20.3 MAT文件应用 575
20.3.1 使用C/C++语言创建MAT文件的过程 576
20.3.2 使用C/C++语言创建MAT文件示例 576
20.3.3 使用C/C++语言读取MAT文件示例 578
20.4 计算引擎应用 581
20.5 调用Java语言 581
20.5.1 Java接口使用 582
20.5.2 Java接口编程应用示例 586
20.6 本章小结 586