《MATLAB从零到进阶》PDF下载

  • 购买积分:18 如何计算积分?
  • 作  者:刘焕进,吴鹏,郑志勇等编著
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2012
  • ISBN:9787512409071
  • 页数:619 页
图书介绍:本着从易到难,从基础到应用及提高的原则,本书结合大量案例系统讲解MATLAB语言编程要旨。主要内容包括:MATLAB简介和基本操作;绘图与可视化;程序设计;图形用户界面(GUI)编程;数据I/O(与TXT、Excel、数据库之间的数据交换);符号计算;数值积分计算;方程与方程组的数值解;常微分方程(组)数值求解;线性和非线性规划问题求解;多目标规划问题求解;概率分布与随机数;描述性统计;参数估计与假设检验;回归分析;多项式拟合与数据插值;MATLAB程序编译;系统级仿真工具Simulink及应用等。

第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的产品构成 6

1.1.6 MATLAB/ Simulink的应用领域 7

1.2 MATLAB的安装与启动 7

1.2.1 MATLAB的安装 7

1.2.2 MATLAB的启动 8

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分号的重要作用 10

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参考文献 21

第2章MATLAB基本操作 22

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

2.1.1变量的定义与赋值 22

2.1.2数据类型 23

2.1.3数据输出格式 23

2.2常用函数 23

2.3数组运算 25

2.3.1矩阵的定义 25

2.3.2特殊矩阵 28

2.3.3高维数组 30

2.3.4定义结构体数组 31

2.3.5定义元胞数组(Cell Array) 32

2.3.6几种数组的转换 33

2.3.7矩阵的算术运算 34

2.3.8矩阵的关系运算 36

2.3.9矩阵的逻辑运算 36

2.3.10矩阵的其他常用运算 37

2.4 MATLAB常用标点符号 41

2.5 MATLAB命令窗口中常用快捷命令 41

2.6参考文献 42

第3章MATLAB绘图与可视化 43

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

3.1.1句柄式图形对象 43

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

3.1.3设置图形对象属性值 45

3.2二维图形绘制 45

3.2.1基本二维绘图函数 45

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

3.2.3常用统计绘图函数 53

3.2.4特殊二维绘图函数 53

3.3三维图形绘制 55

3.3.1常用三维绘图函数 55

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

3.4图形的打印和输出 65

3.4.1把图形复制到剪贴板 65

3.4.2把图形导出到文件 67

3.4.3打印图形 69

3.5动画制作 71

3.5.1彗星运行轨迹动画 71

3.5.2霓虹闪烁动画 72

3.5.3电影动画 73

3.5.4录制AVI格式视频动画 74

3.5.5制作GIF格式动画 75

3.6参考文献 77

第4章MATLAB程序设计 78

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

4.1.1脚本文件 78

4.1.2函数文件 78

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

4.2.1 MATLAB程序流程控制 79

4.2.2 MATLAB程序调试 81

4.3程序流程控制示例 83

4.3.1概述 83

4.3.2问题分析 83

4.3.3 MATLAB求解 84

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

4.4.1匿名函数 85

4.4.2子函数 87

4.4.3嵌套函数 87

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

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

4.5.1匿名函数应用实例 95

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

4.6编写高效的MATLAB程序 104

4.6.1重新认识循环 104

4.6.2提高代码效率的方法 110

4.7养成良好的编程风格 121

4.7.1命名规则 121

4.7.2程序设计注意事项 123

4.7.3程序编排与注释 123

4.8参考文献 124

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

5.1图形对象 125

5.1.1图形对象的类型 126

5.1.2图形对象的属性 127

5.1.3图形对象的操作 131

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

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

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

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

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

5.4.1 M文件的类型 140

5.4.2根对象 144

5.4.3图形窗口对象 147

5.4.4坐标轴对象 149

5.4.5用户界面控件对象 151

5.4.6用户菜单对象 162

5.4.7用户现场菜单对象 163

