數值分析實驗報告

2021-03-04 01:01:44 字數 2252 閱讀 5740

《數值分析》課程設計實驗報告模板

常微分方程資料值解:用龍格—庫塔法分析lorenz方程的特性

一、考慮著名的lorenz方程

其中s,r,b為變化區域內有一定限制的實引數,該方程形式簡單,表面上看並無驚人之處,但由該方程揭示出的許多現象,促使「混沌」成為數學研究的嶄新領域,在實際應用中產生了巨大的影響。

二、 問題分析

lorenz方程實際上是乙個四元一階常微分方程,用解析法精確求解是不可能的,只能用數值計算,最主要的有尤拉法、亞當法和龍格- 庫塔法等。為了得到較高精度的數值解,本實驗要求採用經典四階龍格—庫塔方法求解該問題。

三、 實驗程式及注釋

(1)演算法程式

function [t]=runge_kutta(f,x0,y0,h,n) %定義演算法,其中f為待解方程組,x0是初始自變數,y0是初始函式值,h是步長,n為步數

if nargin<5

n=100如果輸入引數個數小於5,則步數n=100

endr=size(y0);r=r(1返回初始輸出矩陣的行列數,並將值賦給r(1)

s=size(x0);s=s(1返回初始輸入矩陣的行列數,並將值賦給s(1)

r=r+s;

t=zeros(r,n+1

t(:,1)=[y0;x0

for t=2:n+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給引數s,r,b賦值

r=28.0;

b=8.0/3;

dy(1)=s*(x(2)-x(1lorenz方程表示式

dy(2)=(r*x(1)-x(3)*x(1)-x(2));

dy(3)=x(1)*x(2)-b*x(3);

dy=dy';

(2)執行程式

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,-1020,20,20]

(2)初始值的每個分量變化對影象的影響

y分量:

[0,2,00,5,0]

[0,15,00,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/3s=10.0,r=28.0,b=9.6/3

s=10.0,r=28.0,b=11.0/3s=10.0,r=28.0,b=15.0/3

增大b值時,lorenz曲線在其附近來回跳躍的兩個位置會乙個加強,乙個減弱。當b達到某一值時,個位置喪失吸引力,另一位置則將曲線完全吸引過來變成普通吸引子。改變s和r的值也有類似的現象。

五、 實驗結論

本實驗利用龍格—庫塔法對lorenz方程進行了分析,從實驗中我們得出,lorenz方程的解對初始變數和引數r、s、b具有很強的敏感性。

數值分析實驗報告

實驗一題目一 已知函式表如下 試用三次lagrange插值多項式求x 0.5635時的函式值。解 lagrange插值法公式 程式框圖如下 本題中n 4 分析設計思想 設計思路如上面的流程圖所示,用我們學過的c語言程式設計實現。程式清單 include include include float l...

數值分析實驗報告

實驗專案 a 列主元高斯消去法 b 矩陣直接三角分解法 c 雅可比迭代法 d 高斯 賽德爾迭代法 e sor迭代法 f 冪法求最大特徵值 實驗名稱 列主元高斯消去法 實驗目的 熟悉了解高斯消去法的原理,並知道如何用高斯消去法求方程組的解 實驗所用的軟體 win tc 版本 1.9.0.0 例項用高斯...

數值分析實驗報告

課題一 解線性方程組的直接方法 1.實驗目的 1 通過該課題的實驗,體會模組化結構程式設計方法的優點 2 運用所學的計算方法,解決各類線性方程組的直接演算法 3 提高分析和解決問題的能力,做到學以致用 4 通過三對角形線性方程組的解法,體會稀疏線性方程組解法的特點。2.實驗過程 實驗 include...