最新实验2微分方程(基础实验)
微分方程实验指导精品文档11页
实验四种群数量的状态转移——微分方程一、实验目的及意义[1] 归纳和学习求解常微分方程(组)的基本原理和方法;[2] 掌握解析、数值解法,并学会用图形观察解的形态和进行解的定性分析;[3] 熟悉MATLAB软件关于微分方程求解的各种命令;[4] 通过范例学习建立微分方程方面的数学模型以及求解全过程;通过该实验的学习,使学生掌握微分方程(组)求解方法(解析法、欧拉法、梯度法、改进欧拉法等),对常微分方程的数值解法有一个初步了解,同时学会使用MATLAB软件求解微分方程的基本命令,学会建立微分方程方面的数学模型。
这对于学生深入理解微分、积分的数学概念,掌握数学的分析思维方法,熟悉处理大量的工程计算问题的方法是十分必要的。
二、实验内容1.微分方程及方程组的解析求解法;2.微分方程及方程组的数值求解法——欧拉、欧拉改进算法;3.直接使用MATLAB命令对微分方程(组)进行求解(包括解析解、数值解);4.利用图形对解的特征作定性分析;5.建立微分方程方面的数学模型,并了解建立数学模型的全过程。
三、实验步骤1.开启软件平台——MATLAB,开启MATLAB编辑窗口;2.根据微分方程求解步骤编写M文件3.保存文件并运行;4.观察运行结果(数值或图形);5.根据观察到的结果和体会写出实验报告。
四、实验要求与任务根据实验内容和步骤,完成以下实验,要求写出实验报告(实验目的→问题→数学模型→算法与编程→计算结果→分析、检验和结论)基础实验1.求微分方程的解析解, 并画出它们的图形,y’= y + 2x, y(0) = 1, 0<x<1;y’’+y cos(x) = 0, y(0)=1, y’(0)=0;2.用向前欧拉公式和改进的欧拉公式求方程y’=y- 2x/y, y(0) = 1 (0≤x≤1,h = 0.1) 的数值解,要求编写程序,并比较两种方法的计算结果,说明了什么问题?3.Rossler 微分方程组:当固定参数b=2, c=4时,试讨论随参数a 由小到大变化(如a ∈(0,0.65))而方程解的变化情况,并且画出空间曲线图形,观察空间曲线是否形成混沌状?4.Apollo 卫星的运动轨迹的绘制 应用实验 5.盐水的混合问题 一个圆柱形的容器,内装350升的均匀混合的盐水溶液。
常微分方程实验报告
常微分方程实验报告一、实验目的常微分方程是数学分析和实际应用中非常重要的一部分,本次实验的主要目的是通过实际操作和计算,深入理解常微分方程的概念、性质和求解方法,并能够将其应用到实际问题中,提高我们解决数学问题和实际应用问题的能力。
二、实验原理常微分方程是指含有一个自变量和一个未知函数及其导数的等式。
求解常微分方程的方法有很多,常见的有变量分离法、一阶线性方程的求解方法(如常数变易法)、恰当方程的求解方法(通过积分因子)等。
对于一阶常微分方程,形如\(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\)的变化。
常微分方程实验报告
常微分方程实验报告《常微分方程》综合性实验实验报告实验班级05应数(3)学生姓名江晓荣学生学号200530770314指导老师方平华南农业大学理学院应用数学系实验微分方程在数学建模中的应用及数值解的求法一、实验目的1.了解常微分方程的基本概念。
2.常微分方程的解了解析解和数值解。
3.学习、掌握MA TLAB 软件有关求解常微分方程的解析解和数值解的有关命令。
4. 掌握微分方程在数学建模中的应用。
二、实验内容1.用MA TLAB 函数dsolve 符号求解常微分方程的通解和特解。
2.用MA TLAB 软件数值求解常微分方程。
三、实验准备1.用MA TLAB 求常微分方程的解析解的命令用MA TLAB 函数dsolve 求常微分方程()(,,,,,,)0n F x y y y y y ''''''= (7.1)的通解的主要调用格式如下:S=dsolve('eqn', 'var')其中输入的量eqn 是改用符号方程表示的常微分方程(,,,2,)0F x y Dy D y Dny = ,导数用D 表示,2阶导数用D2表示,以此类推。
var 表示自变量,默认的自变量为t 。
输出量S 是常微分方程的解析通解。
如果给定常微分方程(7.1)的初始条件()00010(),(),,()n n y x a y x a y x a '=== ,则求方程(7.1)的特解的主要调用格式如下:S=dsolve('eqn', 'condition1 ',…'conditonn ','var')其中输入量eqn ,var 的含义如上,condition1,…conditonn 是初始条件。
输出量S 是常微分方程的特解。
2.常微分方程的数值解法除常系数线性微分方程可用特征根法求解、少数特殊方程可用初等积分法求解外,大部分微分方程无解析解,应用中主要依靠数值解法。
数学实验基础实验报告常微分方程
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.40740.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.6415若x 上限增为1.58,1.60,则超出运算的范围,发生溢出。
微分方程数学实验报告
j=i;
elseiff(x)*f(a)>0
a=X(i);
j=i+1;
end
end
end
b=X(j);
k=k+பைடு நூலகம்;
e=b-a;
end
if(b-a)<d
w=a
else
w=(a+b)/(p-1)
end
k
运行结果:
(输入函数形式)fx=x-0.8
(输入二分法下限)a=0
(输入二分法上限)b=1
输入误差限d=0.001
d =
1.0000e-003
输入p分法的p值,p=10
p =
10
w =
0.7999
k =
4
4、实验总结
6、教师评语及评分
0.7969
x0 =
0.8047
x0 =
0.8008
x0 =
0.7988
x0 =
0.7998
(2)P分法
symsx;fun=input('(输入函数形式)fx=');
a=input('(输入二分法下限)a=');
b=input('(输入二分法上限)b=');
d=input('输入误差限d=')%二分法求根
p=input(‘输入p分法的p值,p=’)
f=inline(fun);%修改需要求解的inline函数的函数体
X=[1:p];
e=b-a;
k=0;
whilee>d
h=(b-a)/(p-1);
fori=0:p-1
X(i+1)=a+(h*i);
微分方程数值解法实验报告
微分方程数值解法实验报告2篇微分方程数值解法实验报告(一)在实际科学与工程问题中,我们经常会遇到微分方程的求解。
然而,许多微分方程往往没有解析解,这就需要我们利用数值方法来获得近似解。
本篇实验报告将介绍两种常见的微分方程数值解法:欧拉方法和改进的欧拉方法。
一、欧拉方法欧拉方法是最简单的微分方程数值解法之一。
其基本原理为离散化微分方程,将微分方程中的导数用差商代替。
设要求解的微分方程为dy/dx = f(x, y),步长为h,则可用以下公式进行递推计算:y_{n+1} = y_n +hf(x_n, y_n)二、算法实现为了对欧拉方法进行数值实验,我们以一阶线性常微分方程为例:dy/dx = x - y, y(0) = 1步骤如下:(1)选择合适的步长h和求解区间[a, b],这里我们取h=0.1,[a, b] = [0, 1];(2)初始化y_0 = 1;(3)利用欧拉方法递推计算y_{n+1} = y_n + 0.1(x_n - y_n);(4)重复步骤(3),直到x_n = 1。
三、实验结果与讨论我们通过上述步骤得到了在[0, 1]上的近似解y(x)。
下图展示了欧拉方法求解的结果。
从图中可以看出,欧拉方法得到的近似解与精确解有一定的偏差。
这是因为欧拉方法只是通过递推计算得到的近似解,并没有考虑到更高阶的误差。
所以在需要高精度解时,欧拉方法并不理想。
四、改进的欧拉方法针对欧拉方法的不足,我们可以考虑使用改进的欧拉方法(也称为改进的欧拉-柯西方法)。
它是通过利用前后两个步长欧拉方法得到的结果作为差商的中间项,从而提高了求解精度。
一阶线性常微分方程的改进欧拉方法可以表示为:y_{n+1} = y_n + h(f(x_n, y_n) + f(x_{n+1}, y_n + hf(x_n,y_n)))/2五、算法实现与结果展示将改进的欧拉方法应用于前述的一阶线性常微分方程,我们同样选择h=0.1,[a, b] = [0, 1]。
微分方程数值解实验报告
微分方程数值解实验报告实验目的:掌握微分方程数值解的基本方法,能够利用计算机编程求解微分方程。
实验原理:微分方程是自然科学与工程技术中常见的数学模型,它描述了变量之间的关系及其随时间、空间的变化规律。
解微分方程是研究和应用微分方程的基础,但有很多微分方程无法找到解析解,只能通过数值方法进行求解。
本实验采用欧拉方法和改进的欧拉方法求解微分方程的初值问题:$$\begin{cases}\frac{dy}{dt}=f(t,y)\\y(t_0)=y_0\end{cases}$$其中,$f(t,y)$是给定的函数,$y(t_0)=y_0$是已知的初值条件。
欧拉方法是最基本的数值解法,其步骤如下:1.给定$t_0$和$y_0$2.计算$t_{i+1}=t_i+h$,其中$h$是步长3. 计算$y_{i+1}=y_i+hf(t_i,y_i)$4.重复步骤2、3直到达到终止条件改进的欧拉方法是对欧拉方法进行改进,通过利用函数$y(t)$在$t+\frac{1}{2}h$处的斜率来更准确地估计$y_{i+1}$,其步骤如下:1.给定$t_0$和$y_0$2.计算$t_{i+1}=t_i+h$,其中$h$是步长3. 计算$y_*=y_i+\frac{1}{2}hf(t_i,y_i)$4. 计算$y_{i+1}=y_i+hf(t_i+\frac{1}{2}h,y_*)$5.重复步骤2、3、4直到达到终止条件实验步骤:1.编写程序实现欧拉方法和改进的欧拉方法2.给定微分方程和初值条件3.设置步长和终止条件4.利用欧拉方法和改进的欧拉方法求解微分方程5.比较不同步长下的数值解与解析解的误差6.绘制误差-步长曲线,分析数值解的精度和收敛性实验结果:以一阶常微分方程$y'=3ty+t$为例,给定初值$y(0)=1$,取步长$h=0.1$进行数值求解。
利用欧拉方法求解微分方程得到的数值解如下:\begin{array}{cccc}t & y_{\text{exact}} & y_{\text{Euler}} & \text{误差} \\ \hline0.0&1.000&1.000&0.000\\0.1&1.035&1.030&0.005\\0.2&1.104&1.108&0.004\\0.3&1.212&1.217&0.005\\0.4&1.360&1.364&0.004\\0.5&1.554&1.559&0.005\\0.6&1.805&1.810&0.005\\0.7&2.131&2.136&0.005\\0.8&2.554&2.560&0.006\\0.9&3.102&3.107&0.006\\1.0&3.807&3.812&0.005\\\end{array}利用改进的欧拉方法求解微分方程得到的数值解如下:\begin{array}{cccc}t & y_{\text{exact}} & y_{\text{Improved Euler}} & \text{误差} \\\hline0.0&1.000&1.000&0.000\\0.1&1.035&1.035&0.000\\0.2&1.104&1.103&0.001\\0.3&1.212&1.211&0.001\\0.4&1.360&1.358&0.002\\0.5&1.554&1.552&0.002\\0.6&1.805&1.802&0.003\\0.7&2.131&2.126&0.005\\0.8&2.554&2.545&0.009\\0.9&3.102&3.086&0.015\\1.0&3.807&3.774&0.032\\\end{array}误差-步长曲线如下:实验结论:通过对比欧拉方法和改进的欧拉方法的数值解与解析解的误差,可以发现改进的欧拉方法具有更高的精度和收敛性。
实验2--微分方程(基础实验)
实验2--微分方程(基础实验)119 项目四 无穷级数与微分方程实验2 微分方程(基础实验)实验目的 理解常微分方程解的概念以及积分曲线和方向场的概念,掌握利用Mathematica 求微分方程及方程组解的常用命令和方法.基本命令1. 求微分方程的解的命令DSolve对于可以用积分方法求解的微分方程和微分方程组,可用Dsolve 命令来求其通解或特解.例如,求方程023=+'+''y y y 的通解, 输入DSolve[y ''[x]+3y '[x]+2y[x]==0,y[x],x]则输出含有两个任意常数C[1]和C[2]的通解:{}{}]2[C e ]1[C e ]x [y x x 2--+→注:在上述命令中,一阶导数符号 ' 是通过键盘上的单引号 ' 输入的,二阶导数符号 '' 要输入两个单引号,而不能输入一个双引号.又如,求解微分方程的初值问题:,10,6,03400='==+'+''==x x y y y y y输入Dsolve[{y''[x]+4 y'[x]+3y[x]==0,y[0]==6, y'[0]==10},y[x],x](*大括号把方程和初始条件放在一起*)则输出{}{}x 2x 3e 148(e ]x [y +-→-2. 求微分方程的数值解的命令NDSolve对于不可以用积分方法求解的微分方程初值问题,可以用NDSolve 命令来求其特解.例如要求方程5.0,032=+='=x y x y y的近似解)5.10(≤≤x , 输入NDSolve[{y'[x]==y[x]^2+x^3,y[0]==0.5},y[x],{x,0,1.5}](*命令中的{x,0,1.5}表示相应的区间*)则输出{{y->InterpolatingFunction[{{0.,1.5}},< >]}}注:因为NDSolve 命令得到的输出是解)(x y y =的近似值. 首先在区间[0,1.5]内插入一系 列点n x x x ,,,21Λ, 计算出在这些点上函数的近似值n y y y ,,,21Λ, 再通过插值方法得到 )(x y y =在区间上的近似解.3. 一阶微分方程的方向场一般地,我们可把一阶微分方程写为),(y x f y ='的形式,其中),(y x f 是已知函数. 上述微分方程表明:未知函数y 在点x 处的斜率等于函数120f 在点),(y x 处的函数值. 因此,可在Oxy 平面上的每一点, 作出过该点的以),(y x f 为斜率 的一条很短的直线(即是未知函数y 的切线). 这样得到的一个图形就是微分方程),(y x f y ='的方向场. 为了便于观察, 实际上只要在Oxy 平面上取适当多的点,作出在这些点的函数的 切线. 顺着斜率的走向画出符合初始条件的解,就可以得到方程),(y x f y ='的近似的积分曲 线.例如, 画出0)0(,12=-=y y dxdy 的方向场. 输入<<Graphics`PlotField`g1=PlotVectorField[{1,1-y^2},{x,-3,3},{y,-2,2}, Frame->True,ScaleFunction->(1&),ScaleFactor->0.16,HeadLength->0.01,PlotPoints->{20,25}];则输出方向场的图形(图2.1), 从图中可以观察到, 当初始条件为2/10=y 时, 这个微分方程的解介于1-和1之间, 且当x 趋向于-∞或∞时, )(x y 分别趋向于1-与1.-3-2-10123-2-1012 -3-2-10123-2-112下面求解这个微分方程, 并在同一坐标系中画出方程的解与方向场的图解. 输入sol=DSolve[{y'[x]==1-y[x]^2,y[0]==0},y[x],x];g2=Plot[sol[[1,1,2]],{x,-3,3},PlotStyle->{Hue[0.1],Thickness[0.005]}];Show[g2,g1,Axes->None,Frame->True];则输出微分方程的解xxe e x y 2211)(++-=,以及解曲线与方向场的图形(图2.2). 从图中可以看到, 微分方程的解与方向场的箭头方向相吻合.实验内容用Dsolve 命令求解微分方程例2.1 (教材 例2.1) 求微分方程 22x xe xy y -=+'的通解.输入Clear[x,y];DSolve[y '[x]+2x*y[x]==x*Exp[-x^2],y[x],x]或DSolve[D[y[x],x]+2x*y[x]==x*Exp[-x^2],y[x],x]则输出微分方程的通解:121 ⎭⎬⎫⎩⎨⎧⎭⎬⎫⎩⎨⎧+→--]1[C e x e 21]x [y 22x 2x 其中C[1]是任意常数.例2.2 (教材 例2.2) 求微分方程0=-+'x e y y x 在初始条件e y x 21==下的特解. 输入Clear[x,y];DSolve[{x*y ' [x]+y[x]-Exp[x]==0,y[1]==2 E},y[x],x]则输出所求特解:⎪⎭⎪⎬⎫⎪⎩⎪⎨⎧⎪⎭⎪⎬⎫⎪⎩⎪⎨⎧+→x e e ]x [y x 例2.3 (教材 例2.3) 求微分方程x e y y y x 2cos 52=+'-''的通解.输入DSolve[y ''[x]-2y '[x]+5y[x]==Exp[x]*Cos[2 x],y[x],x]//Simplify则输出所求通解:⎭⎬⎫⎩⎨⎧⎭⎬⎫⎩⎨⎧-++→])x 2[Sin ])1[c 4x (2]x 2[Cos ])2[c 81((e 81]x [y x 例2.4 (教材 例2.4) 求解微分方程x e x y +=''2, 并作出其积分曲线.输入g1=Table[Plot[E^x+x^3/3+c1+x*c2,{x,-5,5},DisplayFunction->Identity],{c1,-10,10,5},{c2,-5,5,5}];Show[g1,DisplayFunction->$DisplayFunction]; -4-224-40-20204060图2.3例2.5 (教材 例2.5) 求微分方程组⎪⎪⎩⎪⎪⎨⎧=--=++02y x dtdy e y x dt dx t 在初始条件0,100====t t y x 下的特解.输入122Clear[x,y,t];DSolve[{x' [t]+x[t]+2 y[t]==Exp[t], y'[t] -x[t]- y[t]==0,x[0]==1,y[0]==0},{x[t],y[t]},t]则输出所求特解:⎭⎬⎫⎩⎨⎧⎭⎬⎫⎩⎨⎧+-→→])t [Sin ]t [Cos e (21]t [y ],t [Cos ]t [x t例2.6 验证c y y x =+--)3305(15152是微分方程2)(42-='y x x y 的通解. 输入命令<<Graphics`PlotField`<<Graphics`ImplicitPlot`sol=(-5x^3-30y+3y^5)/15==C;g1=ImplicitPlot[sol/.Table[{C->n},{n,-3,3}],{x,-3,3}];g2=PlotVectorField[{1,x^2/(y^4-2)},{x,-3,3},{y,-3,3},Frame->True,ScaleFunction->(1&),ScaleFactor->0.16,HeadLength->0.01,PlotPoints->{20,25}];g=Show[g2,g1,Axes->None,Frame->True];Show[GraphicsArray[{g1,g2,g}]];则分别输出积分曲线如图 2.4(a), 微分方程的方向场如图 2.4(b). 以及在同一坐标系中画出积分曲线和方向场的图形如下图2.4 (c).-3-2-1123-2-112-3-2-10123-3-2-10123-3-2-10123-3-2-10123图2.4从图 2.4(c)中可以看出微分方程的积分曲线与方向场的箭头方向吻合, 且当∞→x 时, 无论初始条件是什么, 所有的解都趋向于一条直线方程.例2.7 (教材 例2.6) 求解微分方程,)1(122/5+=+-x x y dx dy 并作出积分曲线. 输入<<Graphics`PlotField`DSolve[y' [x]-2y[x]/(x+1)==(x+1)^(5/2),y[x],x]则输出所给积分方程的解为 ⎭⎬⎫⎩⎨⎧⎭⎬⎫⎩⎨⎧+++→]1[C )x 1()x 1(32]x [y 22/7123 下面在同一坐标系中作出这个微分方程的方向场和积分曲线(设),3,2,1,0,1,2,3---=C 输入t=Table[2(1+x)^(7/2)/3+(1+x)^2c,{c,-1,1}];g1=Plot[Evaluate[t],{x,-1,1},PlotRange->{{-1,1},{-2,2}},PlotStyle->RGBColor[1,0,0],DisplayFunction->Identity];g2=PlotVectorField[{1,-2y/(x+1)+(x+1)^(5/2)},{x,-0.999,1},{y,-4,4},Frame->True,ScaleFunction->(1&), ScaleFactor->0.16,HeadLength->0.01,PlotPoints->{20,25},DisplayFunction->Identity];Show[g1,g2,Axes->None,Frame->True,DisplayFunction->$DisplayFunction];则输出积分曲线的图形(图2.5).-0.75-0.5-0.2500.250.50.751-1.5-1-0.50.511.52图2.5例2.8 求解微分方程,2)21(22-+='-y x y xy 并作出其积分曲线.输入命令<<Graphics`PlotField`DSolve[1-2*x*y[x]*y' [x]==x^2+(y[x])^2-2,y[x],x]则得到微分方程的解为.)2(323C y x x y ++-+= 我们在33≤≤-C 时作出积分曲线, 输入命令t1=Table[(3+Sqrt[3])Sqrt[3+24x^2-4x^4-4*c*x]/(6*x),{c,-3,3}];t2=Table[(3-Sqrt[3])Sqrt[3+24x^2-4x^4-4*c*x]/(6*x),{c,-3,3}];gg1=Plot[Evaluate[t1],{x,-3,3},PlotRange->{{-3,3},{-3,3}},PlotStyle->RGBColor[1,0,0],DisplayFunction->Identity];124gg2=Plot[Evaluate[t2],{x,-3,3},PlotRange->{{-3,3},{-3,3}},PlotStyle->RGBColor[1,0,0],DisplayFunction->Identity];g1=ContourPlot[y-x^3/3-x*(-2+y^2),{x,-3,3},{y,-3,3},PlotRange->{-3,3},Contours->7,ContourShading->False,PlotPoints->50,DisplayFunction->Identity];g2=PlotVectorField[{1,(x^2+y^2-2)/(1-2*x*y)},{x,-3,3},{y,-3,3},Frame->True,ScaleFunction->(1&),ScaleFactor->0.16,HeadLength->0.01,PlotPoints->{20,25},DisplayFunction->Identity];Show[g1,g2,Axes->None,Frame->True,DisplayFunction->$DisplayFunction];Show[gg1,gg2,g2,Axes->None,Frame->True,DisplayFunction->$DisplayFunction];则输出微分方程的向量场与积分曲线, 并输出等值线的图2.6.-3-2-10123-2-10123-2-10123-2-1123图2.6用NDSolve 命令求微积分方程的近似解例2.9 (教材 例2.7) 求初值问题:1,0)1()1(2.1=='-++=x y y xy y xy 在区间[1.2,4]上的近似解并作图.输入fl=NDSolve[{(1+x*y[x])*y[x]+(1-x*y[x])*y'[x]==0,y[1.2]==1},y,{x,1.2,4}]则输出为数值近似解(插值函数)的形式:{{y->InterpolatingFunction[{{1.2,4.}},< >]}}用Plot 命令可以把它的图形画出来.不过还需要先使用强制求值命令Evalu-ate, 输入 Plot[Evaluate[y[x]/.fl],{x,1.2,4}]则输出近似解的图形(图2.7).125 1.5 2.53 3.5410203040图2.7如果要求区间[1.2,4]内某一点的函数的近似值, 例如8.1=x y ,只要输入y[1.8]/.fl则输出所求结果{3.8341}例2.10 (教材 例2.8) 求范德波尔(Van der Pel)方程5.0,0,0)1(002-='==+'-+''==x x y y y y y y在区间[0,20]上的近似解.输入 Clear[x,y];NDSolve[{y''[x]+(y[x]^2-1)*y'[x]+y[x]==0,y[0]==0,y'[0]==-0.5},y,{x,0,20}];Plot[Evaluate[y[x]/.%],{x,0,20}]可以观察到近似解的图形(图2.8).5101520-2-112图2.8126 ⎪⎩⎪⎨⎧==+-'1)1(01sin 2y x y x y x 的数值解, 并作出数值解的图形.输入命令<<Graphics`PlotField`sol=NDSolve[{x*y'[x]-x^2*y[x]*Sin[x]+1==0,y[1]==1},y[x],{x,1,4}];f[x_]=Evaluate[y[x]/.sol];g1=Plot[f[x],{x,1,4},PlotRange->All,DisplayFunction->Identity];g2=PlotVectorField[{1,(x^2*y*Sin[x]-1)/x},{x,1,4},{y,-2,9},Frame->True,ScaleFunction->(1&),ScaleFactor->0.16,HeadLength->0.01,PlotPoints->{20,25},DisplayFunction->Identity];g=Show[g1,g2,Axes->None,Frame->True];Show[GraphicsArray[{g1,g}],DisplayFunction->$DisplayFunction];则输出所给微分方程的数值解及数值解的图2.9.1.522.533.544681 1.52 2.53 3.54-22468例2.11 (教材 例2.9) 求出初值问题⎪⎩⎪⎨⎧='==+'+''0)0(,1)0(cos sin 22y y xy x y y的数值解, 并作出数值解的图形.输入NDSolve[{y''[x]+Sin[x]^2*y'[x]+y[x]==Cos[x]^2,y[0]==1,y'[0]==0},y[x],{x,0,10}]127 Plot[Evaluate[y[x]/.%],{x,0,10}];则输出所求微分方程的数值解及数值解的图形(图2.10).2468100.20.40.60.8图2.10例2.12 (教材 例2.10) 洛伦兹(Lorenz)方程组是由三个一阶微分方程组成的方程组.这三个方程看似简单, 也没有包含复杂的函数, 但它的解却很有趣和耐人寻味. 试求解洛伦兹方程组,0)0(,4)0(,12)0()(4)()()()()(45)()()()(16)(16)(⎪⎪⎩⎪⎪⎨⎧===-='-+-='-='z y x t z t y t x t z t y t x t z t x t y t x t y t x 并画出解曲线的图形.输入Clear[eq,x,y,z]eq=Sequence[x'[t]==16*y[t]-16*x[t],y'[t]==-x[t]*z[t]-y[t]+45x[t],z'[t]==x[t]*y[t]-4z[t]];sol1=NDSolve[{eq,x[0]==12,y[0]==4,z[0]==0},{x[t],y[t],z[t]},{t,0,16},MaxSteps->10000];g1=ParametricPlot3D[Evaluate[{x[t],y[t],z[t]}/.sol1],{t,0,16},PlotPoints->14400,Boxed->False,Axes->None];则输出所求数值解的图形(图2.11(a)). 从图中可以看出洛伦兹微分方程组具有一个奇异吸引子, 这个吸引子紧紧地把解的图形“吸”在一起. 有趣的是, 无论把解的曲线画得多长, 这些曲线也不相交.128图2.11改变初值为,10)0(,10)0(,6)0(=-==z y x 输入sol2=NDSolve[{eq,x[0]==6,y[0]==-10,z[0]==10}, {x[t],y[t],z[t]},{t,0,24},MaxSteps->10000];g2=ParametricPlot3D[Evaluate[{x[t],y[t],z[t]}/.sol2],{t,0,24},PlotPoints->14400,Boxed->False,Axes->None];Show[GraphicsArray[{g1,g2}]];则输出所求数值解的图形(图2.11(b)). 从图中可以看出奇异吸引子又出现了, 它把解“吸”在某个区域内, 使得所有的解好象是有规则地依某种模式缠绕.实验习题1. 求下列微分方程的通解:(1) ;0136=+'+''y y y(2) ();024=+''+y y y(3) ;2sin 52x e y y y x =+'-''(4) .)1(963x e x y y y +=+'-''2. 求下列微分方程的特解:(1) ;15,0,029400='==+'+''==x x y y y y y(2) .1,1,02sin ='==++''==ππx x y yx y y 3. 求微分方程0cos 2)1(2=-+'-x xy y x 在初始条件10==x y 下的特解.分别求精确解和数值解)10(≤≤x 并作图.4. 求微分方程组⎪⎪⎩⎪⎪⎨⎧=--=++t t e y x dt dy e y x dt dx 235的通解.129 5. 求微分方程组⎪⎪⎩⎪⎨⎧==+-==-+==4,081,0300t t y y x dt dyxy x dt dx 的特解. 6. 求欧拉方程组324x y y x y x =-'+''的通解.7. 求方程5,0,011='==+'+''==x x y y y y x y 在区间[0,4]上的近似解.。
微分方程实验报告参考模板
理学院 信息与计算科学教研室 实验报告课程名称 数学建模 实验名称 微分方程模型 实验地点 校2机房 日期 2011.4.11【实验目的】1、学会用Matlab 求简单微分方程的解析解。
2、学会用Matlab 求微分方程的数值解。
【实验要求】1、独立完成各个实验任务;2、实验的过程保存成 .m 文件,以备检查;3、完成实验报告。
【实验内容】1、求下列方程的通解。
2、设警方对司机饮酒后驾车时血液中酒精含量的规定为不超过80%(mg/ml)。
现有一起交通事故,在事故发生3个小时后,测得司机血液中酒精含量是56%(mg/ml), 又过两个小时后,测得其酒精含量降为40%(mg/ml),试判断:事故发生时,司机是否违反了酒精含量的规定?【实验步骤】(主要包含问题分析、求解过程、实验结果、结果分析等,按课程要求完成)一、第一题1、求解过程2、实验结果⎪⎩⎪⎨⎧===++15)0(,0)0(0294'22y y y dx dy dx y d二、第二题1、问题分析设在D时刻的酒精浓度为X,设t时刻的酒精浓度为X(t),在t到&t时刻内酒精浓度为X(t+&t)-X(t)-kX(t)kt;dx/dt=-kt通解:2、求解过程3、实验结果4、结果分析x(3)=c1*e^(-3k)=56x(5)=c1*e^(-5k)=40e^(2k)=7/5 k=0.17x0*e^(-3*0.17)=56 算得x0=93.2所以酒精含量超标了【实验小结】(主要包含实验心得等)因为有了前几次上机的经验,所以这次的实验没有那么盲目。
在做第一小题时,由于老师在课件上讲解过,所以我们很顺利的就完成了。
当拿到第二小题时,有了做第一题的基础,所以有了些须思路。
但是在做题的时候还是遇到了很多的问题,也包括一些小马虎的问题,例如少编写了一个分号或是括号等;在不断的编写,调试错误的过程中,最终把这两道题做了出来。
通过这次的实验,我对Matlab软件更加熟识,并学会了用Matlab求简单微分方程的解析解以及求微分方程的数值解。
数学建模作业实验2微分方程实验
数学建模作业(实验2微分方程实验)基本实验1.微分方程稳定性分析绘出下列自治系统相应的轨线,并标出随t 增加的运动方向,确定平衡点,并按稳定的、渐近稳定的、或不稳定的进行分类:,,,+1,(1)(2)(3)(4);2;2;2.dx dx dx dxx x y x dt dt dt dt dy dy dy dy y y x y dt dt dt dt ⎧⎧⎧⎧==-==-⎪⎪⎪⎪⎪⎪⎪⎪⎨⎨⎨⎨⎪⎪⎪⎪===-=-⎪⎪⎪⎪⎩⎩⎩⎩解答解:(1)由平衡点的定义可得,f (x )=x=0,f (y )=y=0,因此平衡点为(0,0),微分方程组的系数矩阵为1001A ⎡⎤=⎢⎥⎣⎦,显然其特征值为12=1=1λλ,;由根与系数的关系可得:1212()2010p q λλλλ=-+=-<==>,且24p q >,由平衡点与稳定性的各种情况可知,平衡点(0,0)是不稳定的。
自治系统相应轨线为:(2)由平衡点的定义可得,f (x)=-x=0,f (y )=2y=0,因此平衡点为(0,0),微分方程组的系数矩阵为-1002A ⎡⎤=⎢⎥⎣⎦,显然其特征值为12=-1=2λλ,;由根与系数的关系可得:121210-(2<0)p q λλλλ=-+=-<==,,平衡点(0,0)是不稳定的。
自治系统相应轨线为:(3)由平衡点的定义可得,f (x )=y=0,f (y )=-2x=0,因此平衡点为(0,0),微分方程组的系数矩阵为0120A ⎡⎤=⎢⎥-⎣⎦,显然其特征值为121.4142=4142=-1.i i λλ,;由根与系数的关系可得:12120 1.41420()p q λλλλ=-+===>,,由平衡点与稳定性的各种情况可知,平衡点(0,0)是不稳定的。
自治系统相应轨线为:(4)由平衡点的定义可得,f (x )=-x=0,f (y )=-2y=0,因此平衡点为(0,0),微分方程组的系数矩阵为-100-2A ⎡⎤=⎢⎥⎣⎦,显然其特征值为12==-12-λλ,;由根与系数的关系可得:1212()3020p q λλλλ=-+=>==>,且24p q >,由平衡点与稳定性的各种情况可知,平衡点(0,0)是稳定的。
微分方程数值解实验报告
微分方程数值解实验报告微分方程数值解实验报告一、引言微分方程是数学中一类重要的方程,广泛应用于各个科学领域。
在实际问题中,往往难以得到微分方程的解析解,因此需要借助数值方法来求解。
本实验旨在通过数值解法,探索微分方程的数值解及其应用。
二、数值解法介绍常用的微分方程数值解法有欧拉法、改进欧拉法、四阶龙格-库塔法等。
在本实验中,我们将采用改进欧拉法进行数值解的求取。
改进欧拉法是一种一阶的显式迭代法,其基本思想是将微分方程的导数用差商来近似表示,并通过迭代逼近真实解。
具体迭代公式如下:\[y_{n+1} = y_n + h \cdot f(x_n + \frac{h}{2}, y_n + \frac{h}{2} \cdot f(x_n, y_n))\]其中,\(y_n\)表示第n步的近似解,\(h\)表示步长,\(f(x_n, y_n)\)表示微分方程的导数。
三、实验步骤1. 确定微分方程及初始条件在本实验中,我们选择经典的一阶常微分方程:\[y' = -2xy\]并给定初始条件\(y(0) = 1\)。
2. 设置步长和迭代次数为了得到较为准确的数值解,我们需要合理选择步长和迭代次数。
在本实验中,我们将步长设置为0.1,迭代次数为10。
3. 迭代计算数值解根据改进欧拉法的迭代公式,我们可以通过编写计算程序来求解微分方程的数值解。
具体计算过程如下:- 初始化:设定初始条件\(y_0 = 1\),并给定步长\(h = 0.1\)。
- 迭代计算:使用改进欧拉法的迭代公式,通过循环计算得到\(y_1, y_2, ...,y_{10}\)。
- 输出结果:将计算得到的数值解输出,并进行可视化展示。
四、实验结果与分析通过以上步骤,我们得到了微分方程的数值解\(y_1, y_2, ..., y_{10}\)。
将这些数值解进行可视化展示,可以更直观地观察到解的变化趋势。
根据实验结果,我们可以发现随着迭代次数的增加,数值解逐渐逼近了真实解。
华工数学实验报告 微分方程
《数学实验》报告学院:电子信息学院专业班级:信息工程电联班学号:姓名:实验名称:微分方程实验日期:2016/04/19M 01. 实验目的了解求微分方程解析解的方法 了解求微分方程数值解的方法 了解 dsolve,ode45 指令的使用方法 2. 实验任务1.用dsolve 函数求解下列微分方程(2)()()2()(0)1,(0)0y x y x y x y y '''=+⎧⎨'==⎩2. 我辑私雷达发现,距离d 处有一走私船正以匀速a 沿直线行驶,缉私舰立即以最大速度(匀速v )追赶。
若用雷达进行跟踪,保持船的瞬时速度方向始终指向走私船,则辑私舰的运动轨迹是怎么的?是否能够追上走私船?如果能追上,需要多长时间?3. 实验过程3.1实验原理 3.1.1任务一dsolve(‘equation ’,’condition ’,’v ’)(1) equation 是方程式,condition 是条件,v 是自变量(缺省为t )(2)若不带条件,则解中带积分常数 (3)如果没有显示解,则系统尝试给出隐式解 (4)如果无隐式解,则返回空符号。
3.1.2任务二以0S 为原点建立坐标系。
设缉私船出发的起点坐标为00(x ,y ),根据题意22200x y d +=,经过时间t ,走私船到达S(at,0),缉私船到达M(x,y),追赶时,缉私船总是向走私船所在的位置追赶,设在t+dt 时刻,缉私船到达'(,)M x dx y dy ++,则M,M ’,S 三点一图2 dt 时刻追击图由图可知,0dy y dx at x-=- (1)即dxyat x dy-=- (2)此即缉私船的追辑模型。
方程(2)两边对y 求导,得22d x dt y a dy dy-= (3)又因为缉私船的速度恒为v ,因此222dy dx v dt dt ⎛⎫⎛⎫=+ ⎪ ⎪⎝⎭⎝⎭(4)即dy dt=(5)把方程(5)代入(3),并结合初始条件:00000()'()x y x x x y y =⎧⎪⎨=⎪⎩,可知,求解模型(2),即求解如下模型0000''()'()yx x y x x x y y ⎧⎪=⎪⎪=⎨⎪⎪=⎪⎩(6)其中ak v=为常数。
数学实验基础 实验报告(1)常微分方程
实验一 常微分方程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,则超出运算的范围,发生溢出。
数学的微分方程基础
数学的微分方程基础微分方程是数学中的一种重要工具,被广泛应用于各个领域,如物理学、工程学、经济学等。
它描述了自然界中许多变化过程的数学模型,并通过求解微分方程,我们可以得到这些变化的具体解析解或数值解。
本文将介绍微分方程的基础知识,包括微分方程的定义、分类、求解方法等。
一、微分方程的定义与分类微分方程是描述未知函数与其导数之间关系的方程。
一般形式为:\[F(x,y,y',y'',...,y^{(n)})=0\]其中,\[y^{(n)}\]表示未知函数y的n阶导数。
根据方程中所涉及的未知函数和导数的阶数,微分方程可以分为以下几类:1. 常微分方程:只涉及一元函数y及其有限阶导数的微分方程,如:\[y''+y=0\]2. 偏微分方程:涉及多元函数及其偏导数的微分方程,如:\[\frac{\partial^2u}{\partial x^2}+\frac{\partial^2u}{\partial y^2}=0\]3. 隐式微分方程:即在微分方程中未明确给出未知函数y,而是通过方程中的其他条件来确定未知函数y的方程,如:\[x^2+y^2=1\]二、常微分方程的解法常微分方程的求解是微分方程研究的重点之一。
根据方程的类型和特征,可以采用不同的方法求解常微分方程。
1. 变量可分离方程变量可分离方程即可将微分方程转化为两个变量的乘积对数形式。
例如,对于方程:\[\frac{dy}{dx}=x^2\]可以通过变量分离,将方程化简为:\[\frac{dy}{y}=x^2dx\]然后对方程两边同时积分,即可得到解析解。
2. 齐次方程齐次方程是具有特殊形式的常微分方程,可通过引入新的变量进行变换后,化简成可积分的方程。
例如,对于方程:\[xy' - y = x\ln x\]引入新变量u=x/y,可以得到较为简洁的形式:\[u' - \frac{u}{x} = \ln x\]再通过变量分离、两边积分的方法即可求解出u,然后通过u与x 的关系,得到y的解析解。
微分方程实验报告
微分方程实验报告实验名称:不同数值方法解常微分方程的数值精度实验目的:比较同一数值方法不同刨分数解常微分方程的数值精度,比较不同数值方法在相同刨分数下解常微分方程的数值精度,并将他们与理论数值精度相比;求出截断误差。
实验要求:1.编写程序求解微分方程000(,)()du f x u x x b dx u x u ⎧=⎪<≤⎨⎪=⎩其中f 是x 和u 的已知函数,0u 是给定初值。
2.至少用下列方法实验步骤:一. 初值问题:(),5.11,11,222≤<⎪⎩⎪⎨⎧=-='x u u xx u u 解析解:()3122334⎪⎪⎭⎫ ⎝⎛-=x x x u .二. 解:对该问题,10=u ,00=x ,mh x m =。
0125.0=h1. Euler 公式:1(,),0,1,m m m m u u hf x u m +=+=2. 梯形法公式:111[(,)(,)]/2,0,1,m m m m m m u u h f x u f x u m +++=++=3. 三阶Heun 公式:21131132(3)/4(,),(/3,/3),(2/3,2/3),0,1,m m m m m m m m u u hf k k k f x u k f x h u hk k f x h u hk m +=++==++=++=4. 四阶Runge-Kutta 公式:211234113243(22)/6(,),(/2,/2),(/2,/2),(,),0,1,m m m m m m m m m u u hf k k k k k f x u k f x h u hk k f x h u hk k f x h u hk m +=++++==++=++=++=5. 四阶Adams 外插公式:(显式)),(,4,3,24/)9375955/(3211m m m m m m m m m u x f f m f f f f h u u ==-+-+=---+6. 四阶Gear 公式:11231(4836163)/2512/25,3,4,m m m m m m u u u u u hf m +---+=-+-+=理论数值精度p=4;其中,m u 作为()m u x 的近似值(m=1,2,…)三.计算方法的数值精度 首先取步长h 进行计算,得到()u x 在b 点的近似值()h u b ,根据误差估计,得()()ph h e u b u b M h =-≈,其中p 是方法的阶。
微分方程数值解法实验报告
微分方程数值解法实验报告实验题目:数值解微分方程的实验研究引言:微分方程是描述自然现象、科学问题和工程问题中变量之间的关系的重要数学工具。
然而,大部分微分方程很难找到解析解,因此需要使用数值方法来近似求解。
本实验旨在研究数值解微分方程的方法和工具,并通过实验验证其有效性和准确性。
实验步骤:1.了解微分方程的基本概念和求解方法,包括欧拉法、改进的欧拉法和龙格-库塔法。
2. 配置实验环境,准备实验所需的工具和软件,如Python编程语言和相关数值计算库。
3.选择一种微分方程进行研究和求解,可以是一阶、二阶或更高阶的微分方程。
4.使用欧拉法、改进的欧拉法和龙格-库塔法分别求解选定的微分方程,并比较其结果的准确性和稳定性。
5.计算数值解与解析解之间的误差,并进行误差分析和讨论。
6.对比不同数值解法的性能,包括计算时间和计算精度。
7.结果展示和总结,根据实验结果对数值解方法进行评价和选取。
实验结果:以一阶线性常微分方程为例,我们选择经典的“衰减振荡”问题进行实验研究。
该问题的微分方程形式为:dy/dt = -λy其中,λ为正实数。
我们首先使用Python编程语言实现了欧拉法、改进的欧拉法和龙格-库塔法。
进一步,我们选择了λ=0.5和初始条件y(0)=1,使用这三种数值解法求解该微分方程,并比较结果的准确性。
通过对比数值解和解析解可以发现,在短时间内,欧拉法、改进的欧拉法和龙格-库塔法的结果与解析解非常接近。
但随着时间的增加,欧拉法的结果开始偏离解析解,而改进的欧拉法和龙格-库塔法仍然能够提供准确的近似解。
这是因为欧拉法采用线性逼近的方式,误差随着步长的增加而累积,而改进的欧拉法和龙格-库塔法采用更高阶的逼近方式,可以减小误差。
为了更直观地比较不同方法的性能,我们还计算了它们的计算时间。
实验结果显示,欧拉法计算时间最短,而龙格-库塔法计算时间最长。
这表明在计算时间要求较高的情况下,可以选择欧拉法作为数值解方法。
微分先行实验报告
一、实验目的1. 理解微分的概念,掌握微分的基本运算方法。
2. 通过实验加深对微分几何意义和物理意义的理解。
3. 培养学生动手操作能力和实验分析能力。
二、实验仪器1. 计算机及软件:MATLAB、Excel等。
2. 集成电路实验箱。
3. 导线、开关、电压表、电流表、电阻等实验器材。
三、实验步骤步骤一:实验准备1. 熟悉实验原理和实验步骤。
2. 准备实验所需仪器和材料。
3. 安装并启动实验软件。
步骤二:实验操作1. 微分的几何意义(1) 准备实验数据:选取一条曲线,记录其上若干点的坐标。
(2) 在曲线上选取一点,过该点作曲线的切线,测量切线斜率。
(3) 利用微分公式计算该点的微分值。
(4) 比较切线斜率和微分值,分析其关系。
2. 微分的物理意义(1) 准备实验数据:测量一段直线的长度、宽度、厚度等。
(2) 利用微分公式计算长度的微分、宽度的微分、厚度的微分。
(3) 分析微分值与实际测量值的关系。
3. 微分运算(1) 选择一个函数,利用微分公式计算其一阶导数和二阶导数。
(2) 利用MATLAB或Excel等软件绘制函数图像,观察导数的几何意义。
(3) 分析导数与原函数的关系。
步骤三:实验数据记录与分析1. 将实验过程中测量的数据记录在表格中。
2. 对实验数据进行处理和分析,得出结论。
3. 撰写实验报告,总结实验结果。
四、实验结论1. 通过实验,加深了对微分概念的理解,掌握了微分的基本运算方法。
2. 实验结果表明,微分在几何和物理学中具有广泛的应用。
3. 微分可以描述曲线的局部变化趋势,为研究曲线的性质提供了一种有效方法。
4. 微分在物理学中可以描述物体的运动规律,为研究物体的运动提供了一种有效方法。
五、反思与体会1. 本次实验让我对微分有了更深入的认识,明白了微分在数学和物理学中的重要性。
2. 在实验过程中,我学会了如何运用微分公式进行计算,提高了自己的动手操作能力。
3. 通过实验,我明白了理论与实践相结合的重要性,只有将所学知识运用到实际中,才能真正掌握知识。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验2微分方程(基础实验)项目四无穷级数与微分方程实验2 微分方程(基础实验)实验目的理解常微分方程解的概念以及积分曲线和方向场的概念,掌握利用Mathematica求微分方程及方程组解的常用命令和方法.基本命令1. 求微分方程的解的命令DSolve对于可以用积分方法求解的微分方程和微分方程组,可用Dsolve命令来求其通解或特解. 例如,求方程«Skip Record If...»的通解, 输入DSolve[y ''[x]+3y '[x]+2y[x]==0,y[x],x]则输出含有两个任意常数C[1]和C[2]的通解:«Skip Record If...»注:在上述命令中,一阶导数符号 ' 是通过键盘上的单引号 ' 输入的,二阶导数符号 '' 要输入两个单引号,而不能输入一个双引号.又如,求解微分方程的初值问题:«Skip Record If...»输入Dsolve[{y''[x]+4 y'[x]+3y[x]==0,y[0]==6, y'[0]==10},y[x],x](*大括号把方程和初始条件放在一起*)则输出«Skip Record If...»2. 求微分方程的数值解的命令NDSolve对于不可以用积分方法求解的微分方程初值问题,可以用NDSolve命令来求其特解.例如要求方程«Skip Record If...»的近似解«Skip Record If...», 输入NDSolve[{y'[x]==y[x]^2+x^3,y[0]==0.5},y[x],{x,0,1.5}](*命令中的{x,0,1.5}表示相应的区间*)则输出{{y->InterpolatingFunction[{{0.,1.5}},< >]}}注:因为NDSolve命令得到的输出是解«Skip Record If...»的近似值. 首先在区间[0,1.5]内插入一系列点«Skip Record If...», 计算出在这些点上函数的近似值«Skip Record If...», 再通过插值方法得到«Skip Record If...»在区间上的近似解.3. 一阶微分方程的方向场一般地,我们可把一阶微分方程写为«Skip Record If...»的形式,其中«Skip Record If...»是已知函数. 上述微分方程表明:未知函数«Skip Record If...»在点«Skip Record If...»处的斜率等于函数仅供学习与交流,如有侵权请联系网站删除谢谢127«Skip Record If...»在点«Skip Record If...»处的函数值. 因此,可在«Skip Record If...»平面上的每一点, 作出过该点的以«Skip Record If...»为斜率的一条很短的直线(即是未知函数«Skip Record If...»的切线). 这样得到的一个图形就是微分方程«Skip Record If...»的方向场. 为了便于观察, 实际上只要在«Skip Record If...»平面上取适当多的点,作出在这些点的函数的切线. 顺着斜率的走向画出符合初始条件的解,就可以得到方程«Skip Record If...»的近似的积分曲线.例如, 画出«Skip Record If...»的方向场.输入<<Graphics`PlotField`g1=PlotVectorField[{1,1-y^2},{x,-3,3},{y,-2,2}, Frame->True,ScaleFunction->(1&),ScaleFactor->0.16,HeadLength->0.01,PlotPoints->{20,25}];则输出方向场的图形(图2.1), 从图中可以观察到, 当初始条件为«Skip Record If...»时, 这个微分方程的解介于«Skip Record If...»和1之间, 且当x趋向于«Skip Record If...»或«Skip Record If...»时, «Skip Record If...»分别趋向于«Skip Record If...»与1.下面求解这个微分方程, 并在同一坐标系中画出方程的解与方向场的图解. 输入sol=DSolve[{y'[x]==1-y[x]^2,y[0]==0},y[x],x];g2=Plot[sol[[1,1,2]],{x,-3,3},PlotStyle->{Hue[0.1],Thickness[0.005]}];Show[g2,g1,Axes->None,Frame->True];则输出微分方程的解«Skip Record If...»,以及解曲线与方向场的图形(图2.2). 从图中可以看到, 微分方程的解与方向场的箭头方向相吻合.实验内容用Dsolve命令求解微分方程例2.1 (教材例2.1) 求微分方程 «Skip Record If...»的通解.输入Clear[x,y];DSolve[y '[x]+2x*y[x]==x*Exp[-x^2],y[x],x]或DSolve[D[y[x],x]+2x*y[x]==x*Exp[-x^2],y[x],x]则输出微分方程的通解:«Skip Record If...»仅供学习与交流,如有侵权请联系网站删除谢谢127其中C[1]是任意常数.例2.2 (教材例2.2)求微分方程«Skip Record If...»在初始条件«Skip Record If...»下的特解. 输入Clear[x,y];DSolve[{x*y ' [x]+y[x]-Exp[x]==0,y[1]==2 E},y[x],x]则输出所求特解:«Skip Record If...»例2.3 (教材例2.3) 求微分方程«Skip Record If...»的通解.输入DSolve[y ''[x]-2y '[x]+5y[x]==Exp[x]*Cos[2 x],y[x],x]//Simplify则输出所求通解:«Skip Record If...»例2.4 (教材例2.4) 求解微分方程«Skip Record If...», 并作出其积分曲线.输入g1=Table[Plot[E^x+x^3/3+c1+x*c2,{x,-5,5},DisplayFunction->Identity],{c1,-10,10,5},{c2,-5,5,5}];Show[g1,DisplayFunction->$DisplayFunction];图2.3例2.5 (教材例2.5)求微分方程组«Skip Record If...»在初始条件«Skip Record If...»下的特解.输入Clear[x,y,t];DSolve[{x' [t]+x[t]+2 y[t]==Exp[t], y'[t] -x[t]- y[t]==0,x[0]==1,y[0]==0},{x[t],y[t]},t]则输出所求特解:«Skip Record If...»例2.6 验证«Skip Record If...»是微分方程«Skip Record If...»的通解.输入命令<<Graphics`PlotField`<<Graphics`ImplicitPlot`sol=(-5x^3-30y+3y^5)/15==C;仅供学习与交流,如有侵权请联系网站删除谢谢127g1=ImplicitPlot[sol/.Table[{C->n},{n,-3,3}],{x,-3,3}];g2=PlotVectorField[{1,x^2/(y^4-2)},{x,-3,3},{y,-3,3},Frame->True,ScaleFunction->(1&),ScaleFactor->0.16,HeadLength->0.01,PlotPoints->{20,25}];g=Show[g2,g1,Axes->None,Frame->True];Show[GraphicsArray[{g1,g2,g}]];则分别输出积分曲线如图2.4(a), 微分方程的方向场如图2.4(b). 以及在同一坐标系中画出积分曲线和方向场的图形如下图2.4 (c).图2.4从图2.4(c)中可以看出微分方程的积分曲线与方向场的箭头方向吻合, 且当«Skip Record If...»时, 无论初始条件是什么, 所有的解都趋向于一条直线方程.例2.7 (教材例2.6) 求解微分方程«Skip Record If...»并作出积分曲线.输入<<Graphics`PlotField`DSolve[y' [x]-2y[x]/(x+1)==(x+1)^(5/2),y[x],x]则输出所给积分方程的解为«Skip Record If...»下面在同一坐标系中作出这个微分方程的方向场和积分曲线(设«Skip Record If...»输入t=Table[2(1+x)^(7/2)/3+(1+x)^2c,{c,-1,1}];g1=Plot[Evaluate[t],{x,-1,1},PlotRange->{{-1,1},{-2,2}},PlotStyle->RGBColor[1,0,0],DisplayFunction->Identity];g2=PlotVectorField[{1,-2y/(x+1)+(x+1)^(5/2)},{x,-0.999,1},{y,-4,4},Frame->True,ScaleFunction->(1&), ScaleFactor->0.16,HeadLength->0.01, PlotPoints->{20,25},DisplayFunction->Identity];Show[g1,g2,Axes->None,Frame->True,DisplayFunction->$DisplayFunction];则输出积分曲线的图形(图2.5).仅供学习与交流,如有侵权请联系网站删除谢谢127图2.5例2.8 求解微分方程«Skip Record If...»并作出其积分曲线.输入命令<<Graphics`PlotField`DSolve[1-2*x*y[x]*y' [x]==x^2+(y[x])^2-2,y[x],x]则得到微分方程的解为«Skip Record If...»我们在«Skip Record If...»时作出积分曲线, 输入命令t1=Table[(3+Sqrt[3])Sqrt[3+24x^2-4x^4-4*c*x]/(6*x),{c,-3,3}];t2=Table[(3-Sqrt[3])Sqrt[3+24x^2-4x^4-4*c*x]/(6*x),{c,-3,3}];gg1=Plot[Evaluate[t1],{x,-3,3},PlotRange->{{-3,3},{-3,3}},PlotStyle->RGBColor[1,0,0],DisplayFunction->Identity];gg2=Plot[Evaluate[t2],{x,-3,3},PlotRange->{{-3,3},{-3,3}},PlotStyle->RGBColor[1,0,0],DisplayFunction->Identity];g1=ContourPlot[y-x^3/3-x*(-2+y^2),{x,-3,3},{y,-3,3},PlotRange->{-3,3},Contours->7,ContourShading->False,PlotPoints->50,DisplayFunction->Identity];g2=PlotVectorField[{1,(x^2+y^2-2)/(1-2*x*y)},{x,-3,3},{y,-3,3},Frame->True,ScaleFunction->(1&),ScaleFactor->0.16,HeadLength->0.01,PlotPoints->{20,25},DisplayFunction->Identity];Show[g1,g2,Axes->None,Frame->True,DisplayFunction->$DisplayFunction];Show[gg1,gg2,g2,Axes->None,Frame->True,DisplayFunction->$DisplayFunction];则输出微分方程的向量场与积分曲线, 并输出等值线的图2.6.仅供学习与交流,如有侵权请联系网站删除谢谢127图2.6用NDSolve命令求微积分方程的近似解例2.9 (教材例2.7)求初值问题:«Skip Record If...»在区间[1.2,4]上的近似解并作图. 输入fl=NDSolve[{(1+x*y[x])*y[x]+(1-x*y[x])*y'[x]==0,y[1.2]==1},y,{x,1.2,4}] 则输出为数值近似解(插值函数)的形式:{{y->InterpolatingFunction[{{1.2,4.}},< >]}}用Plot命令可以把它的图形画出来.不过还需要先使用强制求值命令Evalu-ate, 输入 Plot[Evaluate[y[x]/.fl],{x,1.2,4}]则输出近似解的图形(图2.7).图2.7如果要求区间[1.2,4]内某一点的函数的近似值, 例如«Skip Record If...»,只要输入 y[1.8]/.fl则输出所求结果{3.8341}例2.10 (教材例2.8) 求范德波尔(Van der Pel)方程«Skip Record If...»仅供学习与交流,如有侵权请联系网站删除谢谢127在区间[0,20]上的近似解.输入Clear[x,y];NDSolve[{y''[x]+(y[x]^2-1)*y'[x]+y[x]==0,y[0]==0,y'[0]==-0.5},y,{x,0,20}];Plot[Evaluate[y[x]/.%],{x,0,20}]可以观察到近似解的图形(图2.8).图2.8«Skip Record If...»的数值解, 并作出数值解的图形.输入命令<<Graphics`PlotField`sol=NDSolve[{x*y'[x]-x^2*y[x]*Sin[x]+1==0,y[1]==1},y[x],{x,1,4}];f[x_]=Evaluate[y[x]/.sol];g1=Plot[f[x],{x,1,4},PlotRange->All,DisplayFunction->Identity];g2=PlotVectorField[{1,(x^2*y*Sin[x]-1)/x},{x,1,4},{y,-2,9},Frame->True,ScaleFunction->(1&),ScaleFactor->0.16,HeadLength->0.01,PlotPoints->{20,25},DisplayFunction->Identity];g=Show[g1,g2,Axes->None,Frame->True];Show[GraphicsArray[{g1,g}],DisplayFunction->$DisplayFunction];则输出所给微分方程的数值解及数值解的图2.9.仅供学习与交流,如有侵权请联系网站删除谢谢127例2.11 (教材例2.9) 求出初值问题«Skip Record If...»的数值解, 并作出数值解的图形.输入NDSolve[{y''[x]+Sin[x]^2*y'[x]+y[x]==Cos[x]^2,y[0]==1,y'[0]==0},y[x],{x,0,10}]Plot[Evaluate[y[x]/.%],{x,0,10}];则输出所求微分方程的数值解及数值解的图形(图2.10).图2.10例2.12 (教材例2.10) 洛伦兹(Lorenz)方程组是由三个一阶微分方程组成的方程组.这三个方程看似简单, 也没有包含复杂的函数, 但它的解却很有趣和耐人寻味. 试求解洛伦兹方程组«Skip Record If...»并画出解曲线的图形.输入Clear[eq,x,y,z]仅供学习与交流,如有侵权请联系网站删除谢谢127eq=Sequence[x'[t]==16*y[t]-16*x[t],y'[t]==-x[t]*z[t]-y[t]+45x[t],z'[t]==x[t]*y[t]-4z[t]];sol1=NDSolve[{eq,x[0]==12,y[0]==4,z[0]==0},{x[t],y[t],z[t]},{t,0,16},MaxSteps->10000];g1=ParametricPlot3D[Evaluate[{x[t],y[t],z[t]}/.sol1],{t,0,16},PlotPoints->14400,Boxed->False,Axes->None];则输出所求数值解的图形(图2.11(a)). 从图中可以看出洛伦兹微分方程组具有一个奇异吸引子, 这个吸引子紧紧地把解的图形“吸”在一起. 有趣的是, 无论把解的曲线画得多长, 这些曲线也不相交.改变初值为«Skip Record If...»输入sol2=NDSolve[{eq,x[0]==6,y[0]==-10,z[0]==10},{x[t],y[t],z[t]},{t,0,24},MaxSteps->10000];g2=ParametricPlot3D[Evaluate[{x[t],y[t],z[t]}/.sol2],{t,0,24},PlotPoints->14400,Boxed->False,Axes->None];Show[GraphicsArray[{g1,g2}]];则输出所求数值解的图形(图2.11(b)). 从图中可以看出奇异吸引子又出现了, 它把解“吸”在某个区域内, 使得所有的解好象是有规则地依某种模式缠绕.实验习题1. 求下列微分方程的通解:(1) «Skip Record If...»(2) «Skip Record If...»(3) «Skip Record If...»(4) «Skip Record If...»2. 求下列微分方程的特解:仅供学习与交流,如有侵权请联系网站删除谢谢127精品好文档,推荐学习交流(1) «Skip Record If...»(2) «Skip Record If...»3. 求微分方程«Skip Record If...»在初始条件«Skip Record If...»下的特解.分别求精确解和数值解«Skip Record If...»并作图.4. 求微分方程组«Skip Record If...»的通解.5. 求微分方程组«Skip Record If...»的特解.6. 求欧拉方程组«Skip Record If...»的通解.7. 求方程«Skip Record If...»在区间[0,4]上的近似解.仅供学习与交流,如有侵权请联系网站删除谢谢127。