《MATLAB.&Simulink开发实例系列丛书 新编MATLAB/Simulink自学一本通》PDF下载

  • 购买积分:18 如何计算积分?
  • 作  者:谢中华,李国栋,刘焕进,吴鹏,郑志勇
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2017
  • ISBN:9787512424562
  • 页数:625 页
图书介绍:本书主要内容包括:MATLAB简介和基本操作,绘图与可视化,程序设计,图形用户界面(GUI)编程,数据I/O,符号计算,数值积分计算,方程与方程组的数值解,常微分方程(组)数值求解,线性规划和非线性优化问题求解,最大最小问题求解,概率分布与随机数,描述性统计,参数估计与假设检验,回归分析,多项式回归与数据插值,MATLAB程序编译,Simulink及其应用等。本书可作为一般读者自学MATLAB语言的参考书,也可作为理工类本科生、研究生学习MATLAB的教材或参考书。

第1章 MATLAB简介 1

1.1 MATLAB的那些事儿 1

1.1.1 MATLAB的起源 1

1.1.2 MATLAB的版本信息 1

1.1.3 MATLAB软件的系统组成 3

1.1.4 MATLAB的产品构成 4

1.1.5 Simulink的产品构成 5

1.1.6 MATLAB/Simulink的应用领域 7

1.2 MATLAB的安装与启动 7

1.2.1 MATLAB的安装 7

1.2.2 MATLAB的启动 7

1.3 MATLAB工作界面 8

1.3.1 工作界面布局 8

1.3.2 工作界面的显示属性调整 9

1.3.3 工作界面的布局调整 9

1.4 命令窗口(Command Window) 10

1.4.1 初识MATLAB命令 10

1.4.2 分号的重要作用 11

1.4.3 MATLAB命令窗口中常用的快捷键 11

1.5 历史命令窗口(Command History) 11

1.6 当前目录窗口(Current Directory) 12

1.6.1 MATLAB搜索路径机制和搜索顺序 12

1.6.2 MATLAB当前目录管理 13

1.6.3 MATLAB搜索路径设置 13

1.7 工作空间窗口(Workspace) 14

1.8 程序编辑窗口(Editor) 15

1.8.1 编辑M文件 15

1.8.2 M文件的调用 16

1.8.3 MATLAB程序编辑窗口中常用的快捷键 17

1.9 MATLAB帮助系统 17

1.9.1 MATLAB命令窗口帮助系统 17

1.9.2 Help帮助浏览器 18

1.10 参考文献 20

第2章 MATLAB基本操作 21

2.1 变量的定义与数据类型 21

2.1.1 变量的定义与赋值 21

2.1.2 MATLAB中的常量 21

2.1.3 MATLAB中的关键字 23

2.1.4 数据类型 23

2.1.5 数据输出格式 24

2.2 常用函数 24

2.3 数组的定义 26

2.3.1 向量的定义 26

2.3.2 矩阵的定义 27

2.3.3 特殊矩阵 29

2.3.4 高维数组 31

2.3.5 访问数组元素 32

2.3.6 定义元胞数组(Cell Array) 33

2.3.7 定义结构体数组 34

2.3.8 几种数组的转换 35

2.3.9 定义数据集数组 36

2.3.10 定义表格型数组 37

2.4 数组运算 37

2.4.1 矩阵的算术运算 37

2.4.2 矩阵的关系运算 39

2.4.3 矩阵的逻辑运算 40

2.4.4 矩阵的其他常用运算 41

2.5 MATLAB常用标点符号 43

2.6 MATLAB命令窗口中常用的快捷命令 44

2.7 参考文献 45

第3章 MATLAB绘图与可视化 46

3.1 图形对象与图形对象句柄 46

3.1.1 句柄式图形对象 46

3.1.2 获取图形对象属性名称和属性值 47

3.1.3 设置图形对象属性值 48

3.2 二维图形绘制 48

3.2.1 基本二维绘图函数 48

3.2.2 二维图形修饰和添加注释 51

3.2.3 常用统计绘图函数 56

3.2.4 特殊二维绘图函数 57

3.3 三维图形绘制 59

3.3.1 常用三维绘图函数 59

3.3.2 三维图形的修饰和添加注释 64

3.4 图形的打印和输出 68

3.4.1 把图形复制到剪贴板 68

3.4.2 把图形导出到文件 70

3.4.3 打印图形 72

3.5 动画制作 74

3.5.1 彗星运行轨迹动画 74

3.5.2 霓虹闪烁动画 75

3.5.3 电影动画 76

3.5.4 录制AVI格式视频动画 77

3.5.5 制作GIF格式动画 79

3.6 参考文献 80

第4章 MATLAB程序设计 81

