nbhkdz.com冰点文库

应用MATLAB建模实例

时间:2011-03-22


应用MATLAB建模实例 建模实例 应用 ——数学也是一门技术
数学是一门技术 一个例子——足球比赛中的吊门问题 谈谈数学建模竞赛及培训

数学是一门技术
技术的定义
? 《辞海》:泛指根据生产实践经验和自然科 学原理而发展成的各种工艺操作方法与技能; 除操作技能外, 广义的还包括相应的生产工 具和其他物质设备,以及生产的工艺过程或 作业程序、方法。 ? 《科学学辞典》和《科技辞典》:是为社会 生产和人类物质文化生活需要服务的,供人 类利用和改造自然的物质手段、智能手段和 信息手段的总和。

数学及其应用的特征
? 是一种智能形态的技术 ? 在数学软件的平台上,又表现为 一般的物化形态

数学建模技术
? 指数学及其应用于解决实际问题的整 个过程 ? 多样性、合理性、具体问题具体分析 ? 艺术性

足球比赛中的吊门问题
考虑如下的因素:球与球门的距离为a,守 门员与球门的距离为b,球门高h,守门员最大 摸高H,球出脚的初速度为v,与水平方向的夹 角为alpha(称为初射角).给定,h=2.44m, H=3.20m,v=30m/s,重力加速度g=10m/s2,针 对下列几组数据分别给出能吊门成功的相应初 射角范围,要求精度在小数点后第3位。 · a=6m,b=1m; · a=10m,b=3m; · a=20m,b=5m。

问题分析
先考虑最简单情形,即不考虑空气阻力 等…,此时,球的运动轨迹是抛物线, 如果守门员不动,总有合适的角度使吊 门成功。 这不是求一个角度值,而是求一个范围! 通常的思路是把问题整理成两个方程求 根问题:一个方程是求吊门成功的最小 角度,一个方程是求吊门成功的最大角 度。 有可能落地弹入球门,要考虑反弹入门 的情况。

直观分析
最简单情形,抛射体的运动轨迹为抛物线方程 如下 借助于使用方便的数学软件,可直观地看到各 种初射角对应的抛射体运动的轨迹图形。

g 2 y ( x ) = x tan α ? x 2 2 2 v cos α

最简情形——程序1-1
v=30;g=10; h=2.44;H=3.2; a=6;b=1; l=a-b;L=a*1.1; x=0:0.01:L; for alpha=1.5368:0.00001:1.538 [y,tfinal]=paosheti1(x,alpha,v,g); tH=l/(v*cos(alpha)); plot(l,H,'r+',a,h,'r+'),hold on, plot(x,y),grid, hold off title(['足球比赛中的吊门 ','初射角=',num2str(alpha,6) ,... ' 守门员的移动时间=',num2str(tH)]),pause endC:\WINDOWS\Desktop\程序\MATLAB 7.0.lnk

程序1-1之抛射体轨迹函数
function [y,t]=paosheti1(x,alpha,v,g) y=x*tan(alpha)-x.^2*g/(2*v^2*(cos(alpha))^2); t=2*v*sin(alpha)/g; xmax=v*cos(alpha)*t; n=length(x); for i=1:n if y(i)<0 xx=x(i)-xmax; y(i)=xx*tan(alpha)xx.^2*g/(2*v^2*(cos(alpha))^2); end end

初步结果
对于第一组数据,吊门成功的最小角度 1.53697(为弧度,下同),对应的时间大约 在4.9281秒,最大角度1.53787,对应的时间 5.0627 是5.0627秒; 对于第二组数据,吊门成功的最小角度 1.51437,对应的时间大约在4.1374秒,最大 角度1.51587,对应的时间大约在4.2503秒; 对于第三组数据,吊门成功的最小角度 1.45718,对应的时间大约在4.4103秒,最大 角度1.46022,对应的时间大约是4.531秒。

