常微分方程的近似计算和误差估计(2) 您所在的位置:网站首页 kingson什么品牌 常微分方程的近似计算和误差估计(2)

常微分方程的近似计算和误差估计(2)

#常微分方程的近似计算和误差估计(2)| 来源: 网络整理| 查看: 265

近似计算和误差估计(2) 瞎扯淡:

ahhh大家可能会好奇为什么一上来就是2~因为(1)是用word的写的啦,改天再上传上来吧~第一次用CS···哦哦CSDN写博客,如果写得有不明白或者错误的地方欢迎大家的指正,现在让我们进入正题吧~

回顾

实验内容回顾:求方程 dydx=x+y2 的近似解。 首先先让我们来回顾一下我们在(1)所学的内容:解的存在唯一性定理和逐步逼近法,他们两个是什么关系呢?一句话概括起来就是,满足可以用逐步逼近法求解的初值问题的解一定是存在且唯一的啦~

那么,没有学过逐步逼近法的同学一定会问了,逐步逼近法是什么···逐步逼近法的本质思想其实就是迭代法啦。就是通过把公式的输出当做输入,再把输出当做输入,再把输出当做输入···这样一直做下去就对了。而如果输出的结果可以满足是收敛的(也就是如果两个结果的差距会越来越小),那么就说这个微分方程是可以用逐步逼近法求解的,它的解也会存在且唯一。

那么现在就要问,什么样的微分方程才能满足使用逐步逼近法的条件呢? 答案可以很简单:满足利普希茨条件即可(真是佩服这些数学家连名字都那么抽象···),利普希茨条件大概说的是什么呢?+_+发现即使是大概说明也得说得很详细怎么办。

首先想想y对x求导得到的结果可以是什么样的形式,如果可以求解出他们的导数的话,那么一定是长这个样子的:

dydx=f(x,y)

为毛y对x求导之后还有y呢?试试对 x2+y2=0 这个东西两边同时求导你就造了~不难算出这个的结果是 −xy 。

所以,这里就有了一个想法, y′ 其实关于 x 和y的一个函数。 那么如果在初值条件即 (x0,y0) 的附近的某个区域如果满足以下关系式,即存在一个常数 L≥0 :

|f(x,y1)−f(x,y2)|≤L|y1−y2| 则说 f(x,y) 在R上关于y满足利普希茨条件。

虽然专业的定理是陈述完了,但是这个利普希茨条件到底是个什么鬼呢?谁tm看得懂这种话啊。好的,我来大致翻译一下,如果 y1≠y2 的话,我们就可以把等式右边的作差移动到公式的左边,即可以变成:

|f(x,y1)−f(x,y2)||y1−y2|≤L

也就是,这个东西是只要是有界的就行了。虽然这样子但是感觉还是很抽象吧,艾玛那我们来看几个具体的例子吧。到底什么样满足,什么样不满足~

例1:初值点选为 (0,0) , y1=x√ , y2=0 ,则容易算出当 x=0 时, |y1−y2|=0 , |f(x,y1)−f(x,y2)|=12x√=+∞ ,所以不管 L 取值多大,都是避免不了利普希茨条件不成立这个事实。 另外通过请假身边的同学,他们貌似判断利普希茨条件的方法是1:连续、2:有界,而对如何使用定义来验证是很懂,所以,emmmm,看看有没有机会问问老师。

近似估计的原理:

好的,让我们开始近似估计吧。还记得我们在用初步逼近方法求解的时候,够早了一个序列φn(x)=y0+∫xx0f(x,φn−1)dx,那么这个序列的最优值的误差是多少呢?在验证的时候可以推出来这个误差值为:

|φn(x)−φ(x)|≤MLn(n+1)!hn+1 其中M为初值附近的能取到的最大值, h=min(a,bM) , L 就是利普希茨常数,n就是迭代的次数啦~

开始实验

有了工具了吧,那我们回顾我们的实验目标,求 dydx=x+y2 的近似值:

Step1:将微分问题转化为积分问题: 设 φ(x) 是方程的解,即设 y=φ(x) ,则有:

dφ(x)dx=f(x,φ(x))=x+φ2(x) 两边同时从 x0 到 x 取定积分,我们就有: φ(x)−φ(x0)=∫xx0f(x,φ(x))dx=∫xx0x+φ2(x)dx 为什么要两边同时从 x0 取定积分呢?哎,反正不管怎么样,两边同时进行一个操作一定是对的就对了!那现在我们又有 y=φ(x) ,代入进去我们就有了我们想要的形式,即 φ(x)=y0+∫xx0f(x,φ(x))dx=y0+∫xx0x+φ2(x)dx

嗯嗯,虽然这样做是对的,但是我们也同样有疑问,就是为什么要两边同时从 x0 到 x 取定积分而不是两边同时取不定积分?emmm我也暂时还不知道吧ahhh, 哎书里面也没有写,谁会把所有自己思考的过程和各种可能性写进书里呢?作者告诉了我们真理,却没有告诉我们得到真理的方法。 不跑题,我们继续来看看,接下来的操作: 现在既然我们已经将微分问题转化为了积分的形式,那么我么现在就应该考虑如何应用我们的逐步逼近法来求解方程了吧。

Step2:计算参数M,h,L 回顾一下M,h,和L的定义,啥了吧,定义里面的参数都是在某一个a和b的前提下进行计算的,但是这边的这个问题根本就没有提到这个方程定义在哪个区间呀。所以,它就是在暗示我们要自己来定义a,b。在这里我们先随便假设a=b=1吧,那么现在我们的R就是:

|x−x0|≤1,|y−y0|≤1 然后我们来看看, M 是f(x,y)在R上的最大值,那么就是当 x=1,y=±1 的时候取到最大值为 M=2 ,而 h=min(a,1b)=min(1,1)=1 , L 怎么算,我们当然不是用原式的定义来算啦~利用的是|∂y∂x|≤L的这样一个不等式吧。 所以这时候我们只需要计算 ∂y∂x 就好啦~ 计算得到偏导为 2x ,故取该偏导绝对值的最大值得到 L=2

现在我们已经有求解出这个方程的近似解以及该近似解的误差的基本条件了。接下来让我们实施逐步逼近法吧~

Step3:逐步逼近法的实现 那,怎么实施呢,得有一个初值吧。我们这里令初值为 φ0(x)=0 ,代入有

φ1(x)=∫x0xdx 可以解得 φ1(x)=12x2 ,计算误差 error=MLn(n+1)!hn+1=2⋅212!⋅12=2 ,可见这个第一次的误差和没做差不多。。。我们再循环一次吧,将 φ1(x) 当做输入代入则: φ2(x)=∫x0x+x44dx=x22+x520 再更新一下当前的误差为: error=MLn(n+1)!hn+1=2⋅226⋅13=43 emmmm还是有点大,反正就可以循环,判断当误差



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有