4.1 M文件——脚本文件和函数文件 81

4.1.1 脚本文件 81

4.1.2 函数文件 81

4.2 MATLAB程序流程控制与调试 82

4.2.1 MATLAB程序流程控制 82

4.2.2 MATLAB程序调试 84

4.3 程序流程控制示例 86

4.3.1 概述 86

4.3.2 问题分析 86

4.3.3 MATLAB求解 87

4.4 匿名函数、子函数与嵌套函数 88

4.4.1 匿名函数 88

4.4.2 子函数 90

4.4.3 嵌套函数 90

4.4.4 嵌套函数的彼此调用关系 94

4.5 匿名函数、子函数与嵌套函数应用案例 98

4.5.1 匿名函数应用实例 98

4.5.2 子函数和嵌套函数应用实例 102

4.6 编写高效的MATLAB程序 107

4.6.1 重新认识循环 107

4.6.2 提高代码效率的方法 113

4.7 养成良好的编程风格 124

4.7.1 命名规则 124

4.7.2 程序设计注意事项 126

4.7.3 程序编排与注释 126

4.8 参考文献 127

第5章 图形用户界面(GUI)编程 128

5.1 图形对象 128

5.1.1 图形对象的类型 129

5.1.2 图形对象的属性 132

5.1.3 图形对象的操作 135

5.2 图形用户界面的设计原则和步骤 140

5.2.1 图形用户界面设计原则 140

5.2.2 图形用户界面的设计步骤 141

5.3 开发图形用户界面的方法 142

5.4 直接编写M文件开发图形用户界面 145

5.4.1 M文件的类型 145

5.4.2 根对象 149

5.4.3 图形窗口对象 152

5.4.4 坐标轴对象 154

5.4.5 用户界面控件对象 156

5.4.6 用户菜单对象 168

5.4.7 用户现场菜单对象 169

5.4.8 用户工具条对象 170

5.5 利用GUIDE工具开发图形用户界面 172

5.5.1 GUIDE及其组成部分 172

5.5.2 GUIDE产生的FIG文件和M文件 173

5.5.3 GUIDE创建的GUI中的数据管理 176

5.5.4 利用GUIDE创建图形用户界面 177

5.6 典型案例介绍 181

5.6.1 基于列表控件的图片浏览器 181

5.6.2 在GUI中对鼠标进行控制 185

5.6.3 实现同一GUI内的不同控件之间的数据传递 188

5.6.4 实现不同GUI之间的数据传递 193

5.6.5 在GUI中控制Simulink仿真过程 197

第6章 MATLAB与TXT文件的数据交换 201

6.1 案例背景 201

6.2 从TXT文件中读取数据 201

6.2.1 利用数据导入向导导入TXT文件 202

6.2.2 调用高级函数读取数据 205

6.2.3 调用低级函数读取数据 215

6.3 把数据写入TXT文件 222

6.3.1 调用dlmwrite函数写入数据 222

6.3.2 调用fprintf函数写入数据 223

6.4 参考文献 226

第7章 MATLAB与Excel文件的数据交换 227

7.1 利用数据导入向导导入Excel文件 227

7.2 调用函数读写Excel文件 228

7.2.1 调用xlsfinfo函数获取文件信息 228

7.2.2 调用xlsread函数读取数据 228

7.2.3 调用xlswrite函数把数据写入Excel文件 231

7.3 Excel-Link宏 232

7.3.1 Excel 2003加载Excel-link宏 233

7.3.2 使用Excel-link宏 234

7.3.3 Excel 2007与Excel 2010加载和使用宏 237

7.4 参考文献 240

第8章 数据库连接 241

8.1 案例背景 241

8.2 MATLAB实现 241

8.2.1 Database工具箱简介 241

8.2.2 Database工具箱函数 241

8.2.3 数据库数据读取 242

8.2.4 数据库数据写入 246

8.3 网络数据读取 248

8.3.1 读取Yahoo数据 248

8.3.2 读取Google数据 250

8.4 参考文献 251

第9章 符号计算 252

9.1 符号对象和符号表达式 252

9.1.1 符号对象的创建 252

9.1.2 符号表达式 253

9.1.3 运算符 253

9.1.4 符号计算与数值计算结合 254

9.2 符号微积分 255

9.2.1 极限、导数和级数的符号计算 255

9.2.2 符号积分计算 257

9.3 符号方程求解 258

9.3.1 符号代数方程求解 258

9.3.2 符号常微分方程求解 259

9.4 参考文献 263

第10章 数值积分计算 264

10.1 矩形区域积分以及离散数据积分 264

10.1.1 矩形区域积分 264

10.1.2 离散数据积分 266

10.2 含参数积分 267