初步结果分析——问题的再分析
遵循由简单到一般的建模原则,先考虑简单情形,得到 初步结果,以此为基础,发现问题、分析问题,找到求 解思路,并逐步将问题一般化,甚至可以发现逐步一般 化的顺序(还是由简到繁,先将哪些方面使之更一般化, 如空气阻力、守门员移动); 结果有一定的合理性; 从近似计算角度分析,在允许的精度范围内,如上的 “作图——观察——调整”不失为一种求解方法; 相比球与守门员及与球门的距离,注意守门员移动的时 间,显然守门员有足够的时间移动,因此吊门是不会成 功的! 原因在于将问题假设得过于简单化、理想化了! 修改假设应是下一步必须考虑的。

小结:最简情形之假设
不考虑空气阻力; 不考虑守门员在球运行过程中的移动; 球落地是完全弹性的,只考虑仅有一次触地反弹形 成的吊门情况; 只考虑越过守门员头顶的吊门,即出球点与守门员 连成一线延伸到球门这样一个直线方向,不考虑从 守门员侧面吊门的情况; 将球看作是数学上的一个点; 不考虑球的旋转,实际比赛时,旋转是很重要的! 球的质量为一个单位。

有空气阻力的情形之一 ——仅x方向考虑空气阻力
假设只考虑x方向受空气阻力的影响; 假设空气阻力与速度成正比,比例系数为 k=0.4。 此时,x(t)满足如下的微分方程初值问题

?? + k x = 0 ? x
x (0) = 0 ? x ( 0 ) = v cos α

问题的解
1 ? kt x (t ) = v cos α (1 ? e ) k

空气阻力的情形之一——程序2-1-1
v=30;k=0.4;g=10;h=2.44;H=3.2; a=20;b=5;l=a-b;L=a*1.1; for alpha=1.2:0.001:1.3 %1.5425%pi/2-eps Th=-log(1-a*k/(v*cos(alpha)))/k; T=Th*1.2; t=0:0.01:T; [x,y]=paosheti2(t,alpha,v,k,g); TH=-log(1-l*k/(v*cos(alpha)))/k; plot(l,H,'r+',a,h,'r+'),hold on, plot(x,y),grid, hold off title(['足球比赛中的吊门 ','初射角=',num2str(alpha,6) ,... ' 守门员的移动时间=',num2str(TH)]),pause end

空气阻力的情形之一——程序2-1-2
function [x,y]=paosheti2(t,alpha,v,k,g) x=v*cos(alpha)*(1-exp(-k*t))/k; y=v*sin(alpha)*t-g*t.^2/2; n=length(t); t0=2*v*sin(alpha)/g;%the time when the ball down to ground xt0=v*cos(alpha)*(1-exp(-k*t0))/k; vxt0=v*cos(alpha)*exp(-k*t0); vyt0=v*sin(alpha); vt0=sqrt(vxt0^2+vyt0^2); for i=1:n if t(i)>t0 tt=t(i)-t0; x(i)=xt0+vt0*cos(alpha)*(1-exp(-k*tt))/k; y(i)=vt0*sin(alpha)*tt-g*tt^2/2; end end

空气阻力的情形之一的结果及分析改 进(一)
前面结果有问题,反弹后的角度不应该 是alpha了,应该以落地时的情况计算出 新反射角。 修改抛射体函数:将 paosheti2(t,alpha,v,k,g),换成 paosheti22(t,alpha,v,k,g)。

程序2-1-2修改如下
function [x,y]=paosheti22(t,alpha,v,k,g) x=v*cos(alpha)*(1-exp(-k*t))/k; y=v*sin(alpha)*t-g*t.^2/2; n=length(t); t0=2*v*sin(alpha)/g;%the time when the ball down to the ground xt0=v*cos(alpha)*(1-exp(-k*t0))/k; vxt0=v*cos(alpha)*exp(-k*t0); vyt0=v*sin(alpha); vt0=sqrt(vxt0^2+vyt0^2); alpha1=atan(vyt0/vxt0); for i=1:n if t(i)>t0 tt=t(i)-t0; x(i)=xt0+vt0*cos(alpha1)*(1-exp(-k*tt))/k; y(i)=vt0*sin(alpha1)*tt-g*tt^2/2; end end