5.4.8用户工具条对象 164

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

5.5.1 GUIDE及其组成部分 166

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

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

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

5.6典型案例介绍 175

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

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

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

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

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

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

6.1案例背景 195

6.2从TXT文件中读取数据 195

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

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

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

6.3把数据写入TXT文件 216

6.3.1调用dlmwrite函数写入数据 216

6.3.2调用fprintf函数写入数据 217

6.4参考文献 220

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

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

7.2调用函数读写Excel文件 222

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

7.2.2调用xlsread函数读取数据 223

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

7.3 Excel-Link宏 227

7.3.1 Excel 2003加载Excel-link宏 227

7.3.2使用Excel-link宏 228

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

7.4参考文献 234

第8章 数据库连接 235

8.1案例背景 235

8.2 MATLAB实现 235

8.2.1 Database工具箱简介 235

8.2.2 Database工具箱函数 235

8.2.3数据库数据读取 236

8.2.4数据库数据写入 240

8.3网络数据读取 242

8.3.1读取Yahoo数据 242

8.3.2读取Google数据 244

8.4参考文献 245

第9章 符号计算 246

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

9.1.1符号对象的创建 246

9.1.2符号表达式 247

9.1.3运算符 247

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

9.2符号微积分 249

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

9.2.2符号积分计算 251

9.3符号方程求解 252

9.3.1符号代数方程求解 252

9.3.2符号常微分方程求解 253

9.4参考文献 257

第10章 数值积分计算 258

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

10.1.1矩形区域积分 258

10.1.2离散数据积分 260

10.2含参数积分 261

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

10.3.1概要 262

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

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

10.4一般区域n重积分 267

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

10.5.1概述 270

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

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

10.6参考文献 274

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

11.1概述 275

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

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

11.2.2 fzero函数 276

11.2.3 roots函数 277

11.2.4 fsolve函数 278

11.2.5含参数方程组求解 279

11.3应用扩展 280

11.3.1等额还款模型 280

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

11.4参考文献 282

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

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

12.1.1概述 283

12.1.2初值问题求解函数 283

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

12.1.4求解前的准备工作 285

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

12.2.1概述 285

12.2.2非刚性问题举例 285

12.2.3刚性问题举例 287

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

12.3.1概述 290

12.3.2利用solve函数 290

12.3.3利用fzero/fsolve函数 291

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

12.4.1概述 295

12.4.2微分代数方程举例 295

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

12.5边值问题求解 303

12.5.1概述 303

12.5.2求解案例 303

12.6参考文献 307

第13章 线性规划问题 308

13.1案例背景 308

13.1.1线性规划应用 308

13.1.2线性规划的求解方法 309

13.2线性规划的标准型 309

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

13.4线性规划案例分析 310

13.4.1大规模内点法求解 311

13.4.2单纯形法求解 312

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

13.5.1目标函数含参数 313

13.5.2约束函数含参数 314

13.6参考文献 315

第14章 非线性优化问题 316

14.1理论背景 316

14.2理论模型 316

14.2.1无约束非线性优化 316

14.2.2约束非线性优化 316

14.3 MATLAB实现 317

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

14.3.2 fminsearch函数 320

14.3.3 fmincon函数 322

14.4案例扩展 326

14.4.1大规模优化问题 326

14.4.2含参数优化问题 327

14.5参考文献 328

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

15.1案例背景 329

15.1.1最大最小问题 329

15.1.2垃圾场选址问题 329

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

15.2.1 fminimax函数 330

15.2.2垃圾场选址问题求解 331

15.3案例扩展 332

15.4参考文献 334

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

16.1概率分布 335

16.1.1概率分布的定义 335

16.1.2几种常用概率分布 335

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

16.2生成一元分布随机数 340

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

16.2.2常见一元分布随机数 343

16.3生成多元分布随机数 348

16.4参考文献 349

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

17.1案例背景 350

17.2案例描述 350

