实验一 常微分方程
- 格式:doc
- 大小:236.50 KB
- 文档页数:8
实验报告
一、实验目的
解初值问题各种方法比较。
二、实验题目
给定初值问题
⎪⎩⎪⎨⎧=≤<+=,
0)1(,21y x xe x y dx dy x , 其精确解为)(e e x y x -=,按
(1)改进欧拉法,步长01.0,1.0==h h ;
(2)四阶标准龙格-库塔法,步长1.0=h ;
求在节点)10,...,2,1(1.01=+=k k x k 处的数值解及其误差,比较各个方法的优缺点。
三、实验原理
改进欧拉法程序,四阶标准龙格-库塔法程序。
四、实验内容及结果
五、实验结果分析
实验2中改进欧拉法和四阶标准龙格-库塔法的比较:
结果的第一个ans是x的值与对应的y的值,第二个ans是精确解x的对应值y,第三个ans 是与精确值的误差百分数。
通过误差百分数的比较,可以明显的发现改进欧拉法比四阶标准龙格-库塔法更精确。
1. 分别用Euler 法和ode45解下列常微分方程并与解析解比较:(1) ,(0)1, 03y x y y x '=+=<<function [ t,y ] = euler(f,ts,y0,h)t=ts(1):h:ts(2);y(1)=y0;for i=1:length(t)-1y(i+1)=y(i)+h*f(t(i),y(i));endt=t';y=y';endf=(t,y)t+y;[t1,y1]=euler(f,[0,3],1,0.05);[t2,y2]=ode45(f,[0,3],1);plot(t1,y1,'.-',t2,y2,'ro')hold ony3=dsolve('Dy=x+y','y(0)=1','x')ezplot(y3,[0,3])hold offlegend('euler','ode45','解析解');(2)22()5()3()45,(0)2,(0)1, 02tx t x t x t e x x t ''''--===<<f=(t,x)[2*x(2);5*x(2)+3*x(1)+45*exp(2*t)];[t1,y1]=ode45(f,[0,2],[2,1]);plot(t1,y1)2. 求一通过原点的曲线,它在(,)x y 处的切线斜率等于22,0 1.57.x y x +<<若x 上限增为1.58,1.60会发生什么?function dy = odefun_2(x,y)dy=2*x+y^2;dy=dy(:);end[t1,y]=ode45('odefun_2',[0,1.58],0) plot(t1,y);[t2,y]=ode45('odefun_2',[0,1.60],0) plot(t2,y);3. 求解刚性方程组:112121221000.25999.750.5,(0)1,050.999.751000.250.5,(0)1,y y y y x y y y y '=-++=⎧<<⎨'=-+=-⎩function Dy=fun(t,y)Dy=zeros(2,1);Dy(1)=-1000.25*y(1)+999.75*y(2)+0.5;Dy(2)=999.75*y(1)-1000.25*y(2)+0.5;[t,y]=ode15s('fun',[0,5],[1,-1]); plot(t,y(:,1),'o',t,y(:,2),'k-','LineWidth',2);4. (广告效应) 某公司生产一种耐用消费品,市场占有率为5%时开始做广告,一段时间的市场跟踪调查后,该公司发现:单位时间购买人口百分比的相对增长率与当时还没有买的百分比成正比,且估得此比例系数为0.5。
常微分方程实验报告一、实验目的常微分方程是数学分析和实际应用中非常重要的一部分,本次实验的主要目的是通过实际操作和计算,深入理解常微分方程的概念、性质和求解方法,并能够将其应用到实际问题中,提高我们解决数学问题和实际应用问题的能力。
二、实验原理常微分方程是指含有一个自变量和一个未知函数及其导数的等式。
求解常微分方程的方法有很多,常见的有变量分离法、一阶线性方程的求解方法(如常数变易法)、恰当方程的求解方法(通过积分因子)等。
对于一阶常微分方程,形如\(y' + p(x)y = q(x)\)的方程,可以使用积分因子\(e^{\int p(x)dx}\)来求解。
对于可分离变量的方程,形如\(g(y)dy = f(x)dx\),可以通过分别积分求解。
三、实验内容(一)一阶常微分方程的求解1、求解方程\(y' + 2xy = 2x\)首先,计算积分因子\(e^{\int 2xdx} = e^{x^2}\),然后将方程两边乘以积分因子得到:\((ye^{x^2})'= 2xe^{x^2}\)两边积分可得\(ye^{x^2} = e^{x^2} + C\),解得\(y =1 + Ce^{x^2}\)2、求解方程\(xy' y = x^2\)将方程化为\(y' \frac{y}{x} = x\),这里\(p(x) =\frac{1}{x}\),积分因子为\(e^{\int \frac{1}{x}dx} =\frac{1}{x}\)。
方程两边乘以积分因子得到\((\frac{y}{x})'= 1\),积分可得\(\frac{y}{x} = x + C\),即\(y = x^2 + Cx\)(二)二阶常微分方程的求解1、求解方程\(y'' 2y' + y = 0\)特征方程为\(r^2 2r + 1 = 0\),解得\(r = 1\)(二重根),所以通解为\(y =(C_1 + C_2x)e^x\)2、求解方程\(y''+ 4y = 0\)特征方程为\(r^2 + 4 = 0\),解得\(r =\pm 2i\),所以通解为\(y = C_1\cos(2x) + C_2\sin(2x)\)(三)应用常微分方程解决实际问题1、考虑一个物体在受到与速度成正比的阻力作用下的运动,其运动方程为\(m\frac{dv}{dt} = kv\)(其中\(m\)为物体质量,\(k\)为阻力系数),求解速度\(v\)随时间\(t\)的变化。
常微分方程的概念与初值条件常微分方程(Ordinary Differential Equation, ODE)是数学建模的一个基本问题。
它描述了一个未知函数在一个自变量上的变化规律。
大部分自然现象都可以通过常微分方程来描述,例如力学、电磁学、光学等。
因此,研究常微分方程不仅在数学上具有重要意义,而且在各个领域的应用中也具有不可替代的地位。
常微分方程的概念十分简单,它是一种描述未知函数变化规律的数学模型。
设未知函数为$y=y(x)$,自变量为$x$,则常微分方程的一般形式为:$$F(x, y, y', y'',\ldots, y^{(n)})=0,$$其中$y', y'',\ldots, y^{(n)}$分别表示未知函数的一阶导数、二阶导数、$\ldots$、$n$阶导数,$F$是一个给定的函数。
通常,我们将$n$称为该方程的阶数。
例如,一阶线性常微分方程的一般形式为:$$y' + p(x)y = q(x),$$其中$p,q$是已知函数。
在解决常微分方程的问题中,初值条件是必不可少的。
初值条件指定了未知函数$y$在某一点$x_0$上的函数值$y(x_0)$,以及该点上的某些导数值。
通常我们将这些导数值称为初始斜率,它们是求解常微分方程的关键。
将初始斜率确定下来,我们就可以唯一地确定未知函数$y(x)$在整个定义域上的函数值,这就是常微分方程解的存在唯一性定理。
因此,初值条件可以直接影响常微分方程的解。
在实际应用中,我们常常需要通过实验或测量来确定初始条件,例如弹簧的振动实验、电路的响应测试等等。
当我们知道了一个系统的初值条件时,就可以用常微分方程来描述该系统的动力学行为,并预测未来的变化趋势。
因此,研究常微分方程的初值问题对于控制、优化和决策等方面有着广泛的应用价值。
解决常微分方程的方法可以分为解析求解和数值求解两种。
解析方法是指通过数学分析得到常微分方程的解析解,即用解析式来表示未知函数$y(x)$。
数学与计算科学学院实验报告实验项目名称欧拉法解常微分方程所属课程名称数值计算实验类型验证型实验日期2012-6- 4班级隧道1002班学号201008020233姓名李彬彬成绩一、实验概述:【实验目的】 通过运用相关的数值计算软件,解决最基本的常微分方程的数值计算,并且能够熟练的运用这种方法。
【实验原理】 欧拉法1.对常微分方程初始问题(9.2))((9.1)),(00⎪⎩⎪⎨⎧==y x y y x f dxdy用数值方法求解时,我们总是认为(9.1)、(9.2)的解存在且唯一。
欧拉法是解初值问题的最简单的数值方法。
从(9.2)式由于y (x 0) = y 0已给定,因而可以算出),()('000y x f x y =设x 1 = h 充分小,则近似地有:),()(')()(00001y x f x y hx y x y =≈-(9.3)记 ,n ,,i x y y i i 10 )(== 从而我们可以取),(0001y x hf y y ==作为y (x 1)的近似值。
利用y 1及f (x 1, y 1)又可以算出y (x 2)的近似值:),(1112y x hf y y +=一般地,在任意点x n +1 = (n + 1)h 处y (x )的近似值由下式给出),(1n n n n y x hf y y +=+(9.4)这就是欧拉法的计算公式,h 称为步长。
不难看出,近似解的误差首先是由差商近似代替微商(见(9.3))引起的,这种近似代替所产生的误差称为截断误差。
还有一种误差称为舍入误差,这种误差是由于利用(9.4)进行计算时数值舍入引起的。
【实验环境】Windows XP 环境下运行 NumericalAnalyse 软件二、实验内容:【实验方案】在区间[0,1]上以h=0.1为步长,分别用欧拉法与预估-校正法求初值问题y’=y-2x/y且 y|x=0 =1的数值解。
将上述方程输入到软件NumericalAnalyse中步骤如图选择常微分方程的数值解法。
实验4 常微分方程数值解分1 黄浩 43一、实验目的1.掌握用MATLAB软件求微分方程初值问题数值解的方法;2.通过实例学习用微分方程模型解决简化的实际问题;3.了解欧拉方法和龙格-库塔方法的基本思想和计算公式,及稳定性等概念。
二、实验内容1.《数学实验》第一版(问题2)问题叙述:小型火箭初始重量为1400kg,其中包括1080kg燃料。
火箭竖直向上发射时燃料燃烧率为18kg/s,由此产生32000N的推力,火箭引擎在燃烧用尽时关闭。
设火箭上升时空气阻力正比于速度的平方,比例系数为0.4kg/m,求引擎关闭瞬间火箭的高度、速度、加速度,及火箭到达最高点时的高度和加速度,并画出高度、速度、加速度随时间变化的图形。
模型转换及实验过程:(一)从发射到引擎关闭设火箭总质量为m,上升高度为h,瞬时速度为v,瞬时加速度为a,由燃料燃烧时间t=60s,可列如下的方程组:t∈[0,60]−9.8因此,上述方程为二元常微分方程组,选择t为自变量,h和v为因变量进行分析。
初值条件:h(0)=0 ,v(0)=0对上述模型,使用ode45()函数求数值解(程序见四.1、四.2),结果如下:由上表可知,引擎关闭瞬间,火箭的高度为12189.78m,速度为267.26m/s,加速度为0.9170m/s2,火箭至此已飞行60s而高度、速度、加速度随时间的变化曲线如下:(二)从引擎关闭到最高点设引擎关闭时,t1=0,由上一问的结果可知,h(0)=12189.78m,v(0)= 267.26m/s,m=320kg,则可列二元常微分方程组如下:9.8因此,可选择t1为自变量,h、v为因变量进行分析(程序见四.3、四.4),实验结果如下:由上表可知,当t1∈[11,12]时,v(t1)有零点,即该区间内某时刻火箭达到最高点。
再进行更细致的实验(程序略),设步长为0.01,观察该区间内v(t1)的零点,如下表所示:可以看出,当t1=11.30s,即总时间t=71.30s时,火箭达到最高点,高度为13115.36m,加速度为-9.8m/s2。
常微分方程的求解与定性分析实验报告一、实验综述1、实验目的及要求归纳和学习求解常微分方程(组)的基本原理和方法;掌握解析、数值解法,并学会用图形观察解的形态和进行解的定性分析;熟悉MATLAB 软件关于微分方程求解的各种命令;通过范例学习建立微分方程方面的数学模型以及求解全过程;通过该实验的学习,使学生掌握微分方程(组)求解方法(解析法、欧拉法、梯度法、改进欧拉法等),对常微分方程的数值解法有一个初步了解,同时学会使用MATLAB 软件求解微分方程的基本命令,学会建立微分方程方面的数学模型。
这对于学生深入理解微分、积分的数学概念,掌握数学的分析思维方法,熟悉处理大量的工程计算问题的方法是十分必要的。
2、实验仪器、设备或软件电脑、matlab7.0二、实验过程(实验步骤、记录、数据、分析)实验内容:根据实验内容和步骤,完成以下实验,要求写出实验报告(实验目的→问题→数学模型→算法与编程→计算结果→分析、检验和结论)1.求微分方程的解析解,并画出它们的图形。
y '= y + 2 x, y (0) = 1, 0< x <1;m=dsolve( 'Dy=y+2*x' , 'y(0)=1' , 'x' )ezplot(m,[0 1])m =3*exp(x) - 2*x –23 exp(x) - 2 x - 243.532.521.510 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1x3u u 0. 1u 0u( 0) 0; u( 0) 01.求微分方程的数值解,要求编写求解程序。
t [010]function dy=vdp1000(t,y)dy=zeros(2,1);dy(1)=y(2);dy(2)=-y(1)+0.1*y(1)^3;[T,Y]=ode15s( 'vdp1000' ,[0 10],[0 0]);plot(T,Y(:,1), '-' )10.80.60.40.2-0.2-0.4-0.6-0.8-10 1 2 3 4 5 6 7 8 9 103.Rossler微分方程组:'x y z'y x ay'z b z( x c)讨论化(如a∈(0,0.65))而方随参数a由小到大变,试当固定参数b=2,c=4时图形,观是否形成混沌状?察空间曲线程解的变化情况,并且画出空间曲线function r=rossler(t,x)global a;global b;global c;r=[-x(2)-x(3);x(1)+a*x(2);b+x(3)*(x(1)-c)];global a;global b;global c;b=2;c=4;t0=[0,200];for a=0:0.1:0.6[t,x]=ode45( 'rossler' ,t0,[0,0,0]);subplot(1,2,1);plot(t,x(:,1), 'r' ,t,x(:,2), 'g' ,t,x(:,3), 'b' );title( 'x(红色),y(绿色),z(蓝色) 随t 的变化情况' );xlabel( 't' );subplot(1,2,2);plot3(x(:,1),x(:,2),x(:,3))title( ' 相图' );xlabel( 'x' );ylabel( 'y' );zlabel( 'z' ); pauseend结果显示:a=0:x(红色),y(绿色),z(篮色)随t变化情况0.6相图0.40.80.20.60.4z-0.20.2-0.4-0.6 00.5-0.8-0.5-10 50 100 150 200t y -1 x-0.5a=0.1:x(红色),y( 绿色),z( 篮色)随t变化情况相图0.60.40.80.20.60.4z-0.20.2-0.4-0.61 -0.8-0.5 0.50 -1y0 50 100 150 200 -1 -0.5xta=0.2:x(红色),y(绿色),z( 篮色)随t变化情况相图43221.511z0.5-1-225-3-2-40 50 100 150 200t y -4 x-5a=0.3:x(红色),y(绿色),z( 篮色)随t变化情况相图54332.52211.5z1-10.5-25-35 -4 0-50 50 100 150 200t y -5 x-5a=0.4:x(红色),y(绿色),z( 篮色)随t变化情况6相图4 65243z21-25-4 105-60 50 100 150 200t y-5-10x-5a=0.5:x(红色),y(绿色),z( 篮色)随t变化情况相图1210128106846z242-25-410-6 5-80 50 100 150 200t y-5-10x-5结果分析:从图像可以看出,当a=0 时,微分方程的解(x,y,z)收敛与(0,0.5,0.5);当a=0.1时,(x,y,z)仍收敛与(0,0.5,0.5),只是收敛速度减慢;当a=0.2时,(x,y,z)已发散,周期性变化;随着a的增大,(x,y,z)接近其极限环的速度加快,空间曲线成混沌状。
第二章 一阶微分方程的解的存在定理§2.1 一阶微分方程解的基本理论主要内容一 导数已解出方程初值问题解的存在唯一性定理 考虑导数已解出的一阶DE 的初值问题()()00,y f x y y x y '=⎧⎪⎨=⎪⎩(2.1)(2.2)这里()y x f ,是在闭矩形域R : a x x ≤-0,b y y ≤-0上的连续函数。
定义2.1 如果存在常数0>L ,使得对于所有的点()1,y x ,()2,y x R ∈,都有不等式()()2121,,y y L y x f y x f -≤-成立,则称函数()y x f ,在R 上关于y 满足李普希兹(Lipschitz )条件。
1定理2.1 (毕卡存在唯一性定理) 如果()y x f ,在R 上满足条件: 1)连续;2)关于y 满足李普希兹条件,则初值(2.1)和(2.2)在区间h x x ≤-0上存在唯一解()x y y =,其中()M b a h ,m in=,()y x f M R y x ,max ),(∈=。
注1 取数h 的意义。
注意到()y x f M R y x ,max ),(∈=,从而积分曲线()x y y =在任一点()()R x y x ∈,处的切线斜率()M x y ≤'。
于是从点()o y x p ,0引两条斜率分别为M 和M -的直线1l 和2l ,便知过点P 的积分曲线必限制在图2.1和图2.2的阴影区域内。
而直线1l 和2l 相交情形有如下两种可能。
(i )若相交成如图 2.1所示的情况,则a Mb>,积分曲线()x y y =在a x x ≤-0上不越出R ,从而应取a h =。
(ii )若相交成如图 2.2所示的情况,则a Mb >,积分曲线()x y y =在Mb x x ≤-0上不越出R ,从而应取Mb h =。
总之,取()M ba h ,min =,就是为了使初值问题(2.1)和(2.2)的解在h x x ≤-0上总存在。
●凡表示未知函数、未知函数的导数与自变量之间的关系的方程,叫做微分方程。
●未知函数是一元函数的,叫做常微分方程。
未知函数是多元函数的,叫做偏微分方程。
●微分方程中所出现的未知函数的最高阶导数的阶数,叫做微分方程的阶。
●在研究某些实际问题时,首先要建立微分方程,然后找出满足微分方程的函数(解微分方程),就是说,找出这样的函数,把这函数代入微分方程能使该方程成为恒等式。
这个函数就叫该微分方程的解。
●如果微分方程的解中含有任意常数,且任意常数的个数与微分方程的阶数相同,这样的解叫做微分方程的通解。
●设微分方程中的未知函数为y=y(x),如果微分方程是一阶的,通常用来确定任意常数的条件是x=x0时,y=y0,或写成y|x=x0=y0,其中x0,y0都是给定的值;如果微分方程是二阶的,通常用来确定任意常数的条件是:x=x0时,y=y0,y′=y0′,或写成y|x=x0=y0,y′|x=x0=y0′,其中x0,y0和y0′都是给定的值,上述这种条件叫做初始条件。
●确定了通解中的任意常数以后,就得到微分方程的特解。
●求微分方程y′=f(x,y)满足初始条件y|x=x0=y0的特解这样一个问题,叫做一阶微分方程的初值问题,记作{y′=f(x,y);y|x=x0=y0}●可分离变量方程。
一阶可分离变量方程:dy/dx=f(x)/g(y),可分离变量为:∫g(y)dy=∫f(x)dx,设g(y)、f(x)的原函数分别为G(y)、F(x),则可解出方程的通解:G(y)=F(x)+C。
●例:求微分方程dy/dx=2xy的通解。
解:方程是可分离变量的,分离变量后得dy/y=2xdx,两端积分∫dy/y=∫2xdx,得ln|y|=x2+C1,从而y=±e C1e x2。
因±e C1仍是任意常数,把它记作C,便得方程的通解y=Ce x2。
●齐次方程。
如果一阶微分方程dy/dx=f(x,y)中的函数f(x,y)可写成y/x的函数,即f(x,y)=φ(y/x),则称这方程为齐次方程。
实验一 常微分方程1. 分别用Euler 法和ode45解下列常微分方程并与解析解比较: (1) ,(0)1,13y x y y x '=+=<<Euler 法:function [t,y]=euler(Fun,tspan,y0,h) t=tspan(1):h:tspan(2); y(1)=y0;for i=1:length(t)-1y(i+1)=y(i)+h.*feval(Fun,t(i),y(i)); end t=t'; y=y';function f=Fun(x,y) % 常微分方程的右端函数 f=x+y;>> [x,y]=euler('Fun',[0,3],1,0.1)>> [x,y] ans =0 1.0000 0.1000 1.1000 0.2000 1.2200 0.3000 1.3620 0.4000 1.5282 0.5000 1.7210 0.6000 1.9431 0.7000 2.1974 0.8000 2.4872 0.9000 2.8159 1.0000 3.1875 1.1000 3.6062 1.2000 4.0769 1.3000 4.6045 1.4000 5.1950 1.5000 5.8545 1.6000 6.5899 1.7000 7.4089 1.8000 8.3198 1.9000 9.3318 2.0000 10.4550 2.1000 11.7005 2.2000 13.0805 2.3000 14.6086 2.4000 16.2995 2.5000 18.1694 2.6000 20.2364 2.7000 22.5200 2.8000 25.0420 2.9000 27.8262 3.0000 30.8988ode45:>> [x,y]=ode45('Fun',[0,3],1) ans =0 1.0000 0.0502 1.0528 0.1005 1.1109 0.1507 1.17460.2010 1.2442 0.2760 1.3596 0.3510 1.4899 0.4260 1.63610.5010 1.7996 0.5760 1.9817 0.6510 2.1838 0.7260 2.4074实验一 常微分方程0.8010 2.6544 0.8760 2.9264 0.9510 3.2254 1.0260 3.55351.1010 3.9131 1.1760 4.3065 1.2510 4.7364 1.3260 5.20561.4010 5.7172 1.4760 6.2744 1.5510 6.8810 1.6260 7.54061.7010 8.2574 1.7760 9.0359 1.8510 9.8808 1.9260 10.79742.0010 11.7912 2.0760 12.8683 2.1510 14.0351 2.2260 15.29862.3010 16.6664 2.3760 18.1466 2.4510 19.7478 2.5260 21.47962.6010 23.3522 2.6760 25.3764 2.7510 27.5641 2.8260 29.92812.9010 32.4820 2.9257 33.3694 2.9505 34.2796 2.9752 35.21343.0000 36.1711解析解:>> y=dsolve('Dy=x+y','y(0)=1','x') y =2*exp(x) - x - 1(2) 20.01()2sin(),(0)0,(0)1,05y y y t y y t ''''-+===<< Euler 法:实验一常微分方程function f=Fun(t,y)% 常微分方程的右端函数f=[y(2);0.01*y(2)^2-2*y(1)+sin(t)];>> [t,y]=euler('Fun',[0,5],[0,1],0.2)ode45:>> [t,y]=ode45('Fun',[0,5],[0,1])t =0 0.0001 0.0001 0.0002 0.0002 0.0005 0.0007 0.0010 0.0012 0.00250.0037 0.0050 0.0062 0.0125 0.0188 0.0251 0.0313 0.0627 0.0941 0.12550.1569 0.2819 0.4069 0.5319 0.6569 0.7819 0.9069 1.0319 1.1569 1.28191.4069 1.5319 1.6569 1.7819 1.90692.0319 2.1569 2.2819 2.4069 2.53192.6569 2.7819 2.90693.0319 3.1569 3.2819 3.4069 3.5319 3.6569 3.78193.90694.0319 4.1569 4.2819 4.4069 4.5319 4.6569 4.7427 4.8285 4.91425.0000y =0 1.0000 0.0001 1.0000 0.0001 1.0000 0.0002 1.0000 0.0002 1.00000.0005 1.0000 0.0007 1.0000 0.0010 1.0000 0.0012 1.0000 0.0025 1.00000.0037 1.0000 0.0050 1.0000 0.0062 1.0000 0.0125 1.0000 0.0188 1.00000.0251 0.9999 0.0313 0.9998 0.0627 0.9987 0.0941 0.9965 0.1253 0.99340.1564 0.9893 0.2786 0.9632 0.3966 0.9220 0.5085 0.8662 0.6126 0.79670.7072 0.7146 0.7908 0.6210 0.8620 0.5176 0.9198 0.4058 0.9632 0.28760.9915 0.1647 1.0043 0.0392 1.0013 -0.0869 0.9826 -0.2117 0.9485 -0.33310.8996 -0.4490 0.8365 -0.5578 0.7605 -0.6577 0.6725 -0.7471 0.5742 -0.8246实验一 常微分方程0.4669 -0.8889 0.3525 -0.9393 0.2327 -0.9748 0.1095 -0.9950 -0.0154 -0.9996-0.1398 -0.9887 -0.2619 -0.9624 -0.3798 -0.9212 -0.4916 -0.8657 -0.5957 -0.7970-0.6904 -0.7161 -0.7742 -0.6242 -0.8460 -0.5228 -0.9046 -0.4134 -0.9491 -0.2978-0.9789 -0.1777 -0.9934 -0.0549 -0.9945 0.0300 -0.9883 0.1146 -0.9748 0.1985-0.9543 0.28092. 求一通过原点的曲线,它在(,)x y 处的切线斜率等于22,0 1.57.x y x +<<若x 上限增为1.58,1.60会发生什么?function f=Fun(x,y) % 常微分方程的右端函数 f=2*x+y.^2;>> [x,y]=ode45('Fun',[0,1.57],0) x =0 0.0393 0.0785 0.1178 0.1570 0.1963 0.2355 0.2748 0.3140 0.3533 0.3925 0.4318 0.4710 0.5103 0.5495 0.5888 0.6280 0.6673 0.7065 0.7458 0.7850 0.8243 0.8635 0.9028 0.9420 0.9813 1.0205 1.0598 1.0990 1.1383 1.1775 1.2168 1.2560 1.2953 1.3345 1.3738 1.4130 1.4248 1.4367 1.4485 1.4604 1.4722 1.4840 1.4959 1.5077 1.5140 1.5203 1.5265 1.5328 1.5376 1.5424 1.5472 1.5519 1.5543 1.5567 1.5591 1.5614 1.5631 1.5647 1.5664 1.5681 1.5685 1.5690 1.5695 1.5700 y =实验一 常微分方程0 0.0015 0.0062 0.0139 0.0247 0.0386 0.0556 0.0758 0.09920.1259 0.1559 0.1895 0.2266 0.2675 0.3124 0.3615 0.4152 0.4738 0.5378 0.6076 0.6841 0.7679 0.8601 0.9620 1.0751 1.2014 1.3434 1.5045 1.6892 1.9037 2.1557 2.4577 2.8282 3.3003 3.9056 4.7317 5.9549 6.4431 7.0116 7.6832 8.4902 9.4821 10.7170 12.3090 14.4551 15.9220 17.7080 19.9390 22.8164 25.6450 29.2282 33.9673 40.5910 44.9434 50.3088 57.1229 66.1087 74.3108 84.7123 98.4901 117.7875 124.9206 132.9699 142.1268 152.641500.20.40.60.81 1.2 1.4 1.6若x 上限增为1.58,1.60,则超出运算的范围,发生溢出。
实验一 常微分方程
1. 分别用Euler 法和ode45解下列常微分方程并与解析解比较: (1) ,(0)1,13y x y y x '=+=<<
odefun=inline (‘x+y ’,‘x ’,‘y ’); [x1,y1]=ode45(odefun,[0,3],1); [x2,y2]=euler(odefun,[0,3],1,0.01); S=dsolve(‘Dy=x+y’,’y(0)=1’,’x’); hold on
plot(x1,y1,’o’); plot(x2,y2,’r’);
fplot(‘2*exp(x )-x-1’,[0,3]);
title(‘Euler 法和ode45法与解析解’); Legend(‘ode45法’,’Euler 法’,’解析解’); ylabel(‘x 轴’); ylabel(‘y 轴’); hold off
(2) 20.01()2sin(),(0)0,(0)1,05y y y t y y t ''''-+===<< odefun=@(t,y)[y(2);0.01*y(2)^2-2*y(1)+sin(t)]; [t,y]=ode45(odefun,[0 5],[0:1]); plot(t,y(:,1));
title(‘第一题(2)图像’); xlabel(‘x 轴’); ylabel(‘y 轴’);
实验一 常微分方程
2. 求一通过原点的曲线,它在(,)x y 处的切线斜率等于2
2,0 1.57.x y x +<<若x 上限增为1.58,1.60会发生什么?
t2(1.57)
实验一 常微分方程
3. 求解刚性方程组:
11212
121100.25999.750.5,(0)1,050.
999.751000.250.5,(0)1,y y y y x y y y y '=-++=⎧<<⎨
'=-+=-⎩
4. (温度过程)夏天把开有空调的室内一支读数为20℃的温度计放到户外,10分钟后读2
5.2℃, 再过10分钟后读数28.32℃。
建立一个较合理的模型来推算户外温度。
实验一常微分方程
5. (广告效应)某公司生产一种耐用消费品,市场占有率为5%时开始做广告,一段时间的市场跟踪调查后,该公司发现:单位时间内购买人口百分比的相对增长率与当时还没有买的百分比成正比,且估得此比例系数为0.5。
(1) 建立该问题的数学模型,并求其数值解与模拟结果作以比较;
(2) 厂家问:要做多少时间广告,可使市场购买率达到80%?
实验一常微分方程
6. (肿瘤生长) 肿瘤大小V生长的速率与V的a次方成正比,其中a为形状参数,0≤a≤1;而其比例系数K随时间减小,减小速率又与当时的K值成正比,比例系数为环境参数b。
设某肿瘤参数a=1, b=0.1, K的初始值为2,V的初始值为1。
问
(1)此肿瘤生长不会超过多大?
(2)过多长时间肿瘤大小翻一倍?
(3)何时肿瘤生长速率由递增转为递减?
(4)若参数a=2/3呢?
ans=2/exp(t/10)
ans=exp(20)/exp(20/exp(t/10))
fanbei=36
实验一常微分方程Zhuanbian=2034930319768065/(2097152*exp(20/exp(t/10)*exp(t/10))
实验一常微分方程
fanbei=40
zhuanbian=(2*(20/exp(t/10)-23)^2/(9*exp(t/10))
选做题:
1.(生态系统的振荡现象)第一次世界大战中,因为战争很少捕鱼,按理战后应能捕到更多的鱼才是。
可是大战后,在地中海却捕不到鲨鱼,因而渔民大惑不解。
令x1为鱼饵的数量,x2为鲨鱼的数量,t为时间。
微分方程为
(5.20)
式中a1, a2, b1, b2都是正常数。
第一式鱼饵x1的增长速度大体上与x1成正比,即按a1x1比率增加, 而被鲨鱼吃掉的部分按b1x1x2的比率减少;第二式中鲨鱼的增长速度由于生存竞争的自然死亡或互相咬食按a2x2的比率减少,但又根据鱼饵的量的变化按b2x1x2的比率增加。
对a1=3, b1=2, a2=2.5, b2=1, x1(0)=x2(0)=1求解。
画出解曲线图和相轨线图,可以观察到鱼饵和鲨鱼数量的周期振荡现象。
实验一常微分方程
实验报告总结:
本次题中多次运用欧拉方法和ode算法我不是很懂,通过书本和同学的讨论,最后才弄懂。
常微分方程在现实中的应用很重要,用处很广。