10.3 一般区域二重和三重积分 269

10.3.1 概要 269

10.3.2 一般区域二重积分的计算 270

10.3.3 一般区域三重积分的计算 272

10.4 一般区域n重积分 274

10.5 蒙特卡洛法计算n重积分 277

10.5.1 概述 277

10.5.2 基本的蒙特卡洛积分法 277

10.5.3 等分布序列的蒙特卡洛法 278

10.6 参考文献 281

第11章 方程与方程组的数值求解 282

11.1 概述 282

11.2 MATLAB求解方程(组)的函数及其用法 282

11.2.1 左除“\”与右除“/” 282

11.2.2 fzero函数 283

11.2.3 roots函数 284

11.2.4 fsolve函数 285

11.2.5 含参数方程组求解 286

11.3 应用扩展 287

11.3.1 等额还款模型 287

11.3.2 MATLAB编程求解等额还款模型 288

11.4 参考文献 289

第12章 常微分方程(组)数值求解 290

12.1 数值求解常微分方程(组)函数概述 290

12.1.1 概述 290

12.1.2 初值问题求解函数 290

12.1.3 延迟问题以及边值问题求解函数 291

12.1.4 求解前的准备工作 292

12.2 非刚性/刚性常微分方程初值问题求解 292

12.2.1 概述 292

12.2.2 非刚性问题举例 292

12.2.3 刚性问题举例 294

12.3 隐式微分方程(组)求解 297

12.3.1 概述 297

12.3.2 利用solve函数 297

12.3.3 利用fzero/fsolve函数和odel5i函数 298

12.4 微分代数方程(DAE)与延迟微分方程(DDE)求解 302

12.4.1 概述 302

12.4.2 微分代数方程举例 302

12.4.3 延迟微分方程(DDE)举例 307

12.5 边值问题求解 310

12.5.1 概述 310

12.5.2 求解案例 310

12.6 参考文献 314

第13章 线性规划问题 315

13.1 案例背景 315

13.1.1 线性规划应用 315

13.1.2 线性规划的求解方法 316

13.2 线性规划的标准型 316

13.3 线性规划问题的MATLAB求解 316

13.4 线性规划案例分析 318

13.4.1 传统内点法求解 318

13.4.2 单纯形法求解 319

13.5 案例扩展——含参数线性规划 320

13.5.1 目标函数含参数 320

13.5.2 约束函数含参数 321

13.6 参考文献 322

第14章 非线性优化问题 323

14.1 理论背景 323

14.2 理论模型 323

14.2.1 无约束非线性优化 323

14.2.2 约束非线性优化 323

14.3 MATLAB实现 324

14.3.1 fminunc函数(无约束优化) 324

14.3.2 fminsearch函数 327

14.3.3 fmincon函数 329

14.4 案例扩展 333

14.4.1 大规模优化问题 333

14.4.2 含参数优化问题 334

14.5 参考文献 335

第15章 最大最小问题——公共设施选址 336

15.1 案例背景 336

15.1.1 最大最小问题 336

15.1.2 垃圾场选址问题 336

15.2 最大最小问题的MATLAB求解 337

15.2.1 fminimax函数 337

15.2.2 垃圾场选址问题求解 338

15.3 案例扩展 339

15.4 参考文献 341

第16章 概率分布与随机数 342

16.1 概率分布 342

16.1.1 概率分布的定义 342

16.1.2 几种常用概率分布 342

16.1.3 概率密度、分布和逆概率分布函数值的计算 345

16.2 生成一元分布随机数 347

16.2.1 均匀分布随机数和标准正态分布随机数 347

16.2.2 常见一元分布随机数 350

16.3 生成多元分布随机数 355

16.4 参考文献 356

第17章 描述性统计量和统计图 357

17.1 案例背景 357

17.2 案例描述 357

17.3 描述性统计量 359

17.3.1 均值 359

17.3.2 方差和标准差 359

17.3.3 最大值和最小值 360

17.3.4 极差 360

17.3.5 中位数 361

17.3.6 分位数 361

17.3.7 众数 361

17.3.8 变异系数 361

17.3.9 原点矩 362

17.3.10 中心矩 362

17.3.11 偏度 362

17.3.12 峰度 362

17.4 统计图 363

17.4.1 箱线图 363

17.4.2 频数(率)直方图 364

17.4.3 经验分布函数图 365

17.4.4 正态概率图 366

17.4.5 p-p图 367

17.4.6 q-q图 367

17.5 案例扩展:频数和频率分布表 368

17.5.1 调用tabulate函数作频数和频率分布表 368

17.5.2 调用自编HistRate函数作频数和频率分布表 370

17.6 参考文献 373

第18章 参数估计与假设检验 374