17.3描述性统计量 352

17.3.1均值 352

17.3.2方差和标准差 352

17.3.3最大值和最小值 353

17.3.4极差 353

17.3.5中位数 354

17.3.6分位数 354

17.3.7众数 354

17.3.8变异系数 354

17.3.9原点矩 355

17.3.10中心矩 355

17.3.11偏度 355

17.3.12峰度 355

17.4统计图 356

17.4.1箱线图 356

17.4.2频数(率)直方图 357

17.4.3经验分布函数图 358

17.4.4正态概率图 359

17.4.5 p-p图 360

17.4.6 q-q图 360

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

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

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

17.6参考文献 366

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

18.1案例背景 367

18.2常见分布的参数估计 367

18.3正态总体参数的检验 369

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

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

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

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

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

18.4参考文献 374

第19章 回归分析 375

19.1一元线性回归 375

19.1.1数据的散点图 376

19.1.2调用regress函数作一元线性回归 377

19.1.3调用自编reglm函数作一元线性回归 382

19.1.4调用robustfit函数作稳健回归 385

19.2一元非线性回归 388

19.2.1数据的散点图 389

19.2.2调用nlinfit函数作一元非线性回归 390

19.2.3利用曲线拟合工具cftool作一元非线性拟合 395

19.3多元线性和广义线性回归 402

19.3.1调用regress函数作多元线性回归 403

19.3.2调用自编reglm函数作多元线性回归 404

19.3.3调用自编reglm函数作二次回归 405

19.3.4拟合效果图 406

19.3.5调用stepwise函数作逐步回归 407

19.4多元非线性回归——地震震中位置的确定 410

19.4.1问题描述 410

19.4.2模型建立 411

19.4.3调用nlinfit函数作多元非线性回归 411

19.5参考文献 413

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

20.1多项式回归 414

20.1.1多项式回归模型 414

20.1.2多项式回归的MATLAB实现 414

20.1.3多项式回归案例 415

20.2插值问题的数学描述 420

20.2.1什么是插值 420

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

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

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

20.3一维插值 422

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

20.3.2 interpl函数 423

20.3.3 spline函数 427

20.3.4 csape和csapi函数 427

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

20.3.6其他一维插值函数 431

20.4二维插值 432

20.4.1网格节点插值 432

20.4.2散乱节点插值 436

20.5高维插值 439

20.6参考文献 441

第21章MATLAB程序编译 442

21.1 MATLAB编译器的工作机理 442

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

21.1.2打包器(wrapper)文件 443

21.1.3组件技术文件(CTF) 444

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

21.2.1安装要求 444

21.2.2编译器的安装 445

21.2.3编译器的配置 445

21.2.4选项文件 447

21.3编译 449

21.3.1有关MATLAB编译器技术 449

21.3.2 mec命令详解 450

21.3.3输入和输出文件 456

21.4部署 459

21.4.1确定需要打包的文件 459

21.4.2使用部署工具 460

20.4.3部署到目标计算机 470

21.5典型案例介绍 474

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

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

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

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

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

21.6参考文献 498

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

22.1 Simulink简介 499

22.1.1何为Simulink 499

22.1.2 Simulink基础 500

22.1.3 Simulink仿真原理 514

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

22.2.1动态系统建模 530

22.2.2动态系统仿真 544

22.2.3 Simulink与MATLAB数据交互 546

22.3 S-Function 551

22.3.1 S-Function简介及原理 551

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

22.3.3 M语言S-Function 557

22.3.4 C MEX S-Function 568

22.4命令行仿真技术 576

22.4.1命令行方式建模 576

22.4.2命令行方式仿真 578

22.4.3命令行仿真示例 580

22.5综合实例 583

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

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

22.5.3案例3:温度控制 595

22.5.4案例4:模糊PID控制 602

22.5.5案例5:磁悬浮控制 609

22.6参考文献 614

附录Simulink常用命令列表 615