【精品】PPT课件 第六讲 MATLAB在数学建模中的应用
数学建模MATLAB程序设计专题ppt课件
全局变量
全局变量(Global Variables)是可以在不同的函数工作空间和MATALB工作空间中共享使用的变量。 用 global定义, 而且每个要共享全局变量的函数和工作空间,都必须逐个定义, 先定义后使用. 注意:由于全局变量在任何定义过的函数中都可以修改,因此不提倡使用全局变量;使用时应十分小心,建议把全局变量的定义放在函数体的开始,全局变量用大写字符命名。
M函数文件的基本格式
函数声明行
function [输出变量列表] = 函数名(输入变量列表)
H1行(用%开头的注释行) 在线帮助文本 (用%开头) 编写和修改记录(用%开头)
函数体
创建M函数文件并调用的步骤
编写函数代码 将函数文件保存为“函数名.m”。 在命令窗口输入命令调用程序
利用泛函命令求极小值
2. fminsearch函数 :求多变量无约束非线性最小值。 x=fminsearch(h_fun,x0) x=fminsearch(‘funname’,x0) x0是最小值点的初始猜测值。
其它泛函命令
3 .fzero函数:求一维函数的零点,即求f(x)=0的根。 x=fzero(h_fun, x0, tol, trace) x=fzero(‘funname’, x0, tol, trace) x0有两个作用:预定待搜索零点的大致位置和搜索起始点;tol用来控制结果的相对精度,默认值为eps;trace指定迭代信息是否在运算中显示。
其它泛函命令
4. 数值积分:quad和quad8是基于数学上的正方形概念来计算函数的面积。 5. 微分方程的数值解:MATLAB提供ode23、ode45和ode113等多个函数求解微分方程的数值解。
泛函命令
在MATLAB中,所有以函数为输入变量的命令,都称为泛函命令。
数学建模-_MATLAB用法PPT课件
第二节 MATLAB语言基本操作 2.1 变量和赋值
1、基本变量:矩阵 2、变量命名原则:
以字母开头 后面可以跟 字母、数字 和 下划线 长度不超过 63 个字符 变量名 区分字母的 大小 写,MATLAB提供的 标准函数名以及命令名必须用小写字母。
3、预定义变量 在MATLAB工作空间中,还驻留几个由系统
1.3 Matlab帮助
帮助命令 help 显示指定命令的简短使用说明
例:>> help eig
lookfor 按指定的关键词查询与之相关的命令
例:>> lookfor eig
doc 以网页形式显示指定命令的帮助页
例:>> doc eig
常用操作命令 clc: 清除命令窗口; clf: 清除当前图形; clear: 清除工作空间的变量和函数.
b1= A(3,2) b2=A(6)
结果: b1= 7
b2= 7
矩阵多个元素的提取 冒号运算符
A(:) 或 A(:,:) 提取A的所有元素
A(:,k) 提取 A的第 k 列全部元素 A(k,:) 提取A的第 k 行全部元素
A(:,k:m) 提取A的第 k列 到第 m 列元素 A(i:j,:) 提取A的第 i 行到第 j 行元素
目前,Matlab 已经成为国际上最流行的科学与工程计算的 软件工具,是一种具有广泛应用前景的全新的计算机高级编 程语言了,有人称它为“第四代”计算机语言。 就影响而言, 至今仍然没有一个别的计算软件可与 Matlab 匹敌。
Matlab 的最新版本 2010年, Matlab 7.11(R2010b)
5、元素的提取
矩阵单个元素的提取
A(i, j):矩阵 A 中的第 i 行,第 j 列元素 A(i):矩阵 A 中的第i个元素,它表示矩阵A
Matlab在数学建模中的应用
x=[0:0.01:2*pi] y=abs(1000*sin(4*x))+1 semilogy(x,y); 单对数Y轴绘图命令
1.2特殊坐标图形
• 二、 极坐标图
函数polar(theta,rho)用来绘制极坐标图,theta为 极坐标角度,rho为极坐标半径
4.4 三维图形
• 三、surf函数
• surf用于绘制三维曲面图,各线条之间的补面用颜色 填充。surf函数和mesh函数的调用格式一致。
• 函数格式: surf (x,y,z)
• 其中x,y控制X和Y轴坐标,矩阵z是由x,y求得的曲 面上Z轴坐标。
•【例11】 下列程序绘制三维曲面图形 •x=[0:0.15:2*pi];
• y=sin(x);
• z=cos(x); • plot(x,y,'b');
• hold on;
• plot(x,z,'g'); 弦曲线
%绘制正弦曲线 %设置图形保持状态 %保持正弦曲线同时绘制余
• axis ([0 2*pi -1 1]);
• legend('cos','sin');
• hold off
• 【例5】 为正弦、余弦曲线增加图例
1.1 二维图形
二、 subplot函数 • (一)subplot(m,n,p) • 该命令将当前图形窗口分成m×n个绘图
区,即每行n个,共m行,区号按行优先 编号,且选定第p个区为当前活动区。
【例6】 在一个图形窗口中同时绘制正弦、 余弦、正切、余切曲线
1.1 二维图形
• 一、阶梯图形
• 函数stairs(x,y)可以绘制阶梯图形,如下列程序段:
数学建模的MATLAB课件-PPT精选文档
2019/3/8
11
1.2.2 Matlab的安装
安装Matlab 6.5系统,需运行系统自带的安装程序setup.exe,一般只 要用鼠标双击安装图标,就会启动安装程序,你只需按照安装提示 正确输入(或粘贴)安装序列号后点击《确认》键,并按提示修改 安装路径(或默认安装到C盘)就能完成安装。 安装完毕后,在开始-程序-Matlab.exe菜单中,双击Matlab图标,即可 运行程序。
2019/3/8
8
1.1.4 Matlab操作示例
例1-1 在同一坐标系中绘出正弦曲线y=sinx和余弦曲线y=cosx在 [0,2*Pi]上的图形. x=[0:1/180:2*pi]; % 输入自变量x的行矩阵 f1=sin(x);%输出因变量f1的行矩阵 f2=cos(x);%输出因变量f2的行矩阵 plot(x,f1),x,f2); %调用绘图命令一次画出两条曲线.
结束
&*$学院
软
件
%$#
2019/3/8 1
开始
Matlab基础及其应用目录
§第一章 Matlab软件介绍
§第二章 Matlab语言基础
§第三章 Matlab数值运算 §第四章 Matlab符号运算 §第五章 Matlab平面作图
§第六章
2019/3/8
Matlab空间作图
2
Matlab基础及其应用目录
2019/3/8
7
1.1.3 Matlab的主要功能
(4) Matlab的工具箱 Matlab中包括了被称作工具箱(TOOLBOX)的各类应用问题的求 解工具。它可用来求解各类学科的问题,包括信号处理、图象处 理、控制系统辨识、神经网络等。随着Matlab版本的不断升级, 其所含的工具箱的功能也越来越丰富。 (5) Matlab中包括了图形界面编辑GUI,这可让使用者也可以象 VB、 VC 、VJ、 DELPHI等那样进行一般的可视化的程序编辑。 在命令窗口(matlab command window)键入simulink,就出现 (SIMULINK) 窗口。以往十分困难的系统仿真问题,用SIMULINK 只需拖动鼠标即可轻而易举地解决问题,这也是近来受到重视原 因所在。
MATLAB及在数学建模中的应用
1讲MATLAB及在数学建模中的应用•MatLab简介及基本运算•常用计算方法•应用实例MatLab简介及基本运算1.1 MatLab简介1.2 MatLab界面1.3 MatLab基本数学运算1.4 MatLab绘图简介•MATLAB名字由MATrix和LABoratory 两词组成。
20世纪七十年代后期, 美国新墨西哥大学计算机科学系主任Cleve Moler教授为减轻学生编程负担,为学生设计了一组调用LINPACK和EISPACK库程序的“通俗易用”的接口,此即用FORTRAN编写的萌芽状态的MATLAB。
经几年的校际流传,在Little的推动下,由Little、Moler、Steve Bangert合作,于1984年成立了MathWorks公司,并把MATLAB正式推向市场。
从这时起,MATLAB的内核采用C语言编写,而且除原有的数值计算能力外,还新增了数据图视功能。
1997年春,MATLAB5.0版问世,紧接着是5.1、5.2、5.3、6.0、6.1、6.5、7.0版。
现今的MATLAB拥有更丰富的数据类型和结构、更友善的面向对象、更加快速精良的图形可视、更广博的数学和数据分析资源、更多的应用开发工具。
•20世纪九十年代的时候,MATLAB已经成为国际控制界公认的标准计算软件。
MATLAB具有用法简易、可灵活运用、程式结构强又兼具延展性。
以下为其几个特色:①可靠的数值运算和符号计算。
在MATLAB环境中,有超过500种数学、统计、科学及工程方面的函数可使用。
②强大的绘图功能。
MATLAB可以绘制各种图形,包括二维和三维图形。
③简单易学的语言体系。
④为数众多的应用工具箱。
MatLab界面基本数学运算•MATLAB的基本算术运算有:+(加)、-(减)、*(乘)、/(右除)、\(左除)、^(乘方)还有一种特殊的运算,点运算:.*、./、.\和.^。
•输入方式:在MATLAB命令窗中输入>> (12+2*(7-4))/3^2>> z=2*exp(2)+sin(pi/6)>> B=[1+5i,2+6i;3+8*i,4+9*i]在M文件中输入例1.1 求方程3x4+7x3+9x2-23=0的全部根p=[3,7,9,0,-23]; %建立多项式系数向量x=roots(p) %求根1.2 求一元二次方程ax2+bx+c=0的根。
MATLAB在数学建模中的应用ppt课件
d 2y 求 dx2
-1/(1+x)^2 >> x=1;eval(a) ans =
-0.2500
可编辑课件PPTቤተ መጻሕፍቲ ባይዱ
d 2y 求d x 2 x1
将符号表达式 转换成数值表达式
18
例6 设 ze2x xy22y ,求
z z 2z 2z 2z
, x
, y
x2
,
y2
,
xy
>> syms x y;
z=exp(2*x)*(x+y^2+2*y);
MATLAB功能:数值计算、符号运算 和图形处理。
可编辑课件PPT
9
学习它的意义:随着计算机科学 和计算软件的发展,数学系学生 必须掌握一门好的计算软件。这 是我们就业、继续身造或做科研 工作所要用到的。是当代大学生 必备的一项技能。
可编辑课件PPT
10
其它计算软件:MATHEMATIC (数学分析问题的计算); LINGO(规划问题的计算)。可 以说一个人掌握了一门计算软件, 再学习其它计算软件就很容易。
>> y=e(1,100) ans = y y=
2.7183
15
调用函数 M文件
MATLAB在《微积分》中的应用 2、求极限
例3 求极限 lim( n n n) n
LIMIT Limit of an expression.
LIMIT(F,x,a) takes the limit of the symbolic expression F as x -> a. LIMIT(F,x,a,'right') or LIMIT(F,x,a,'left') specify the direction of a one-sided limit.
matlab在数学建模中的应用
Matlab在数学建模中的应用数学建模是通过对实际问题的抽象和简化,引入一些数学符号、变量和参数,用数学语言和方法建立变量参数间的内在关系,得出一个可以近似刻画实际问题的数学模型,进而对其进行求解、模拟、分析检验的过程。
它大致分为模型准备、模型假设、模型构成、模型求解、模型分析、模型检验及应用等步骤。
这一过程往往需要对大量的数据进行分析、处理、加工,建立和求解复杂的数学模型,这些都是手工计算难以完成的,往往在计算机上实现。
在目前用于数学建模的软件中,matlab 强大的数值计算、绘图以及多样化的工具箱功能,能够快捷、高效地解决数学建模所涉及的众多领域的问题,倍受数学建模者的青睐。
1 Matlab在数学建模中的应用下面将联系数学建模的几个环节,结合部分实例,介绍matlab 在数学建模中的应用。
1.1 模型准备阶段模型准备阶段往往需要对问题中的给出的大量数据或图表等进行分析,此时matlab的数据处理功能以及绘图功能都能得到很好的应用。
1.1.1 确定变量间关系例1 已知某地连续20年的实际投资额、国民生产总值、物价指数的统计数据(见表),由这些数据建立一个投资额模型,根据对未来国民生产总值及物价指数的估计,预测未来的投资额。
表1 实际投资额、国民生产总值、物价指数的统计表记该地区第t年的投资为z(t),国民生产总值为x(t),物价指数为y(t)。
赋值:z=[90.9 97.4 113.5 125.7 122.8 133.3 149.3 144.2 166.4 195 229.8 228.7 206.1 257.9 324.1 386.6 423 401.9 474.9 424.5]' x=[596.7 637.7 691.1 756 799 873.4 944 992.7 1077.6 1185.9 1326.4 1434.2 1549.2 1718 1918.3 2163.9 2417.8 2631.6 2954.7 3073]'y=[0.7167 0.7277 0.7436 0.7676 0.7906 0.8254 0.8679 0.91450.9601 1 1.0575 1.1508 1.2579 1.3234 1.4005 1.5042 1.63421.7842 1.95142.0688]'先观察x与z之间,y与z之间的散点图plot(x,z,'*')plot(y,z,'*')由散点图可以看出,投资额和国民生产总值与物价指数都近似呈线性关系,因此可以建立多元线性回归模型012z x y βββε=+++直接利用统计工具箱直接计算[b,bint,r,rint,stats]=regress(z,X,alpha)输入z :n 维数据向量X:[ones(20,1) x y],这里的1是个向量,元素全为常数1,即为ones(n,1)Alpha:置信水平,一般为0.05输出b :β的估计值bint:b 的置信区间r :残差向量z-Xbrint: r 的置信区间Stats:检验统计量2R ,F , p代入上述公式[b,bint,r,rint,stats]=regress(z,X,0.05)有b =322.80.4168-859.2322.75630.61850.859.479=+-z x y由stats =0.2672 920.7 0知z的99.085%可由模型确定,F远超过F检验的临界值,p远小于α=0.05 .bint =224. 421.70.0184 0.8151-1121. -597.5b的置信区间不包含零点,x,y对z影响都是显著的。
Matlab在数学建模中的应用(模型求解)
qk,t与 Q(k,t)间的绝对误差
e Qt qt
e=Q-q(1:length(Q));
相对误差
E
e
Qt
E=e./Q;
整理一下
停车场问题 (MCM 87B题)
在新英格兰 地区一个镇上,位 于街角处的一个 停车场的场主要 设计停车场的安 排,即设计”在地 上的线应怎样划 法”。这个停车场 是长方形的,长 200英尺,宽100 英尺。
怎样用matlab求解这个模型呢??
分析:对如上面的线形规划问题,可用linprog()函数求解。
模型
Max S 5x 6y s.t. 2x 3y 1400
x 6y 2400 4x 2y 2000 x 0, y 0, x, y z
对应matlab语句
f=[-5,-6]; A=[2 3 b=[1400
n
for d=2:length(Q);
Q1n Qi
Q1=cumQs(udm)=(QQ)(d-1)+Q(d);
i 1
得到
end
1 2
Q12
Q11 ,1
1 2
Q13
Q12 ,1
B ...............................
...............................
甲、乙产品各多少件),使获得利润最大,并求出最大利
润。
品 原材料 能源消耗 劳动力 利润
种 (千克) (百元) (人) (千元)
甲2
1
4
5
乙3
6
2
6
解:设安排生产甲产品x 件,乙产品y 件,相应的利 润为S。则此问题的数学模型为:
Max S 5x 6 y s.t. 2x 3y 1400
数学建模matlab学习PPT课件
Saturday, 2009-3- 21, 22:00:11
第10页/共39页
双精度数据结构
• 矩阵的表示
• 矩阵简单分析 F=inv(A) • 复数矩阵的表示
Saturday, 2009-3- 21, 22:00:11
第11页/共39页
特殊矩阵的输入
• 单位矩阵 A=eye(m,n) • 零矩阵 A=zeros(n,m) • 对角矩阵 A=diag([1,3,5,7,2]) • 均匀分布随机数矩阵 A=rand(n,m) • 多项式
Saturday, 2009-3- 21, 22:00:11
第4页/共39页
其他“高级”语言(如C)的局限性
• 语句繁杂 • 没有基本数学运算求解工具 • 程序冗长,容易出错,得出结果难以令人相信 • 各种各样的隐患 • 结果可视化效果不佳
Saturday, 2009-3- 21, 22:00:11
第5页/共39页
例1 矩阵特征值求解
• 用数学库EISPACK
• 用MATL AB: eig(A)
Saturday, 2009-3- 21, 22:00:11
第6页/共39页
例2 可能的隐患 Fibonacci数列
• 数学描述 • C语言实现
• 存在问题:数据结构的预定义 • MATL AB实现
第28页/共39页
• 函数 • MATL AB命令
• 检验 • 数据存储 • 导入
Saturday, 2009-3- 21, 22:00:11
第29页/共39页
极坐标图形绘制
• 绘制极坐标函数 • 仍然首先生成q 向量,再用点运算计算r • 调用polar函数绘图
• 绘制曲线
• 注意周期检验
数学建模的MATLAB课件精品文档
例1-4 求解线性方程组:Ax=b。 其中 A=[2,-3,1;
8,3,2;
45,1,-9]; b=[4;2;17]; 解 x=inv(A)*b
• 注意:线性方程组的解也可写成x=a\b
2019/10/14
10
1.2 Matlab的运行环境与安装
1.2.1 Matlab的运行环境
硬件环境: (1) CPU 奔腾Ⅲ以上 (2) 内存 256M以上 (3) 硬盘 40G以上 (4) CD-ROM 驱动器和鼠标。 软件环境:
1.菜单栏 在Matlab 6.5主窗口的菜单栏,共包含File、Edit、View、Web、 Window和Help 6个菜单项。
(1) File菜单项:File菜单项实现有关文件的操作。
(2) Edit菜单项:Edit菜单项用于命令窗口的编辑操作。
(3) View菜单项:View菜单项用于设置Matlab集成环境的显示方 式。
(4) Web菜单项:Web菜单项用于设置Matlab的Web操作。
(5) Window菜单项:主窗口菜单栏上的Window菜单,只包含一个 子菜单Close all,用于关闭所有打开的编辑器窗口,包括Mfile、Figure、Model和GUI窗口。
(6) Help菜单项:Help菜单项用于提供帮助信息。
于准备状态。在命令提示符后键入命令并按下回车键后,Matlab 就会解释执行所输入的命令,并在命令后面给出计算结果。
2019/10/14
20
1.3.3 Matlab编程输入法
在通常的编程中,一个行只输入一条独立的命令,命令行以回车 结束。但一行也可以输入若干条命令,但各命令之间必须以逗号 分隔,互相独立的命令也可用分号分隔。例如 p=15, m=35 , n=20 p=15; m=35; n=20