空气阻力的情形之一的结果及分析改 进(二)
针对第三组数据,计算的最小角度为 1.268,守门员移动时间为2.7771秒,最 大角度是1.27,时间是2.8101秒; 结果仍有问题:反弹前后的两波高度一 样; 解决的办法是再考虑y方向也有空气阻力。

有空气阻力的情形之二 ——x、y方向均考虑空气阻力
假设x,y两个方向均受空气阻力的影响 ; 假设空气阻力与速度成正比,比例系数为 k=0.4。 此时,x(t)仍满足同上的常微分方程初值问题

?? + k x = 0 ? x
x (0) = 0 ? x ( 0 ) = v cos α

y(t)满足如下的常微分方程初值问题

?? + k y + mg = 0 ? y
y(0) = 0 ? y(0) = v sinα

问题的解

1 mg mg ?kt y(t) = (v sinα + )(1 ? e ) ? t k k k

有空气阻力的情形之二——程序2-2-1
v=30;k=0.4;g=10; h=2.44;H=3.2; a=20;b=5; l=a-b;L=a*1.1; for alpha=1.2:0.001:1.3 %1.5425%pi/2-eps Th=-log(1-a*k/(v*cos(alpha)))/k; T=Th*1.2; t=0:0.01:T; [x,y]=paosheti3(t,alpha,v,k,g); TH=-log(1-l*k/(v*cos(alpha)))/k; plot(l,H,'r+',a,h,'r+'),hold on, plot(x,y),grid, hold off title(['足球比赛中的吊门 ','初射角=',num2str(alpha,6) ,... ' 守门员的移动时间=',num2str(TH)]),pause end

有空气阻力的情形之二——程序2-2-2
function [x,y]=paosheti3(t,alpha,v,k,g) x=v*cos(alpha)*(1-exp(-k*t))/k; y=(v*sin(alpha)+g/k)*(1-exp(-k*t))/k-g*t/k; n=length(t); t00=2.; tt0(1)=t00; tb=1; ii=1; while(abs(tb)>1e-5) tt0(ii+1)=tt0(ii)paoshetiy(tt0(ii),alpha,v,k,g)/dpaoshetiy(tt0(ii),alpha,v,k,g); tb=tt0(ii+1)-tt0(ii); ii=ii+1; if(ii>20)error('numb. of iter. is 30 times'); end end

t0=tt0(ii); y0=(v*sin(alpha)+g/k)*(1-exp(-k*t0))/k-g*t0/k; xt0=v*cos(alpha)*(1-exp(-k*t0))/k; vxt0=v*cos(alpha)*exp(-k*t0); vyt0=(v*sin(alpha)+g/k)*exp(-k*t0)-g/k; vt0=sqrt(vxt0^2+vyt0^2); alpha1=atan(abs(vyt0/vxt0)); for i=1:n if t(i)>t0% tt=t(i)-t0; x(i)=xt0+vt0*cos(alpha1)*(1-exp(-k*tt))/k; y(i)=(vt0*sin(alpha1)+g/k)*(1-exp(-k*tt))/k-g*tt/k; end end

空气阻力情形之二的结果分析及改进

针对第三组数据,计算的最小角度为 1.239,守门员移动时间为2.3797秒,最 大角度是1.248,时间是2.4889秒; 有必要考虑守门员可以移动的情形。

守门员可以移动的情形
假设守门员只沿球运行的方向移动; 球一出脚守门员即判断好并移动; 守门员的移动速度记为u,其大小是吊门 能否成功的另一关键因素。

问题分析
球的运动轨迹与上一种情况完全一致, 程序2-2-2不必改。 单独加上守门员的移动显示,二者叠加, 可得守门员可移动情形下吊门成功与否 的直观显示。

守门员可以移动的情形之程序3-1-1
v=30;k=0.4;g=10; h=2.44;H=3.2; a=20;b0=5;u0=2; l0=a-b0;L=a*1.1; for alpha=1.25:0.001:1.3 %1.5425%pi/2-eps Th=-log(1-a*k/(v*cos(alpha)))/k; T=Th*1.2; t=0:0.1:T; [x,y]=paosheti4(t,alpha,v,k,g); nn=length(t); for j=1:nn xx=x(1:j); yy=y(1:j); ll0=l0+u0*t(j); if ll0>a l(j)=a; else l(j)=ll0; end TH=-log(1-l(j)*k/(v*cos(alpha)))/k; plot(xx,yy,'bo',l(j),H,'r+',a,h,'ro'),grid,pause end %hold off title(['足球比赛中的吊门 ','初射角=',num2str(alpha,6) ,... '球运行的时间=',num2str(TH)]),pause end

