資源描述:
《偏微分中心差分格式實驗報告(含matlab程序)》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在教育資源-天天文庫。
1、二階常微分方程的中心差分求解學校:中國石油大學(華東)理學院姓名:張道德一、實驗目的1、構造二階常微分邊值問題:其中為上的連續(xù)函數(shù),為給定常數(shù)的中心差分格式;2、根據(jù)中心差分格式求解出特定例題的數(shù)值解,并與該例題的精確解進行比較。二、中心差分格式的構造將區(qū)間分成等分,分點為:。于是我們得到區(qū)間的一個網(wǎng)絡剖分。稱為網(wǎng)格的節(jié)點稱為步長。得中心差分格式為:其中式中。三、差分格式求解根據(jù)中心差分格式可以構造出:可以看出系數(shù)矩陣為三對角矩陣,而對于系數(shù)矩陣為三對角矩陣的方程組可以用“追趕法”求解,則可以得出二階常微分方程問題的數(shù)值解。一、舉例求解我們選取的二階常微
2、分方程邊值問題為:其精確解為:。則我們具體求解出的解如下:1、當時,數(shù)值解與精確解為:(1)表1、時,數(shù)值解與精確解統(tǒng)計表x的值0.10.20.30.40.5u的數(shù)值解1.0110691.0427441.0969041.1768961.28789u的精確解1.010051.0408111.0941741.1735111.284025兩者之差0.0010190.0019340.0027290.0033850.003864x的值0.60.70.80.9u的數(shù)值解1.4374431.6363631.9000012.250209u的精確解1.4333291.63
3、23161.8964812.247908兩者之差0.0041140.0040460.003520.002301將兩者繪于同一圖中如下:(2)結論:可以看出數(shù)值解與精確解之間的誤差很小,在這樣一個數(shù)量級上。我們也可以求出的范數(shù)來,如下:Norm1()=0.0269;Norm2()=0.0095;Normoo()=0.0041;所以,可以得出中心差分格式求解該方程效果挺好。2、當時,將數(shù)值解與精確解繪于同一圖像中,如下:(2)結論:可以看出數(shù)值解與精確解之間的誤差很小,在這樣一個數(shù)量級上。我們也可以求出的范數(shù)來,如下:Norm1()=0.0027;Norm2
4、()=;Normoo()=;所以,可以得出中心差分格式求解該方程效果挺好。一、程序程序1%**************************************************************%f221.mfunction[q,f]=f211(x)%q函數(shù),f函數(shù)q=4*x^2;f=-2*exp(x^2);%***************************************************************程序2%***********************************************
5、*********************%追趕法function[x]=zhuiganfa(a,b,c,d)%對角線下方的元素,個數(shù)比A少一個%%對角線元素%對角線上方的元素,個數(shù)比A少一個%d為方程常數(shù)項%用追趕法解三對角矩陣方程r=size(a);m=r(2);r=size(b);n=r(2);ifsize(a)~=size(c)
6、m~=n-1
7、size(b)~=size(d)error('變量不匹配,檢查變量輸入情況!');end%%%LU分解u(1)=b(1);fori=2:nl(i-1)=a(i-1)/u(i-1);u(i)=b(i)-l(i
8、-1)*c(i-1);v(i-1)=(b(i)-u(i))/l(i-1);end%追趕法實現(xiàn)%%%求解Ly=d,"追"的過程y(1)=d(1);fori=2:ny(i)=d(i)-l(i-1)*y(i-1);end%%%求解Ux=y,"趕"的過程x(n)=y(n)/u(n);fori=n-1:-1:1x(i)=y(i)/u(i);x(i)=(y(i)-c(i)*x(i+1))/u(i);end%********************************************************************程序3%*********
9、************************************************************%ODE2.mfunction[x]=ODE2(x0,xN,u0,uN,N)%中心差分求解%x0,xN初始條件%u0,uN邊值條件%N等分數(shù)%步長h=1/N;%%a(1:N-2)=-1/h^2;%對角線下方的元素,個數(shù)比A少一個fori=1:N-1z(i)=x0+i*h;[q,f]=f211(z(i));b(i)=2/h^2+q;%對角線元素d(i)=f;end%對對角線元素進行調(diào)整d(1)=d(1)+u0/h^2;d(N-1)=d(N
10、-1)+uN/h^2;%%[x]=zhuiganfa(a,b,a,d);%數(shù)值解