MATLAB高效编程技巧与应用:25个案例分析
出版时间:2010年版
内容简介
《MATLAB高效编程技巧与应用:25个案例分析》是作者八年MATLAB使用经验的总结,精心设计的所有案例均来自于国内各大MATLAB技术论坛网友的切身需求,其中不少案例涉及的内容和求解方法在国内现已出版的MATLAB书籍中鲜有介绍。《MATLAB高效编程技巧与应用:25个案例分析》首先针对MATLAB新版本特有的一些编程思想、高效的编程方法、新技术进行了较为详细的讨论,在此基础上,以大量案例介绍了MATLAB在科学计算中的应用。内容包括:MATLAB快速入门、重新认识矢量(向量)化编程、MATLAB处理海量数据、匿名函数类型介绍、嵌套函数类型介绍、积分以及积分方程求解案例、优化及非线性方程(组)求解案例、人脸图像压缩与重建案例、有关预测分类的案例、常微分方程(组)求解案例、层次分析法及其MATLAB实现、定时器及其应用。《MATLAB高效编程技巧与应用:25个案例分析》可作为高等院校本科生、研究生MATLAB课程的辅助读物,也可作为从事科学计算和算法研究的科研人员的参考用书。
目录
第一部分 高效编程技巧
第1章 MATLAB快速入门
1.1 熟悉MATLAB环境
1.1.1 MATLAB的启动
1.1.2 MATLAB desktop
1.1.3 MATLAB 程序编辑器(Editor)
1.2 MATLAB牛刀小试
1.2.1 Hello,MATLAB
1.2.2 万能计算器用法
1.2.3 一个“囧”的动画
1.2.4 编写第一个MATLAB函数
1.2.5 用MATLAB运行Windows系统命令
1.2.6 用MATLAB发送电子邮件
1.3 M语言介绍
1.3.1 数值和变量
1.3.2 MATLAB程序流程控制
1.4 学习MATLAB的方法
第2章 重新认识矢量(向量)化编程
2.1 矢量化编程流行的一些观点
2.2 重新认识循环
2.2.1 高版本MATLAB对循环结构的优化
2.2.2 选择循环还是向量化
2.3 提高代码效率的方法
2.3.1 预分配内存
2.3.2 选用恰当的函数类型
2.3.3 选用恰当的数据类型
2.3.4 减少无谓损耗——给一些函数“瘦身”
2.3.5 变“勤拿少取”为“少拿多取”
2.3.6 循环注意事项
2.3.7 逻辑索引和逻辑运算的应用
2.4 应用高版本向量化函数提高开发效率
2.4.1 accumarray函数
2.4.2 arrayfun函数
2.4.3 bsxfun函数
2.4.4 cellfun函数
2.4.5 spfun函数
2.4.6 structfun函数
第3章 MATLAB处理海量数据
3.1 处理海量数据时遇到的问题
3.1.1 什么是海量数据
3.1.2 经常遇到的问题
3.2 有效设置增加可用内存
3.2.1 系统默认下内存分配情况
3.2.2 打开Windows 3GB开关
3.3 减小内存消耗注意事项
3.3.1 读取数据文件
3.3.2 数据存储
3.3.3 减小内存其他注意事项
第4章 匿名函数类型
4.1 什么是匿名函数
4.1.1 匿名函数的基本定义
4.1.2 匿名函数的种类
4.2 匿名函数应用实例
4.2.1 匿名函数在求解方程中应用
4.2.2 匿名函数在显式表示隐函数方面的应用
4.2.3 匿名函数在求积分区域方面的应用
4.2.4 匿名函数在求数值方面的应用
4.2.5 匿名函数和符号计算的结合
4.2.6 匿名函数在优化中的应用
4.2.7 匿名函数在求积分区域方面的应用
4.2.8 匿名函数和cell数组的结合应用
第5章 嵌套函数类型
5.1 什么是嵌套函数
5.1.1 嵌套函数的基本定义
5.1.2 嵌套函数种类
5.2 嵌套函数的变量作用域
5.3 嵌套函数彼此调用关系
5.3.1 主函数和嵌套函数之间
5.3.2 不同的嵌套函数之间
5.3.3 嵌套函数调用关系总结
5.4 嵌套函数应用实例
5.4.1 嵌套函数在求解积分上限中的应用
5.4.2 嵌套函数在GUI中的应用
5.4.3 嵌套函数在3D作图中的一个应用
5.4.4 嵌套函数表示待优化的目标函数
5.4.5 嵌套函数在表示微分方程方面的应用
第二部分 案例介绍
第6章 积分以及积分方程案例
6.1 案例1:一般区域二重、三重积分MATLAB计算方法
6.1.1 概要
6.1.2 一般区域二重积分的计算
6.1.3 一般区域三重积分的计算
6.2 案例2:被积函数含有积分项的一类积分的一些求解方法
6.2.1 网格求解法
6.2.2 插值求解法
6.2.3 RBF神经网络逼近法
6.2.4 dblquad调用RBF神经网络法
6.2.5 dblquad+arrayfun方法
6.2.6 quad2d+arrayfun方法
6.3 案例3:一般区域N重积分
6.4 案例4:蒙特卡洛法计算N重积分
6.4.1 概述
6.4.2 基本的蒙特卡洛积分法
6.4.3 等分布序列的蒙特卡洛法
6.5 案例5:第二类FREDHOLM积分方程数值求解
6.5.1 概述
6.5.2 具体解法
6.5.3 实例
6.6 案例6:第一类FREDHOLM积分方程数值求解
6.6.1 概述
6.6.2 一类可以化为第二类Fredholm积分方程的第一类Fredholm积分方程求解方法
6.6.3 第一类Fredholm积分方程的直接数值积分解法讨论
6.7 案例7:第二类VOLTERRA积分方程数值求解
6.7.1 概述
6.7.2 具体解法
6.7.3 实例
6.8 案例8:第一类VOLTERRA积分方程数值求解
6.8.1 概述
6.8.2 转化为第二类Volterra积分方程
6.8.3 实例
第7章 MATLAB优化及非线性方程(组)求解案例
7.1 案例9:全局最优化的讨论
7.1.1 随机行走法寻优介绍
7.1.2 改进的随机行走法寻优
7.2 案例10:FSOLVE求非线性方程组的应用
7.2.1 概述
7.2.2 四元非线性方程组的求解
7.2.3 九元非线性方程组的求解
7.2.4 非线性积分方程的求解
7.3 案例11:渐变光波导方程求解
7.3.1 求解渐变光波导的模方程
7.3.2 二维渐变光波导方程作图
7.4 案例12:遗传算法在复杂系统可靠度和冗余度分配优化中的应用
7.4.1 问题提出
7.4.2 数学模型
7.4.3 遗传算法简介
7.4.4 实例分析
7.5 案例13:遗传算法在车间设备布局优化中的应用
7.5.1 问题提出
7.5.2 数学模型
7.5.3 算法步骤
7.5.4 求解代码
7.6 案例14:应用BENDERS分解算法求解混合0-1规划
7.6.1 概述
7.6.2 Benders分解算法
7.6.3 实例分析
第8章 案例15:人脸图像压缩与重建
8.1 概述
8.2 基本的PCA方法实现人脸图像压缩与重建
8.2.1 K-L变换
8.2.2 特征向量的选取
8.3 2DPCA方法实现人脸图像压缩与重建
8.3.1 概述
8.3.2 2DPCA算法介绍
8.3.3 图像压缩(特征提取)
8.3.3 图像重建
8.4 MATPCA方法实现人脸图像压缩与重建
8.4.1 概述
8.4.2 MatPCA算法
8.5 MODULEPCA方法实现人脸图像压缩与重建
8.5.1 概述
8.5.2 ModulePCA算法
8.6 算法在MATLAB平台上的实现
8.6.1 概述
8.6.2 基本PCA与2DPCA和MatPCA方法GUI
8.6.2 Module PCA方法GUI
第9章 有关预测分类的案例
9.1 案例16:北京市国民生产总值的灰色分析
9.1.1 概述
9.1.2 引言
9.1.3 灰色数据融合预测算法与灰色关联度
9.1.4 实例分析
9.2 案例17: 距离判别法与BAYES判别法在分类中的应用
9.2.1 概述
9.2.2 判别方法GUI
9.2.3 判别方法GUI应用举例
9.3 案例18: 支持向量机的应用
9.3.1 概述
9.3.2 支持向量机介绍
9.3.3 MATLAB所依据的支持向量机模型
9.3.4 支持向量机实现图像分割
9.3.5 支持向量机实现手写体数字识别
第10章 常微分方程(组)求解案例
10.1 案例19:常微分方程(组)解析求解案例
10.1.1 概述
10.1.2 dsolve函数
10.1.3 dsolve函数求解实例
10.2 数值求解常微分方程函数
10.2.1 概述
10.2.2 初值问题求解函数
10.2.3 延迟问题以及边值问题求解函数
10.2.4 求解前准备工作
10.3 案例20:非刚性/刚性常微分方程初值问题求解
10.3.1 概述
10.3.2 非刚性问题举例
10.3.3 刚性问题举例
10.4 案例21:隐式微分方程(组)求解
10.4.1 概述
10.4.2 利用solve函数
10.4.3 利用fzero/fsolve函数
10.5 案例22:微分代数方程(DAE)与延迟微分方程(DDE)求解
10.5.1 概述
10.5.2 微分代数方程(DAE)举例
10.5.3 延迟微分方程(DDE)举例
10.6 案例23:边值问题求解
10.6.1 概述
10.6.2 求解案例
10.6.3 对bvp4c和bvp5c的改进
第11章 案例24:层次分析法及其MATLAB实现
11.1 层次分析法概述
11.2 层次分析法实现步骤
11.2.1 层次分析法的主要步骤
11.2.2 建立层次分析的结构模型
11.2.3 构造成对比较矩阵
11.2.4 单一准则下元素相对排序权重计算及比较矩阵一致性检验
11.2.5 各元素对目标层的合成权重的计算过程
11.3 应用实例
第12章 案例25:定时器及其应用
12.1 定时器介绍
12.1.1 概述
12.1.2 定时器属性介绍
12.2 定时器应用举例
参考文献