《MATLAB数学实验与建模》采用最新版MATLAB R2009a,基于MATLAB R2009a软件系统地介绍了大学数学中的基本实验教学内容。全书共分9章,主要介绍了MATLAB基础、MATLAB的程序与图形、基本的数学函数、数据建模、方程的求解、优化问题、部分智能优化算法介绍、图形用户界面的设计、数学建模的综合实验。
《MATLAB数学实验与建模》可作为大学“数学实验”和“数学建模”课程的教材,也可作为广大科研人员、学者、工程技术人员的参考用书。
理论与实践并重、站在工程与科技的前沿 取材科学、结构严谨 数学实验的最新成果 建模大赛的最好助手
随着MATLAB版本的不断更新,其功能越来越强,使它在诸如一般数值计算、数字信号处理、系统识别、自动控制、振动理论、时序分析与建模、优化设计、神经网络控制、化学统计学、动态仿真系统、特殊函数和图形领域表现出一般高级语言难以比拟的优势,并可以方便地用于几乎所有的科学和工程计算的各个方面。可以说,MATLAB不仅是一种编程语言,而且在广义上是一种语言开发系统。
本书采用最新版MATLAB R2009a编写,在MATLAB R2009a新版本中,产品模块进行了一些调整,将MATLAB Builder for COM功能集成到了MATLAB Builder for .net中、Financial Time Series Toolbox功能集成到了Financial Toolbox中。MATLAB将高性能的数值计算和可视化集成在一起,并提供了大量的内置函数,从而被广泛地应用于科学计算、控制系统、信息处理等领域的分析、仿真和设计工作。利用MATLAB产品的开放式结构,可以非常容易地对MATLAB的功能进行扩充,从而在不断深化对问题认识的同时不断完善MATLAB产品,以提高产品自身的竞争能力。
MATLAB开放的产品体系使其成为诸多领域的首选开发软件,并且,MATLAB还具有500余家第三方合作伙伴,分布在科学计算、机械动力、化工、计算机通信、汽车、金融等领域。接口方式包括联合建模、数据共享、开发流程衔接等。
由于计算机的出现,今日的数学已经不仅是一门科学,同时还是一种关键的、普遍适用的技术。早在1959年,著名的数学家华罗庚教授就曾形象地概述了数学的各种应用:“宇宙之大,粒子之微,火箭之速,化工之巧,地球之变,生物之谜,日用之繁等各个方面,无处不有数学的重要贡献。”时至今日,计算机计算速度的快速发展使得许多过去无法解决的问题有了解决的可能,大量新兴的数学方法正在被有效地采用,数学的应用范围急剧扩大。由于计算机具有处理大量信息的功能,所以定量分析技术已经渗透到一切学科领域。从卫星到核电站,从天气预报到家用电器,无不是通过数学模型和数学方法并借助计算机的计算来实现。例如,Tobin建立了“投资决策的数学模型”,1981年获得了诺贝尔经济学奖;在水资源研究方面,为了建立一套地下水资源评价的理论和方法,需要建立各种地层结构的数学模型等。
经济数学是高等院校经济管理类专业的一门重要的基本课程,除了为学习后续课程和现代科技知识提供必要的数学工具外,也是对学生的抽象思维能力、逻辑推理能力、运算能力、分析与解决经济管理等学科领域内的实际问题能力进行综合培养的关键课程。根据21世纪人才培养的需要,有必要加强经济数学课程的教学研究,加强经济数学课程的建设与改革。计算机技术和网络技术的飞速发展将我们带入了信息时代,科学技术的进步在改变着我们的生活方式的同时,也改变着我们的思维方式和科学研究手段。这不仅促进了现代教育技术的不断发展,也对经典的数学课程的内容、教学方法以及教学思想产生了影响,数学实验正是在这一背景下产生的新事件。
数学实验是以问题为载体,应用数学知识建立数学模型,以计算机为手段,以数学软件为工具,以学生为主体,通过实验解决实际问题。数学实验是数学模型方法的初步实践,而数学模型方法是用数学模型解决实际问题的一般数学方法,它是根据实际问题的特点和要求作出合理的假设,使问题简化,并进行抽象概括建立数学模型,然后研究求解所建的数学模型方法与算法,利用数学软件求解数学模型,最后将所得的结果运用到实践中。
“数学实验与建模”课程将经济数学知识、数学建模与计算机应用三者融为一体。通过数学实验课程,可提高学生学习经济数学的积极性,提高学生对数学的应用意识,并培养学生用所学的数学知识、经济学知识和计算机技术去认识问题和解决经济问题的能力。学生自己动手建立模型,能够体验到解决实际问题的全过程,了解数学软件的使用,也培养了学生的科学态度与创新精神。
全书共分9章。第1章介绍了MATLAB基础,包括MATLAB概述、数据和变量、运算符等内容。第2章介绍了MATLAB的程序与图形,包括程序结构、M文件和图形绘制等内容。第3章介绍了基本的数学函数,包括多项式、函数的极限、数值积分等内容。第4章介绍了数据建模,包括插值法、拟合法等内容。第5章介绍了方程的求解,包括线性方程组求解、线性映射的迭代等内容。第6章介绍了优化问题,包括线性规划问题、非线性规划问题等内容。第7章介绍了部分智能优化算法,包括遗传算法、人工神经网络等内容。第8章介绍了图形用户界面的设计,包括图形对象句柄、图形对象属性的操作等内容。第9章介绍了数学建模的综合实验,包括粒子游动问题、汽车公司运货耗时估计问题等内容。
除封面署名作者外,本书参编人员还有周品、蔡结衡、陈运英、邓恒奋、卢焕斌、栾颖、林振满、刘志为、王孟群、王旭宝、伍志聪、张坚、张水兰等。
由于时间仓促,加之作者水平有限,书中错误和疏漏之处在所难免,恳请广大读者批评指正。
编 者
第1章 MATLAB基础
1.1 MATLAB概述
1.1.1 MATLAB简介
1.1.2 MATLAB的安装与界面
1.1.3 MATLAB操作的注意事项
1.2 数据和变量
1.2.1 表达式
1.2.2 数据显示格式
1.2.3 复数
1.2.4 预定义变量
1.2.5 用户变量
1.2.6 数据文件
1.3 运算符
1.3.1 算术运算符
1.3.2 关系运算符
1.3.3 逻辑运算符
1.4 MATLAB的矩阵与数组及其运算
1.4.1 矩阵
1.4.2 矩阵的运算
1.4.3 数组
1.4.4 数组运算
1.5 矩阵函数
1.5.1 三角分解
1.5.2 正交变换
1.5.3 奇异值分解
1.5.4 特征值分解
1.5.5 矩阵的秩
1.6 符号运算
1.7 字符串、元胞和结构
1.7.1 字符串
1.7.2 元胞和结构
1.8 符号计算局限性和Maple调用
1.8.1 符号计算局限性
1.8.2 Maple调用
第2章 MATLAB的程序与图形
2.1 程序结构
2.1.1 顺序结构
2.1.2 分支结构
2.1.3 循环结构
2.2 M文件
2.3 MATLAB的二维图形
2.3.1 一般二维图形
2.3.2 隐函数作图
2.4 三维图形绘制
2.4.1 三维曲线绘制
2.4.2 三维曲面绘制
2.4.3 三维图形视角设置
2.5 动画与声音
第3章 基本的数学函数
3.1 统计分析
3.1.1 相关函数
3.1.2 常见概率分布密度函数
3.2 多项式
3.2.1 多项式的四则运算
3.2.2 多项式的求导
3.2.3 多项式的求值与求根
3.2.4 有理多项式
3.2.5 M文件示例
3.3 函数的极限
3.3.1 基本函数
3.3.2 极限概念
3.3.3 求函数极限
3.4 数值积分
3.4.1 由给定的数据进行梯形求积
3.4.2 单变量数值积分
3.4.3 双重积分问题的数值解
3.4.4 三重定积分的数值求解
3.5 常微分方程
3.5.1 常微分方程简述
3.5.2 常微分方程的:MATLAB命令
3.5.3 Euler法和刚性方程组
3.5.4 导弹系统的改进
3.6 偏微分方程
3.6.1 单的Poission方程
3.6.2 双曲线偏微分方程
3.6.3 抛物型偏微分方程
3.7 曲线积分与曲面积分
3.7.1 曲线积分
3.7.2 曲面积分
3.8 数据分析
3.8.1 向量的距离与夹角余弦
3.8.2 数据的属性与处理方法
第4章 数据建模
4.1 插值法
4.1.1 一维插值
4.1.2 二维插值
4.1.3 拉格朗日插值多项式的存在性
4.1.4 利用拉格朗日插值多项式计算函数值
4.1.5 差商表构造
4.1.6 利用牛顿插值多项式计算函数值
4.1.7 龙格现象
4.1.8 分段线性插值的逼近法
4.1.9 拉格朗日插值多项式与埃尔米特插值多项式的比较
4.1.10 拉格朗日插值多项式与三次样本插值函数的比较
4.2 拟合法
4.2.1 多项式拟合
4.2.2 非线性最小二乘拟合
4.3 回归分析法
4.3.1 线性回归分析
4.3.2 非线性回归分析
4.4 异常数据的处理
4.5 凸轮设计和人口预测
4.6 函数的逼近应用
4.6.1 伯恩斯坦多项式逼近连续函数的动画演示
4.6.2 函数的最佳平方逼近多项式
4,6.3 希尔伯特矩阵的病态性
4.6.4 多项式拟合模型的选取
第5章 方程的求解
5.1 线性方程组求解
5.1.1 高斯消去法
5.1.2 LU分解
5.1.3 F方根法
5.1.4 追赶法
5.1.5 迭代法
5.2 线性映射的迭代
5.2.1 数学知识
5.2.2 相关命令及示例
5.3 矩阵方程的计算求解
5.3.1 Lyapunov方程的计算求解
5.3.2 Sylvester方程的计算求解
5.3.3 Riccati方程的计算求解
5.4 矩阵的特征值与特征向量
5.4.1 方阵特征方程的求解
5.4.2 计算特征值和特征向量的迭代法
5.4.3 求方阵的特征值的相关命令及示例
5.5 非线性方程的求解
5.5.1 两分法求方程的解
5.5.2 定积分中值定理的几何证明
5.5.3 迭代法性质研究
5.5.4 面向矩阵元素的非线性运算与矩阵函数求值
5.5.5 牛顿法
5.5.6 艾特肯法:
5.5.7 弦截法
第6章 优化问题
6.1 线性规划问题
6.1.1 无约束最优化
6.1.2 有约束最优化
6.1.3 线性规划问题的实际应用
6.2 非线性规划问题
6.2.1 非线性规划问题的数学模型
6.2.2 非线性规划的MATLAB算法
6.2.3 非线性的二次型规划的求解
6.2.4 非线性规划问题的实际应用
……
第7章 部分职能优化算法
第8章 图形用户界面的设计
第9章 数学建模的综合实验
参考文献
1.1.1MATLAB简介
数学软件可以使不同专业的学生和科研人员借助计算机进行科学研究和科学计算,在一些国家和部门,数学软件已成为学生和科研人员进行学习和科研活动最得力的助手。MATLAB是一个功能强大的常用数学软件,它不但可以解决数学中的数值计算问题,还可以解决符号演算问题,并且能够方便地绘制出各种函数图形。无论是一个正在学习的大学生,还是在岗的科研人员,在学习或科学研究中遇到棘手的数学问题时,利用MATLAB提供的各种数学工具,可以避免做繁琐的数学推导和计算,方便地解决了很多数学问题,使用户有更多的时间和精力去做进一步的学习和探索。MATLAB具有简单、易学、界面友好和使用方便等特点,只要用户有一定的数学知识并了解计算机的基本操作方法,就能学习和使用MATLAB。目前,我们在科研论文、教材等很多地方都可以看到MATLAB的身影。
MATLAB的基本单位是矩阵,它的表达式与数学、工程计算中常用的形式十分相似,极大地方便了用户学习和使用,深受用户欢迎。在欧美一些高等院校,MATLAB已成为高等数学、线性代数、自动控制理论、数理统计、数字信号处理等课程的基本工具和攻读学位的大学生、硕士生和博士生必须掌握的技能。在设计和科研部分,MATLAB被广泛用来研究与解决各种工程问题。
MATLAB自1984年由美国的MathWorks公司推向市场以来,历经十几年的发展和竞争,现已成为国际最优秀的科技应用软件之一。