數(shù)值分析之帶初值的常微分方程數(shù)值解法(二)

【實(shí)驗(yàn)原理】

一、改進(jìn)的歐拉法(預(yù)報(bào)校正)

1)預(yù)報(bào)校正法基本思路

改進(jìn)歐拉法先用歐拉法求出預(yù)報(bào)值,再利用梯形公式求出校正值,局部截?cái)嗾`差比歐拉法低了一階,可以較大程度地提高計(jì)算精度。

2)預(yù)報(bào)校正法算法描述

二、四階規(guī)范龍格-庫(kù)塔公式

【實(shí)驗(yàn)內(nèi)容】

一、回答下面的問題

1.什么是常微分方程的解析解和數(shù)值解?

2.歐拉左矩形公式和右矩形公式是什么,有什么區(qū)別。

3.解函數(shù)y(x)的光滑性表現(xiàn)在什么地方,解函數(shù)y(x)“變化劇烈”如何體現(xiàn),請(qǐng)舉例說明。

4.寫出一個(gè)二階龍格-庫(kù)塔公式、四階標(biāo)準(zhǔn)龍格-庫(kù)塔公式

二、編程計(jì)算課后習(xí)題中規(guī)定題目,交回實(shí)驗(yàn)報(bào)告與計(jì)算

實(shí)驗(yàn)代碼

%定義函數(shù)
function z=f1(x,y)
%UNTITLED3 Summary of this function goes here
%   Detailed explanation goes here
z=1/(x^2)-y/x;
end
%改進(jìn)歐拉法
clear;clc;
h=0.05; 
x=1:h:2; %定義函數(shù)范圍
y(1)=1; %初值

for i=1:20 
    yp=y(i)+h*f1(x(i),y(i));%改進(jìn)(迭代)公式
    yc=y(i)+h*f1(x(i+1),yp);
    y(i+1)=(yp+yc)/2;%校正值
end 

%-----------輸出--------------------
disp('i=0...10的值為:'); 
for i=1:2:21 
    fprintf('%f\n',y(i)) 
end
%-----------輸出--------------------
%四階RK 
clear all
a=1;b=2;h=0.1;%邊界及步長(zhǎng)
x0=a;y0=1;%初值
 n=(b-a)/h;
N=[0:1:n]';
x=zeros(n+1,1);
y=zeros(n,1);%用矩陣存儲(chǔ)
x(1)=x0;y(1)=y0;
 for i=1:n
    x(i+1)=x(i)+h;
end
%----------------四階RK--------------------
for i=1:n
    k1=h*f1(x(i),y(i));
    k2=h*f1(x(i)+h/2,y(i)+k1/2);
    k3=h*f1(x(i)+h/2,y(i)+k2/2);
    k4=h*f1(x(i)+h,y(i)+k3);
    y(i+1)=y(i)+(k1+2*k2+2*k3+k4)/6;
end
%----------------四階RK--------------------
[N,x,y]%輸出

實(shí)驗(yàn)結(jié)果

運(yùn)行結(jié)果

實(shí)驗(yàn)代碼(僅改動(dòng)部分)

%--------------------函數(shù)定義-------------------
function z=f1(x,y)
%UNTITLED3 Summary of this function goes here
%   Detailed explanation goes here
z=-50*y+50*x^2+2*x;
end
%--------------------函數(shù)定義-------------------

a=0;b=1;h=0.1; %邊界及步長(zhǎng)
x0=a;y0=1/3; %初值
T=[N,x,y] %輸出解
dy=y-(1/3*exp(-50*x)+x.^2) %輸出與精確解的誤差

實(shí)驗(yàn)結(jié)果過多,此處略去


相關(guān)文章:
MATLAB數(shù)值分析之?dāng)?shù)值積分(一)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容