18.1 案例背景 374

18.2 常见分布的参数估计 374

18.3 正态总体参数的检验 376

18.3.1 总体标准差已知时的单个正态总体均值的U检验 376

18.3.2 总体标准差未知时的单个正态总体均值的t检验 378

18.3.3 总体标准差未知时的两个正态总体均值的比较t检验 378

18.3.4 总体均值未知时的单个正态总体方差的x2检验 379

18.3.5 总体均值未知时的两个正态总体方差的比较F检验 380

18.4 参考文献 381

第19章 回归分析 382

19.1 MATLAB回归模型类 382

19.1.1 线性回归模型类 382

19.1.2 非线性回归模型类 385

19.2 一元线性回归 386

19.2.1 数据的散点图 387

19.2.2 模型的建立与求解 388

19.2.3 回归诊断 390

19.2.4 稳健回归 394

19.3 一元非线性回归 395

19.3.1 数据的散点图 396

19.3.2 模型的建立与求解 397

19.3.3 回归诊断 400

19.3.4 利用曲线拟合工具cftool作一元非线性拟合 402

19.4 多元线性和广义线性回归 404

19.4.1 可视化相关性分析 405

19.4.2 多元线性回归 406

19.4.3 多元多项式回归 409

19.4.4 拟合效果图 410

19.4.5 逐步回归 411

19.5 多元非线性回归 413

19.5.1 案例描述 413

19.5.2 模型建立 414

19.5.3 模型求解 415

19.6 参考文献 416

第20章 多项式回归与数据插值 417

20.1 多项式回归 417

20.1.1 多项式回归模型 417

20.1.2 多项式回归的MATLAB实现 417

20.1.3 多项式回归案例 418

20.2 插值问题的数学描述 423

20.2.1 什么是插值 423

20.2.2 一维插值问题的数学描述 423

20.2.3 二维插值问题的数学描述 424

20.2.4 三次样条插值的数学描述 424

20.3 一维插值 425

20.3.1 自编拉格朗日插值函数lagrange 425

20.3.2 interpl函数 426

20.3.3 spline函数 430

20.3.4 csape和csapi函数 430

20.3.5 spapi函数(B样条插值) 432

20.3.6 其他一维插值函数 433

20.4 二维插值 435

20.4.1 网格节点插值 436

20.4.2 散乱节点插值 439

20.5 高维插值 442

20.6 参考文献 444

第21章 MATLAB程序编译 445

21.1 MATLAB编译器的工作机理 446

21.1.1 利用MATLAB编译器产生应用程序或运行库 446

21.1.2 打包器(wrapper)文件 447

21.1.3 组件技术文件(CTF) 447

21.2 MATLAB编译器的安装和配置 447

21.2.1 安装要求 447

21.2.2 编译器的安装 448

21.2.3 编译器的配置 449

21.2.4 选项文件 450

21.3 编译 453

21.3.1 有关MATLAB编译器技术 453

21.3.2 mcc命令详解 454

21.3.3 输入和输出文件 459

21.4 部署 462

21.4.1 确定需要打包的文件 462

21.4.2 使用部署工具 464

21.4.3 部署到目标计算机 472

21.5 典型案例介绍 475

21.5.1 将脚本M文件编译为独立的应用程序 475

21.5.2 将函数M文件编译为独立的应用程序 478

21.5.3 将由GUIDE创建的GUI程序编译为可独立运行的程序 481

21.5.4 将MATLAB程序编译为C共享库 484

21.5.5 将MATLAB程序编译为C++动态链接库 492

21.6 参考文献 500

第22章 系统级仿真工具Simulink及应用 501

22.1 Simulink简介 501

22.1.1 何为Simulink 501

22.1.2 Simulink基础 502

22.1.3 Simulink仿真原理 518

22.2 Simulink动态系统建模与仿真 532

22.2.1 动态系统建模 532

22.2.2 动态系统仿真 548

22.2.3 Simulink与MATLAB数据交互 551

22.3 S-Function 555

22.3.1 S-Function简介及原理 555

22.3.2 S-Function实现方式及其特点 558

22.3.3 M语言S-Function 561

22.3.4 C MEX S-Function 572

22.4 命令行仿真技术 581

22.4.1 命令行方式建模 581

22.4.2 命令行方式仿真 582

22.4.3 命令行仿真示例 585

22.5 综合实例 588

22.5.1 案例1:字符编码与版本兼容 588

22.5.2 案例2:用S-Function自定义模块 592

22.5.3 案例3:温度控制 601

22.5.4 案例4:模糊PID控制 608

22.5.5 案例5:磁悬浮控制 615

22.6 参考文献 620

附录 Simulink常用命令列表 621