第一部分 MATLAB 基础知识 第 1 章 MATLAB概述 3 1.1 MATLAB 工作环境. 3 1.1.1 操作界面简介 3 1.1.2 命令行窗口 4 1.1.3 命令历史记录窗口. 6 1.1.4 当前文件夹窗口和路径管理 8 1.1.5 搜索路径 . 8 1.1.6 工作区窗口和数组编辑器 10 1.1.7 变量的编辑命令 11 1.1.8 存取数据文件 12 1.2 MATLAB 的帮助系统 . 13 1.2.1 纯文本帮助 13 1.2.2 帮助导航 . 13 1.2.3 示例帮助 . 14 1.3 本章小结 15 第 2 章 基本运算 16 2.1 MATLAB 的数据类型 . 16 2.1.1 变量和常量 16 2.1.2 数值型数据 17 2.1.3 字符型数据 18 2.1.4 元胞数组 . 19 2.1.5 结构体. 20 2.1.6 函数句柄 . 21 2.1.7 数据类型间的转换. 21 2.2 数组运算 22 2.2.1 数组的创建和操作. 23 2.2.2 数组的常见运算 25 2.3 矩阵的运算 28 2.3.1 矩阵的生成 29 2.3.2 向量的生成 31 14 MATLAB 科学计算(第 2 版) 2.3.3 矩阵的加减运算 32 2.3.4 矩阵的乘法运算 33 2.3.5 矩阵的除法运算 34 2.4 矩阵的基本函数运算 . 34 2.4.1 矩阵的分解运算 35 2.4.2 关系运算和逻辑运算 . 36 2.5 符号运算 38 2.5.1 符号表达式的生成. 38 2.5.2 符号矩阵 . 39 2.5.3 常用符号运算 40 2.6 复数及其运算 41 2.6.1 复数和复矩阵的生成 . 41 2.6.2 复数的运算 42 2.7 多项式求解初步. 42 2.8 本章小结 45 第 3 章 图形可视化 46 3.1 图形绘制 46 3.1.1 离散数据图形绘制. 46 3.1.2 函数图形绘制 47 3.1.3 图形绘制的基本步骤 . 48 3.2 二维图形绘制 48 3.2.1 plot()函数 . 48 3.2.2 格栅. 49 3.2.3 图形标记说明 50 3.2.4 线型、标记和颜色. 51 3.2.5 子图绘制 . 52 3.2.6 拓扑关系图 53 3.2.7 双坐标轴绘制 54 3.2.8 二元函数的伪色彩. 55 3.2.9 MATLAB 特殊符号标记 . 56 3.3 三维图形绘制 59 3.3.1 网格图绘制 59 3.3.2 曲线图绘制 61 3.3.3 曲面图绘制 63 3.3.4 等值线图绘制 64 3.3.5 特殊图形绘制 65 3.4 图形可视化与动画设计 68 3.4.1 图形可视化 68 3.4.2 动画设计 . 70 目 录 15 3.5 本章小结 72 第 4 章 程序设计 73 4.1 MATLAB 编程概述. 73 4.1.1 编辑器窗口 73 4.1.2 MATLAB 编程原则 74 4.2 M 文件和函数 75 4.2.1 M 文件. 75 4.2.2 匿名函数 . 77 4.2.3 主函数与子函数 78 4.2.4 重载函数 . 79 4.2.5 eval()、feval()函数 79 4.2.6 内联函数 . 81 4.2.7 向量化和预分配 83 4.2.8 函数参数传递 84 4.3 程序控制 86 4.3.1 分支控制语句 86 4.3.2 循环控制语句 88 4.3.3 其他控制语句 90 4.4 程序调试和优化. 93 4.4.1 程序调试命令 94 4.4.2 常见错误类型 94 4.4.3 效率优化 . 98 4.4.4 内存优化 . 98 4.5 本章小结.100 第二部分 MATLAB 计算实现 第 5 章 数据插值 103 5.1 插值算法.103 5.1.1 拉格朗日插值 .103 5.1.2 牛顿均差插值 .105 5.1.3 埃尔米特插值 .107 5.1.4 艾特肯插值法 .109 5.2 一维数据插值 .112 5.2.1 分段线性插值 .112 5.2.2 分段三次多项式插值 113 5.2.3 三次样条插值 .114 5.2.4 最邻近区域插值 .115 5.3 二维数据插值 .119 16 MATLAB 科学计算(第 2 版) 5.4 多维数据插值 .126 5.5 本章小结.128 第 6 章 逼近与拟合 129 6.1 函数逼近.129 6.1.1 切比雪夫逼近 .129 6.1.2 傅里叶逼近.131 6.1.3 勒让德逼近.134 6.2 最小二乘拟合 .136 6.2.1 拟合工具箱.136 6.2.2 多项式拟合.138 6.2.3 曲线拟合 141 6.2.4 正交最小二乘拟合143 6.2.5 超定方程组的最小二乘解.145 6.3 非线性曲线拟合146 6.3.1 非线性曲线拟合函数 146 6.3.2 非线性拟合转线性拟合 149 6.4 数据拟合应用 .152 6.5 本章小结.155 第 7 章 微积分 . 156 7.1 微积分基础 .156 7.1.1 极限156 7.1.2 导数157 7.1.3 积分158 7.1.4 化简159 7.1.5 留数159 7.2 常用积分函数 .161 7.2.1 定积分161 7.2.2 二重积分 163 7.2.3 三重积分 163 7.2.4 梯度与法线.164 7.3 数值积分.165 7.3.1 梯形积分法.165 7.3.2 龙贝格积分法 .166 7.3.3 自适应积分法 .168 7.3.4 样条函数求积分 .170 7.3.5 重积分数值计算 .170 7.4 数值微分.173 7.4.1 中点公式 173 7.4.2 三点公式法和五点公式法.174 目 录 17 7.4.3 辛普森数值微分法176 7.4.4 理查森外推算法 .178 7.4.5 样条函数法.180 7.5 积分变换.181 7.5.1 傅里叶变换及其逆变换 181 7.5.2 拉普拉斯变换及其逆变换.181 7.5.3 Z 变换及其逆变换 182 7.6 本章小结.182 第 8 章 矩阵特征值 183 8.1 范数与矩阵变换183 8.1.1 范数183 8.1.2 矩阵相似变换 .186 8.2 函数求解特征值187 8.2.1 舒尔分解法.187 8.2.2 奇异值分解法 .188 8.2.3 矩阵特征值的函数188 8.2.4 矩阵指数 190 8.3 特征值数值求解190 8.3.1 特征多项式法 .190 8.3.2 幂法191 8.3.3 逆幂法192 8.3.4 位移逆幂法.194 8.3.5 瑞利商加速幂法 .195 8.3.6 收缩法197 8.3.7 QR 算法198 8.4 本章小结.201 第 9 章 线性方程(组). 202 9.1 直接求解法 .202 9.1.1 求逆法202 9.1.2 分解法203 9.2 迭代求解法 .207 9.2.1 循环迭代 207 9.2.2 迭代收敛性.208 9.2.3 牛顿迭代 212 9.3 数值计算算法 .215 9.3.1 高斯消元法.216 9.3.2 追赶法218 9.3.3 高斯-赛德尔迭代法220 9.3.4 雅可比迭代法 .223 18 MATLAB 科学计算(第 2 版) 9.4 方程组的性态 .226 9.5 本章小结.230 第 10 章 非线性方程(组) . 231 10.1 函数求解.231 10.1.1 fzero()函数.231 10.1.2 fsolve()函数 .232 10.2 夹逼法求方程的解 235 10.2.1 二分法235 10.2.2 黄金分割法.236 10.2.3 弦截法237 10.2.4 抛物线法 240 10.3 迭代法求方程的解 242 10.3.1 不动点迭代法 .242 10.3.2 两步迭代法.245 10.3.3 牛顿法247 10.3.4 重根迭代法.249 10.4 方程组数值解法251 10.4.1 不动点迭代法 .251 10.4.2 牛顿迭代法.252 10.4.3 拟牛顿法 254 10.5 本章小结.256 第 11 章 常微分方程(组) . 257 11.1 微分方程基本运算 257 11.1.1 常微分方程符号解257 11.1.2 MATLAB 求解器 .259 11.1.3 泰勒级数 267 11.2 欧拉法 269 11.2.1 向前欧拉法.269 11.2.2 向后欧拉法.273 11.2.3 梯形公式 275 11.2.4 改进欧拉公式 .279 11.3 龙格-库塔法 .281 11.3.1 二阶龙格-库塔法 .282 11.3.2 三阶龙格-库塔法 .285 11.3.3 四阶龙格-库塔法 .288 11.3.4 步长的选取.291 11.4 边值问题的数值计算.293 11.4.1 打靶法293 11.4.2 有限差分法.296 目 录 19 11.4.3 内置库函数.298 11.5 微分方程组求解301 11.5.1 一阶微分方程(组) 301 11.5.2 高阶微分方程(组) 303 11.6 本章小结.308 第 12 章 偏微分方程 309 12.1 偏微分方程概述309 12.2 偏微分方程工具310 12.2.1 工具箱概述.310 12.2.2 求解椭圆方程 .314 12.2.3 求解抛物线方程 .317 12.2.4 求解双曲线方程 .319 12.2.5 求解特征值方程 .321 12.3 椭圆型偏微分方程 323 12.3.1 Helmholtz 方程 323 12.3.2 牛顿边值条件 .327 12.4 抛物线偏微分方程 329 12.4.1 显式前向欧拉法 .329 12.4.2 隐式后向欧拉法 .331 12.4.3 Grank-Nicholson 法 .333 12.4.4 二维抛物线方程 .335 12.5 双曲线型偏微分方程.338 12.5.1 显式中心差分法 .338 12.5.2 二维双曲线型方程340 12.6 本章小结.342 第三部分 MATLAB 拓展应用 第 13 章 概率统计 345 13.1 随机变量的特征345 13.1.1 期望345 13.1.2 方差、标准差、矩346 13.1.3 协方差、相关系数349 13.2 概率计算.350 13.2.1 随机数发生器 .351 13.2.2 多维联合分布随机数 353 13.2.3 概率密度函数 .356 13.2.4 特殊连续分布 .359 13.2.5 特殊离散分布 .363 20 MATLAB 科学计算(第 2 版) 13.3 统计图绘制 .364 13.4 方差分析.368 13.4.1 单因素方差分析 .368 13.4.2 双因素方差分析 .369 13.5 参数估计.370 13.5.1 常见分布的参数估计 371 13.5.2 点估计372 13.5.3 区间估计 373 13.6 假设检验.374 13.6.1 单个总体 N(µ, σ2)均值 µ 的检验.375 13.6.2 正态总体均值差的检验(t 检验)377 13.6.3 基于成对数据的检验(t 检验)378 13.6.4 正态总体方差的假设检验.379 13.6.5 分布拟合假设检验380 13.7 蒙特卡罗法 .382 13.8 本章小结.387 第 14 章 回归分析 388 14.1 回归分析方法388 14.1.1 线性回归 389 14.1.2 非线性回归.394 14.1.3 逐步回归 396 14.2 偏最小二乘回归398 14.2.1 基本原理 398 14.2.2 案例分析 401 14.3 本章小结.407 第 15 章 优化计算 408 15.1 优化计算概述408 15.1.1 优化常用函数 .408 15.1.2 最优化问题.410 15.2 线性规划.412 15.2.1 线性规划函数 .412 15.2.2 线性规划问题的应用 414 15.3 非线性规划 .419 15.3.1 有约束一元函数最小值 420 15.3.2 无约束多元函数最小值 420 15.3.3 有约束多元函数最小值 423 15.3.4 二次规划 427 15.3.5 “半无限”有约束多元函数最优解 429 15.4 多目标规划 .433 目 录 21 15.5 最大化和最小化437 15.6 最小二乘最优问题 439 15.6.1 约束线性最小二乘440 15.6.2 非线性曲线拟合 .441 15.6.3 非线性最小二乘 .442 15.6.4 非负线性最小二乘443 15.7 本章小结.444 第 16 章 智能算法 445 16.1 人工智能概述445 16.1.1 人工智能概念 .445 16.1.2 人工智能研究目标446 16.1.3 典型应用 446 16.2 粒子群算法 .447 16.2.1 基本原理 448 16.2.2 算法实现 449 16.2.3 粒子群混合算法 .455 16.3 遗传算法.459 16.3.1 基本原理 459 16.3.2 算法实现 462 16.3.3 旅行商问题.466 16.4 蚁群算法.472 16.4.1 基本原理 472 16.4.2 算法实现 473 16.4.3 路径规划问题 .475 16.5 模拟退火算法482 16.5.1 基本原理 482 16.5.2 算法实现 483 16.5.3 经典应用 485 16.6 本章小结.485 参考文献 486