数学建模概述(李福乐)

  • 格式:doc
  • 大小:478.00 KB
  • 文档页数:21

一、数学建模概述1.1 什么是数学建模通常我们把现实问题的一个模拟称为模型,如交通图、地质图、航空模型等。

利用数学的语言、公式、图、表、或符号等来模拟现实的模型称为数学模型。

我们知道,对于一个现实问题的研究,一般不需要甚至不可能直接研究现实问题的本身,而是研究模拟该现实问题的模型。

举个简单例子:某司机欲把某货物从甲地运往已地,应如何选择运输路线使总路程最短?该司机不会开着车去试探,而是利用交通图来确定自己的行车路线。

从这个简单的例子中我们可以看到数学建模的重要性。

1.2 数学建模包含哪些步骤数学建模主要包含模型建立、求解以及对结果的分析与检验等步骤。

模型建立 模拟现实问题建立数学模型,不仅要有一定的数学知识与技巧,还要有敏锐的洞察力与理解力,善于抓住问题的内在联系,作出合理的假设与简化,找出影响问题的各种因素及其相互关系。

建立数学模型,不仅要有一定的数学知识与技巧,还要具备其他学科的一些知识,另外还要有一定的编程能力。

一般来说,模型建立的方法不止一种。

如最短路线问题,可以用图论方法,也可以用线性规划方法,有时还可用动态规划的方法。

模型求解 在建立模型之后,就要求解模型,给出有效的计算方法。

例如旅行推销员问题:一个推销员要到n 个城市去推销,如何安排行程?如果用简单的组合算法,其计算步骤是!n 的倍数,随着n 的增大,计算量之大以至无法得到结果。

如30n ,即使以每秒以2410步的速度来计算,也需要8年多,况且现在的计算机还没有达到上述速度。

结果的分析与检验 有些问题需要对解的现实意义作出解释,检验模型的正确性,并对模型的稳定性进行分析。

如种群的相互竞争问题需要对解的现实意义作出解释,并对模型的稳定性进行分析。

二、基本知识微分方程在科技、工程、经济管理、生态、环境、人口、交通等各个领域中有着广泛的应用。

大量的实际问题需要用微分方程来描述。

首先,我们要对实际研究现象作具体分析,然后利用已有规律、或者模拟,或近似的得到各种因素变化率之间的关系,从而建立一个微分方程。

一般地,利用以下三种方法建立一个微分方程模型。

1. 根据规律建模在数学、力学、物理、化学等学科中已有许多经过实践检验的规律和定律,如Newton 运动定律、物质的放射性规律、曲线的切线性质等,这些都涉及到某些函数的变化率,因而可根据相应的规律以及变化率=输入率-输出率的思想,列出微分方程。

2. 微元法建模在数学、力学、物理等许多教科书上会见到用微元分析法建立常微分方程模型的例子,它实际上是应用一些已知的规律或定理寻求某些微元之间的关系。

3. 模拟近似法在社会科学、生物学、医学、经济学等学科的实践中,由于我们对上述领域的一些现象的规律性目前还不是很清楚,了解并不全面,应用微分方程模型进行研究时,可根据已知的一些经验数据,在不同的假设下去模拟实际现象。

对如此得到的微分方程进行数学上求解或分析解的性质,然后再去同实际作对比,观察分析这个模型与实际现象的差异性,看能否在一定程度上反映实际现象,然后对其解答作出解释。

然而大多数微分方程是很难得到解析解的,这时,我们可求其数值解。

对于数值解,我们可用数学软件包如 MATLAB 、Mathematica 等来求解。

下面我们简要介绍微分方程方面的基本知识,然后讨论与之有关的微分方程建模思想,并简要说明如何运用MA TLAB 软件包来求解微分方程的过程。

2.1 微分方程基本知识1. 微分方程的概念未知的函数以及它的某些阶的导数连同自变量都由一已知方程联系在一起的方程称为微分方程。

如果未知函数是一元函数,称为常微分方程。

如果未知函数是多元函数,称为偏微分方程。

联系一些未知函数的一组微分方程称为微分方程组。

微分方程中出现的未知函数的导数的最高阶数称为微分方程的阶。

若方程中未知函数及其各阶导数都是一次的,称为线性常微分方程,一般表示为()(1)11()()()()n n n n y a t ya t y a t yb t --'++++=L 若上式系数()(1,2,,)i a t i n =L 均与t 无关,称之为常系数(或定常、自治、时不变)的。

2. 初等积分法有些微分方程可直接通过积分求解。

例如,一阶常系数线性常微分方程(0)y ay b a '=+≠可化为dy dt ay b=+ 两边积分可得通解()y t 为1()exp()y t C at a b -=-其中C 为任意常数。

有些常微分方程可用一些技巧(如分离变量法、积分因子法、常数变易法、降阶法等)化为可积分的方程而求得显式解。

3. 常系数线性微分方程线性齐次常微分方程的解满足叠加性原理,从而线性非齐次常微分方程的求解可归结为求一个特解和相应的齐次微分方程的解。

一阶变系数线性常微分方程总可用这一思路求得显式解。

高阶线性常系数微分方程可用特征根法求得相应齐次微分方程的基本解,再用常数变易法求特解。