守门员可以移动的情形之程序3-1-2
function [x,y]=paosheti4(t,alpha,v,k,g) x=v*cos(alpha)*(1-exp(-k*t))/k; y=(v*sin(alpha)+g/k)*(1-exp(-k*t))/k-g*t/k; n=length(t); t00=2.; tt0(1)=t00; tb=1; ii=1; while(abs(tb)>1e-5) tt0(ii+1)=tt0(ii)paoshetiy(tt0(ii),alpha,v,k,g)/dpaoshetiy(tt0(ii),alpha,v,k,g); tb=tt0(ii+1)-tt0(ii); ii=ii+1; if(ii>20)error('numb. of iter. is 30 times'); end end

t0=tt0(ii); y0=(v*sin(alpha)+g/k)*(1-exp(-k*t0))/k-g*t0/k; xt0=v*cos(alpha)*(1-exp(-k*t0))/k; vxt0=v*cos(alpha)*exp(-k*t0); vyt0=(v*sin(alpha)+g/k)*exp(-k*t0)-g/k; vt0=sqrt(vxt0^2+vyt0^2); alpha1=atan(abs(vyt0/vxt0)); for i=1:n if t(i)>t0 tt=t(i)-t0; x(i)=xt0+vt0*cos(alpha1)*(1-exp(-k*tt))/k; y(i)=(vt0*sin(alpha1)+g/k)*(1-exp(-k*tt))/kg*tt/k; end end

守门员可以移动的情形之结果
针对第三组数据,且守门员移动速度为,计算 的能使球进入球门的最小角度为1.239,球运行 的时间为4.2682秒,能使球进入球门的最大角 度是1.248,球运行时间是4.5914秒 ; 不难看出,如果攻门一方球一出脚,守门员就 向球门方向移动的话,吊门是不可能成功的, 除非守门员移动的速度很慢 ,如,u<1.1m/s; 当然,实际比赛中,守门员的移动并不是对方 球一出脚就开始的,而是有一个判断、反应的 滞后时间!也就是说,即使守门员移动的快一 些,还是有可能吊门成功的!

谈谈数学建模竞赛及培训

值得注意的建模过程
? 建模的过程有一定的步骤 ,但不绝对; ? 数学建模体现的是“问题解决”的一个全过 程。

有关竞赛及培训的几个方面
? ? ? ? ? ? “双向”翻译的能力 ; 想象力、联想力、洞察力和创造能力 ; 自学能力和使用文献资料的能力 ; 计算机及相关软件应用能力 ; 论文写作及表达能力; 组织合作能力。

结语
数学是一门技术,更确切地说是指数学建模技 术,主要是强调它的应用的一面。但,不能忽 略数学的分析、推理、计算是逻辑严密、假设 合理的一面。实际中,数学建模通常要求对所 得结论要经得起理论和实践的检验! 数学建模竞赛及培训的宗旨:学生的培养!通 过这样一个过程,给大家提供一个机会,让大 家经风雨、长见识,锻炼意志品质,提高综合 素质和能力。

谢谢!


应用MATLAB建模实例_图文.ppt

应用MATLAB建模实例 - 应用MATLAB建模实例 数学也是一门技术 ?

matlab神经网络实例(超级简单).doc

matlab神经网络实例(超级简单)_计算机软件及应用_IT/计算机_专业资料。matlab神经...用神经网络拟合变量与输出的数学模型,首相必须要有 数据来源,这里我用复合中心...

应用MATLAB建模实例_图文.ppt

应用MATLAB建模实例 - 应用MATLAB建模实例 建模实例 应用 数学

数学建模案例MATLAB实用程序百例.doc

数学建模案例MATLAB实用程序百例_计算机软件及应用_IT/计算机_专业资料。

