logo资料库

数值分析实验报告+matlab程序.doc

第1页 / 共4页
第2页 / 共4页
第3页 / 共4页
第4页 / 共4页
资料共4页,全文预览结束
《数值分析》课程设计实验报告 龙格—库塔法分析 Lorenz 方程 200820302033 胡涛 一、问题叙述 考虑著名的 Lorenz 方程         dx dt dy dt dz dt  ( s y  x )  rx   y xz  xy bz  其中 s,r,b 为变化区域内有一定限制的实参数,该方程形式简单,表面上看并无惊人之处, 但由该方程揭示出的许多现象,促使“混沌”成为数学研究的崭新领域,在实际应用中也产 生了巨大的影响。 二、问题分析 Lorenz 方程实际上是一个四元一阶常微分方程,用解析法精确求解是不可能的,只能 用数值计算,最主要的有欧拉法、亚当法和龙格- 库塔法等。为了得到较高精度的,我们采 用经典四阶龙格—库塔方法求解该问题。 三、实验程序及注释 (1)算法程序 function [T]=Runge_Kutta(f,x0,y0,h,n) if nargin<5 n=100; end r=size(y0);r=r(1); s=size(x0);s=s(1); r=r+s; T=zeros(r,n+1); T(:,1)=[y0;x0]; for t=2:n+1 %定义算法,其中 f 为待解方程组, x0 是初始自变量,y0 是初始函数 值,h 是步长,n 为步数 %如果输入参数个数小于 5,则步数 n=100 %返回初始输出矩阵的行列数,并将 值赋给 r(1) %返回初始输入矩阵的行列数,并 将值赋给 s(1) %以下是具体的求解过程 k1=feval(f,T(1:r-1,t-1)); k2=feval(f,[k1*(h/2)+T(1:r-1,t-1);x0+h/2]); k3=feval(f,[k2*(h/2)+T(1:r-1,t-1);x0+h/2]); k4=feval(f,[k3*h+T(1:r-1,t-1);x0+h]); x0=x0+h; T(:,t)=[T(1:r-1,t-1)+(k1+k2*2+k3*2+k4)*(h/6);x0]; end
(2)主程序 function dy=fun(x) s=10.0; r=28.0; b=8.0/3; dy(1)=s*(x(2)-x(1)); dy(2)=(r*x(1)-x(3)*x(1)-x(2)); dy(3)=x(1)*x(2)-b*x(3); dy=dy'; (2)运行程序 %定义函数 %给参数 s,r,b 赋值 %Lorenz 方程表达式 T=Runge_Kutta('fun',0,[10;10;10],0.01,5000); plot3(T(1,:),T(2,:),T(3,:)); axis([-20 20 -50 50 0 50]) view(3) %调用前面的算法程序 %显示三分量的关系图 %定义坐标轴长度 %设定观察角度 四、实验数据结果及分析 (1)各初始变量相同时的图像分析 各初始变量取相同的值[10,10,10],运行上述程序后,得到如下图像: 从图中可以看出,各初始变量相同时,曲线总是被吸引回奇怪吸引子附近作来回跳跃。 初始变量值取为[-10,-10,-10] ,[20,20,20]时,依然如此。图像如下: [-10,-10,-10] [20,20,20]
(2)初始值的每个分量变化对图像的影响 y 分量: [0,2,0] [0,5,0] [0,15,0] [0,20,0] 从上面可以看出,随着初始 y 值的增大,奇怪吸引子中曲线在其附近来回跳跃的两个位 置中的一个吸引力变弱,另一个吸引力变强。初始 y 继续增大到某一特定值,情况又会变回 来。这说明在空间存在一些区域,当初始位置位于这些区域外时解将出现奇怪吸引子的性质, 而在这些区域以内解将呈现普通吸引子的性质。 z 分量:[0,0,20] 从上图可以看出解的曲线为一直线,这可以从方程的角度来解释。当 x=0,y=0 时在方程 中 dx/dt=0,dy/dt=0,x,y 方向的值不发生变化,仅 z 方向的值变化,因此解为一直线。 (3)调整参数 r、s、b 对图像的影响 为便于分析,我们只调整 r、s、b 三个参数中的任意一个。当只调整 b 且将初始变量取 为[0,eps,0]。具体情况如下:
s=10.0,r=28.0,b=8.0/3 s=10.0,r=28.0,b=9.6/3 s=10.0,r=28.0,b=11.0/3 s=10.0,r=28.0,b=15.0/3 增大 b 值时,Lorenz 曲线在其附近来回跳跃的两个位置会一个加强,一个减弱。当 b 达到某一值时,个位置丧失吸引力,另一位置则将曲线完全吸引过来变成普通吸引子。改变 s 和 r 的值也有类似的现象。 五、实验结论 本实验利用龙格—库塔法对 Lorenz 方程进行了分析,从实验中我们得出,Lorenz 方程 的解对初始变量和参数 r、s、b 具有很强的敏感性。
分享到:
收藏