例1 求0.2 3.920x x x '''++=的通解。

解:特征方程为20.2 3.920λλ++=》roots([1 0.2 3.92])求得共轭复根0.1 1.9774i -±,从而通解为0.10.1()cos(1.9774)sin(1.9774)t t x t Ae t Be t --=+其中,A B 为任意常数。

一阶常微分方程组与高阶常微分方程可以互化,已给一个n 阶方程()(1)(,,,,)n n y f t y y y -'=L设(1)12,,,n n y y y y y y -'===L ,上式可化为一阶方程组1223112(,,,,)n n nn y y y y y y y f t y y y -'=⎧⎪'=⎪⎪⎨⎪'=⎪'=⎪⎩L L反过来,在许多情况下,一阶微分方程组也可以化为高阶方程。

所以一阶常微分方程组与高阶常微分方程的理论与方法在很多方面是相通的。

一阶常系数线性微分方程组也可用特征根法求解。

4. 常微分方程的平衡点及其稳定性关于常微分方程的平衡点及其稳定性,仅讨论右端不显含自变量t 的一阶微分方程 ()dx f x dt '= (1.1) 称代数方程()0f x =的实根0x x =为方程(1.1)的平衡点(或奇点)。

它也是方程(1.1)的解。

在实际问题中,我们不仅要得到问题的解,有时还要得到t →∞(均指t →+∞)时问题的解的变化趋势。

如果从一定范围内的初始条件出发,方程(1.1)的解()x t 都满足0()()x t x t →→∞,则称平衡点0x 是稳定的。

下面给出不易由定义判别平衡点0x 是否稳定的方法。

在0x 处将()f x 作泰勒(Taylor )展开,只取线性部分得方程(1.1)的近似线性方程 00()(),dx f x x x dt '=- (1.2) 易知0x 也是方程(1.2)的平衡点,(1.2)的通解为00()exp{()}x t c f x t x '=+.关于0x 是否稳定有一下结论:(1)若0()0f x '<,则0x 对于方程(1.2)和(1.1)都是稳定的;(2)若0()0f x '>,则0x 对于方程(1.2)和(1.1)都是不稳定的;关于常微分方程的平衡点及其稳定性,也仅讨论右端不显含自变量t 的微分方程组(,)(,)dx f x y dt dy g x y dt⎧=⎪⎪⎨⎪=⎪⎩ (1.3) 代数方程组(,)0(,)0f x yg x y =⎧⎨=⎩ 的实根00,x x y y ==称为方程(1.3)的平衡点,记作000(,)P x y .它也是方程(1.3)的解。

如果从一定范围内的初始条件出发,方程(1.3)的解(),()x t y t 都满足00(),()()x t x y t y t →→→∞则称平衡点0P 是稳定的。

下面给出判别平衡点0P 是否稳定的判别准则。

设000000()()()(),()()f P f P x y f Pg P p q g P g P x y x y∂∂∂∂⎡⎤∂∂=-+=⎢⎥∂∂∂∂⎣⎦∂∂ 则当0p >且0q >时,平衡点0P 是稳定的;当0p <或0q <时,平衡点0P 是不稳定的。

2.2 MATLAB 关于微分方程的解法1. 符号微分方程解析解求微分方程(组)的解析解用函数dsolve.求解微分方程时,需要将微分方程包含在dsolve 的表达式中,在表达微分方程时,字母 D 表示求微分,D2,D3等表示求高阶微分,任何 D 后所跟字母为因变量,自变量可以指定或缺省。

例如微分方程2232d y dy dx dx+= 可表达为23*2D y Dy +=。

具体格式为:S=dsolve(‘方程1’,‘方程2’,L ,‘初始条件1’,‘初始条件2’,L ,‘自变量’)。

均用字符串方式表示,自变量缺省值为t 。

我们通过若干例子说明解法。

例1 求1du u t dt=+-的通解。

解:dsolve('Du=1+u-t'),结果为ans =t+exp(t)*C1,即 ()tu t t Ce =+.例2 求下列微分方程的特解 224120(0)0,(0)5d y dy y dx dx y y ⎧++=⎪⎨⎪'==⎩解:y=dsolve('D2y+4*Dy+12*y=0','y(0)=0','Dy(0)=5','x'),结果为y =5/4*2^(1/2)*exp(-2*x)*sin(2*2^(1/2)*x),即2())4x y x e -=. 例3 求y ay b '=+的通解。

解:s=dsolve('Dy=a*y+b'),结果为s =-b/a+exp(a*t)*C1.例4 求下列微分方程组的特解 233453442dx x y zdt dy x y z dtdx x y z dt ⎧=-+⎪⎪⎪=-+⎨⎪⎪=-+⎪⎩解:程序为[x,y,z]=dsolve('Dx=2*x-3*y+3z','Dy=4*x-5*y+3*z','Dz=4*x-4*y+2*z','t'),结果为x =3/4+C1*exp(-t)+C2*sin(2*2^(1/2)*t)+C3*cos(2*2^(1/2)*t)y= C1*exp(-t)-2/3*C2*cos(2*2^(1/2)*t)*2^(1/2)+2/3*C3*sin(2*2^(1/2)*t)*2^(1/2)+3/2+2/3*C2*sin(2*2^(1/2)*t)+2/3*C3*cos(2*2^(1/2)*t)z =2/3*C2*sin(2*2^(1/2)*t)+2/3*C3*cos(2*2^(1/2)*t)-2/3*C2*cos(2*2^(1/2)*t)*2^(1/2)+ 2/3*C3*sin(2*2^(1/2)*t)*2^(1/2)+3/2,整理一下即可。