数学建模案例MATLAB实用程序百例_图文.pdf

数学建模案例MATLAB实用程序百例 - 实例 1:三角函数曲线(1) func

simulink实例(有好多实例)_图文.ppt

simulink实例(有好多实例) - 南京航空航天大学 基于MATLAB/SIMULINK的系 统建模与仿真 任课教师:刘燕斌 二○一零年三月 Simulink仿真实例 例题1,使用Si...

MATLAB应用实例分析.pdf

MATLAB应用实例分析 - Matlab应用例题选讲 仅举一些运用MATLAB例子, 这些问题在数学建模中时常遇到, 希望能帮助同学们在短时间内方 便、快捷的使用MATLAB 解决...

应用MATLAB建模实例---吊门过程仿真_图文.ppt

应用MATLAB建模实例---吊门过程仿真 - 介绍足球吊门的数学模型,包括模型

MATLAB及其在数学建模中的应用_图文.pdf

MATLAB及其在数学建模中的应用 - 本文开篇简单介绍了MATLAB软件的社会作用,然后介绍了MATLAB的特点,又对数学建模的概念及建模 过程做出介绍,接着简单介绍了一些数学...

MATLAB软件在数学建模中的应用_图文.pdf

MATLAB软件在数学建模中的应用 - Value Engineering 233 MATLAB 软件在数学建模中的应用 Application of MATLAB Software...

数学建模matlab例题参考及练习.doc

数学建模matlab例题参考及练习_理学_高等教育_教育专区。数学实验与数学建模 实验...(2, 练习 5 matlab 自定义函数与导数应用 f ( x, a ) = a sin x + ...

计算机仿真总述(MATLAB应用举例)_图文.ppt

计算机仿真总述(MATLAB应用举例)_机械/仪表_工程科技_专业资料。《计算机仿真》...“仿真” 2 定义利用计算机作为研究工具,将实际系统 转化成“模型”,在计算机上...

应用MATLAB在数学建模中的应用.pdf

应用MATLAB在数学建模中的应用 - Matlab 在数学建模中的应用 数学建模是通过对实际问题的抽象和简化,引入一些数学符号、 变量和参数,用数学语言和方法建立变量参数间...

matlab应用与建模方法2_图文.ppt

matlab应用建模方法2 - MATLAB应用建模方法(2) 青岛大学数学科学学院 郭晓沛 第四章 matlab在线性代数与概率统计中的应用 一、在线性代数中的应用 1.矩阵...

MATLAB的控制系统数学建模_图文.ppt

MATLAB的控制系统数学建模_计算机软件及应用_IT/计算机_专业资料。MATLAB 与控制...传递函数模型实例 6.2.1 零极点函数模型简述 6.2.2 零极点函数的MATLAB相关...

(2)MATLAB应用实例分析.doc

(2)MATLAB应用实例分析 - Matlab应用例题选讲 仅举一些运用MATLAB例子, 这些问题在数学建模中时常遇到, 希望能帮助同学们在短时间内方 便、快捷的使用MATLAB ...

MATLAB基础及其在数学建模中的应用--张敏(修改后)_图文.ppt

MATLAB基础及其在数学建模中的应用--张敏(修改后) - MATLAB基础及其在数学建模中的应用 校苑数模网讲师团 张敏 2012年3月26日 工欲善其事,必先利其器 讲座...

Matlab在数学建模中的应用_张庆海.pdf

Matlab在数学建模中的应用_张庆海 - 中国集体 经济 科技研发 Matlab 在数学建模中的应用 ■ 张庆海 张琼 摘要 : 文章首先介 绍了建立数学模型 的基本步...

3Matlab和Simulink在建模仿真中的应用(一)_图文.pdf

3Matlab和Simulink在建模仿真中的应用(一) - 北京理工大学宇航学院航天器系统建模与CAD课件

数学建模软件matlab_图文.ppt

MATLAB语言是一种广泛应用于工程 计算及数值分析领域的新型高级语言,自 1984年由...Examples and Demos命令:可以通过演示MATLAB提供的 例子来熟悉相关部分的用法。 ...