數(shù)值分析上機(jī)題C+程序_第1頁
數(shù)值分析上機(jī)題C+程序_第2頁
數(shù)值分析上機(jī)題C+程序_第3頁
數(shù)值分析上機(jī)題C+程序_第4頁
數(shù)值分析上機(jī)題C+程序_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、數(shù)值分析上機(jī)題姓名:陳作添 學(xué)號:040816習(xí)題120(上機(jī)題)舍入誤差與有效數(shù)設(shè),其精確值為。(1)編制按從大到小的順序,計(jì)算的通用程序。(2)編制按從小到大的順序,計(jì)算的通用程序。(3)按兩種順序分別計(jì)算,并指出有效位數(shù)。(編制程序時(shí)用單精度)(4)通過本上機(jī)題,你明白了什么?第 6 頁 共 16 頁按從大到小的順序計(jì)算的通用程序?yàn)椋?includefloat sum(float N)float j,s,sum=0;for(j=2;j=N;j+) s=1/(j*j-1);sum+=s;return sum; 按從小到大的順序計(jì)算的通用程序?yàn)椋?includefloat sum(float

2、 N)float j,s,sum=0;for(j=N;j=2;j-)s=1/(j*j-1);sum+=s;return sum;從大到小的順序的值從小到大的順序的值精確值有效位數(shù)從大到小從小到大0.7400490.740050.740049650.7498520.74990.7499440.7498520.7499990.74999936通過本上機(jī)題,看出按兩種不同的順序計(jì)算的結(jié)果是不相同的,按從大到小的順序計(jì)算的值與精確值有較大的誤差,而按從小到大的順序計(jì)算的值與精確值吻合。從大到小的順序計(jì)算得到的結(jié)果的有效位數(shù)少。計(jì)算機(jī)在進(jìn)行數(shù)值計(jì)算時(shí)會出現(xiàn)“大數(shù)吃小數(shù)”的現(xiàn)象,導(dǎo)致計(jì)算結(jié)果的精度有所降低

3、,我們在計(jì)算機(jī)中進(jìn)行同號數(shù)的加法時(shí),采用絕對值較小者先加的算法,其結(jié)果的相對誤差較小。習(xí)題220(上機(jī)題)Newton迭代法(1)給定初值及容許誤差,編制Newton法解方程根的通用程序。(2)給定方程,易知其有三個(gè)根,。1由Newton方法的局部收斂性可知存在,當(dāng)時(shí),Newton迭代序列收斂于根。試確定盡可能大的。2試取若干初始值,觀察當(dāng),時(shí)Newton序列是否收斂以及收斂于哪一個(gè)根。(3)通過本上機(jī)題,你明白了什么?解:(1)編制的通用程序:#include#include#define eps 0.000001 /給定容許誤差float f(float x) /定義函數(shù)f(x)float

4、 f;f=x*x*x/3-x; /f(x)的表達(dá)式;return(f);float df(float x) /定義函數(shù)df(x),計(jì)算f(x)的導(dǎo)函數(shù)float df;df=x*x-1; /f(x)導(dǎo)函數(shù)的表達(dá)式;return (df);void main(void)float x0,x1,a;int k=0;coutx0;doa=-f(x0)/df(x0);x1=x0+a;k+;x0=x1;while(fabs(a)eps);coutktx0; /輸出迭代的次數(shù)和根值(2)計(jì)算迭代序列收斂于根的盡可能大的的函數(shù)為:#include#includevoid delay(int n) /定義延時(shí)

5、函數(shù)for(n=10000;n0;n-);#define eps 0.000001float f(float x) /定義函數(shù)f(x)float f;f=x*x*x/3-x; /f(x)的表達(dá)式;return(f);float df(float x) /定義函數(shù)df(x),計(jì)算f(x)的導(dǎo)函數(shù)float df;df=x*x-1; /f(x)導(dǎo)函數(shù)的表達(dá)式;return (df);int judgement(float z)int count=5;float x0,x1,type,type1;x0=z;while(count-0) x1=x0-f(x0)/df(x0);type=fabs(x1)

6、; type1=fabs(x1-x0); /調(diào)試值用coutcount=countttype=typettype1=type1n;if(fabs(x1-x0)eps)return 1;x0=x1;delay(30000); /調(diào)試值用 return 0; void main(void)float delta=0;int flag=1;while(flag=1)cout方程的根為:n;delta+=eps;flag=judgement(delta);cout輸出方程根收斂的區(qū)間值:n;coutdelta-eps; /輸出收斂的區(qū)間值當(dāng)步長為0.001時(shí),程序計(jì)算出的的為=0.774,即在區(qū)間(-

7、0.774,0.774)內(nèi)迭代序列收斂于0。對于不同得初始值收斂于不同的根, 在(-,-1)內(nèi)收斂于,在(-0.774,0.774)內(nèi)收斂于,在(1,+)內(nèi)收斂于,但在內(nèi)(0.774,1)和(1,0.774)均可能收斂于和。,分別為方程的精確解。分析:對于不同的初值,迭代序列會收斂于不同的根,所以在某個(gè)區(qū)間內(nèi)求根對于初值的選取有很大的關(guān)系。產(chǎn)生上述結(jié)果的原因是區(qū)間不滿足大范圍收斂的條件。習(xí)題335(上機(jī)題)列主元三角分解法對于某電路的分析,歸結(jié)為求解線性方程組RI=V。(1)編制解n階線性方程組Ax=b的列主元三角分解法的通用程序;(2)用所編制的程序解線性方程組RI=V,并打印出解向量,保留

8、五位有效數(shù);(3)本編程之中,你提高了哪些編程能力?程序?yàn)椋?include#includevoid main(void)int i,j,n,k,q;float a1011,s10,s110;coutn;cout輸入數(shù)組a:endl;for(i=1;i=n;i+)for(j=1;jaij; /給矩陣a賦值for(i=1;i=n;i+)for(j=1;j=(n+1);j+)coutaijt;coutn; /輸出數(shù)組acoutn;/進(jìn)行第一行和第一列元素的求取/int t=1;for(i=1;i=n;i+)si=ai1;float max=fabs(s1);for(i=2;imax)max=fab

9、s(si);t=i;for(j=1;j=(n+1);j+)float b=a1j;a1j=atj;atj=b; /進(jìn)行第一列主元互換for(i=2;i=n;i+)ai1=ai1/max; /第一列除以a11for(i=1;i=n;i+)for(j=1;j=(n+1);j+)coutaijt;coutn;/輸出進(jìn)行第一步變換的數(shù)組acoutn;/進(jìn)行第k步分解/for(k=2;k=n;k+)for(i=k;i=n;i+)float sum=0;for(q=1;qk;q+)sum+=aiq*aqk;s1i=aik-sum;int l=k;float m=fabs(s1k);for(i=k;im)m

10、=fabs(s1i);l=i; /返回行值for(j=1;j=n+1;j+) /交換兩行元素float s2=akj;akj=alj;alj=s2;for(j=k;j=n+1;j+)/算出第k行行元素的值float sum1=0;for(q=1;qk;q+)sum1+=akq*aqj;akj=akj-sum1;for(i=k+1;i=n;i+)/算出第k列列元素的值float sum2=0;for(q=1;qk;q+)sum2+=aiq*aqk;aik=(aik-sum2)/(akk); /第k步分解結(jié)束for(i=1;i=n;i+)for(j=1;j=(n+1);j+)coutaijt;co

11、ut=1;i-)xn=ann+1/ann;float sum3=0;for(j=i+1;j=n;j+)sum3+=aij*xj;xi=(ain+1-sum3)/aii; /回代過程for(i=1;i=n;i+)coutxi=xiendl; /輸出解向量結(jié)果:方程的解為:x1= -0.28923,x2= 0.34544,x3= -0.71281,x4= -0.22061,x5= -0.43040,x6= 0.15431,x7= -0.057823,x8= 0.20105,x9= 0.29023。分析:我感覺是提高了查錯(cuò)誤點(diǎn)的能力和編循環(huán)語句的能力,即利用很規(guī)整的迭代公式進(jìn)行編程。另外列主元三角分

12、解法的階梯步驟有了更深的了解!36逐次超松弛迭代法(1)編制解n階線性方程組Ax=b的SOR方法的通用程序(要求);(2)對于35題中所給的線性方程組,取松弛因子,容許誤差,打印松弛因子、迭代次數(shù)、最佳松弛因子及解向量。程序?yàn)椋?include#include#define eps 0.5e-5 /迭代誤差void main(void)int i,j,l;float w,t;float m9;float sum;float a99=31,-13,0,0,0,-10,0,0,0,-13,35,-9,0,-11,0,0,0,0,0,-9,31,-10,0,0,0,0,0,0,0,-10,79,-3

13、0,0,0,0,-9,0,0,0,-30,57,-7,0,-5,0,0,0,0,0,-7,47,-30,0,0,0,0,0,0,0,-30,41,0,0,0,0,0,0,-5,0,0,27,-2,0,0,0,-9,0,0,0,-2,29;float b9=-15,27,-23,0,-20,12,-7,7,10;float max(float m9);for(t=1;t=99;t+)l=0;float x09=1,1,1,1,1,1,1,1,1;float x19=1,1,1,1,1,1,1,1,1;w=t/50;dofor(i=0;i9;i+)x0i=x1i;for(i=0;i9;i+)sum

14、=0;for(j=0;ji;j+)sum=sum+aij*x1j;for(j=i+1;j9;j+)sum=sum+aij*x0j;x1i=(1-w)*x0i+w*(bi-sum)/aii; /解出九個(gè)解for(i=0;i=eps);if(max(m)=eps)cout迭代次數(shù)=ltw=wn;for(i=0;i9;i+)coutx1i=x1it;cout-n;float max(float m9) /求出最大的迭代誤差float k;k=(fabs(m0);for(int i=1;ik)k=fabs(mi);return k;結(jié)果為: 迭代次數(shù) 迭代次數(shù) 迭代次數(shù) 迭代次數(shù)0.02 12910.

15、04 7000.06 4860.08 3730.10 3030.12 2550.14 2210.16 1940.18 1730.20 1560.22 1420.24 1300.26 1200.28 1110.30 1030.32 960.34 900.36 850.38 800.40 750.42 710.44 680.46 640.48 610.50 580.52 550.54 530.56 510.58 480.60 460.62 440.64 420.66 410.68 390.70 370.72 360.74 340.76 330.78 320.80 300.82 290.84 280

16、.86 270.88 260.90 250.92 240.94 230.96 220.98 211.00 201.02 191.04 181.06 171.08 161.10 151.12 151.14 141.16 121.18 101.20 111.22 121.24 121.26 131.28 131.30 141.32 151.34 151.36 161.38 171.40 181.42 191.44 191.46 201.48 211.50 221.52 241.54 251.56 271.58 301.60 311.62 341.64 361.66 391.68 441.70 49

17、1.72 551.74 601.76 711.78 811.80 971.82 1211.84 1571.86 2281.88 3981.90 15821.92 54271.94 21781.96 13741.98 1009 從1.92到2.00均出現(xiàn)不合理的迭代次數(shù),迭代次數(shù)偏大。不是合理的迭代值。當(dāng)初值為x=(1,1,1,1,1,1,1,1,1,)T 時(shí),從上表可以看出,最佳松弛因子為=1.18,迭代次數(shù)僅為10次,方程的解為: x1= -0.289231,x2= 0.345437,x3= -0.712811, x4= -0.220608,x5= -0.430400,x6= 0.15430

18、9,x7= -0.057823,x8= 0.201054,x9= 0.290229。數(shù) 值 分 析 上 機(jī) 題姓名:戴載星 學(xué)號:040139習(xí)題 438.(上機(jī)題)3次樣條插值函數(shù)(1)編制求第一型3次樣條插值函數(shù)的通用程序; (2) 已知汽車曲線型值點(diǎn)的數(shù)據(jù)如下:0123456789102.513.304.044.705.225.545.785.405.575.705.80端點(diǎn)條件為=0.8,=0.2。用所編制程序求車門的3次樣條插值函數(shù)S(x),并打印出S(i+0.5)(i=0,1,9)。解:通用程序:第 8 頁 共 16 頁#includevoid main(void)float x1

19、1;/存放數(shù)組xjfloat y11;/存放數(shù)組yjfloat h11;/存放數(shù)組hjfloat u11;/存放數(shù)組ujfloat v11;/存放數(shù)組vjfloat d11;/存放數(shù)組djfloat M11;/存放數(shù)組Mjfloat b11;/ 存放數(shù)組bjfloat t11,l11,yy11,s4,aa1,aa2,aa3,aa4;float s110;int i,j,n;float xx;/x為區(qū)間值/將初值初始化coutn;cout輸入數(shù)組x:n;for(i=0;ixi;cout輸入數(shù)組y:n;for(i=0;iyi;/輸入端點(diǎn)值float df2;cout輸入兩個(gè)端點(diǎn)值:n;for(i=

20、0;idfi;/利用書本上的算法求出所需要的值/求出hj的值for(j=0;j=n-1;j+)hj=xj+1-xj;couthj=hjt;coutendl;/求出uj和vj的初值v0=1;un=1;for(j=1;j=n-1;j+)uj=hj-1/(hj-1+hj);vj=hj/(hj-1+hj);/求出dj的值for(j=1;jn;j+)dj=6*(yj+1-yj)/hj-(yj-yj-1)/hj-1)/(hj+hj-1);d0=6*(y1-y0)/h0-df0)/h0;dn=6*(df1-(yn-yn-1)/hn-1)/hn-1;for(j=1;j=n;j+)coutuj=ujt;cout

21、endl;for(j=0;jn;j+)coutvj=vjt;coutendl;for(j=0;j=n;j+)coutdj=djt;coutendl;/利用書本上的追趕法求解方程組for(i=0;i=n;i+)bi=2;coutendl;t0=b0;yy0=d0;/消元過程for(i=1;i=0;i-)Mi=(yyi-vi*Mi+1)/ti;/將Mj的值輸出for(i=0;i=n;i+)coutMi=Miendl;/輸出插值多項(xiàng)式的系數(shù)for(j=0;jn;j+)s0=yj;s1=(yj+1-yj)/hj-(Mj/3+Mj+1/6)*hj;s2=Mj/2;s3=(Mj+1-Mj)/(6*hj);

22、cout當(dāng)x的值在區(qū)間xj到x(j+1)時(shí),輸出插值多項(xiàng)式的系數(shù):n;for(int k=0;k4;k+)coutsk=skt;coutendl;(2)編制的程序求車門的3次樣條插值函數(shù)S(x):x屬于區(qū)間0,1時(shí);S(x)=2.51+0.8(x)-0.0014861(x)(x)-0.00851395(x)(x)(x)x屬于區(qū)間1,2時(shí);S(x)=3.3+0.771486(x-1)-0.027028(x-1)(x-1)-0.00445799(x-1)(x-1)(x-1)x屬于區(qū)間2,3時(shí);S(x)=4.04+0.704056(x-2)-0.0404019(x-2)(x-2)-0.0036543

23、(x-2)(x-2)(x-2)x屬于區(qū)間3,4時(shí);S(x)=4.7+0.612289(x-3)-0.0513648(x-3)(x-3)-0.0409245(x-3)(x-3)(x-3)x屬于區(qū)間4,5時(shí);S(x)=5.22+0.386786(x-4)-0.174138(x-4)(x-4)+0.107352(x-4)(x-4)(x-4)x屬于區(qū)間5,6時(shí);S(x)=5.54+0.360567(x-5)+0.147919(x-5)(x-5)-0.268485(x-5)(x-5)(x-5)x屬于區(qū)間6,7時(shí);S(x)=5.78-0.149051(x-6)-0.657537(x-6)(x-6)+0.4

24、26588(x-6)(x-6)(x-6)x屬于區(qū)間7,8時(shí);S(x)=5.4-0.184361(x-7)+0.622227(x-7)(x-7)-0.267865(x-7)(x-7)(x-7)x屬于區(qū)間8,9時(shí);S(x)=5.57+0.256496(x-8)-0.181369(x-8)(x-8)+0.0548728(x-8)(x-8)(x-8)x屬于區(qū)間9,10時(shí);S(x)=5.7+0.058376(x-9)-0.0167508(x-9)(x-9)+0.0583752(x-9)(x-9)(x-9)S(0.5)=2.90856 S(1.5)=3.67843 S (2.5)=4.38147S(3.5

25、)=4.98819 S(4.5)=5.38328 S(5.5)=5.7237S(6.5)=5.59441 S(7.5)=5.42989 S(8.5)=5.65976S(9.5)=5.7323習(xí)題五 重積分的計(jì)算23(上機(jī)題)重積分的計(jì)算題目:給定積分。取初始步長h和k,及精度。應(yīng)用復(fù)化Simpson公式,采用逐次二分步長的方法,編制計(jì)算I(f)的通用程序。計(jì)算至相鄰兩次近似值之差的絕對值不超過為止。1) 用所編程序計(jì)算積分,取。算法概述初始時(shí)候只在x,y方向上各二分一次,根據(jù)復(fù)化Simpson公式計(jì)算積分值,然后再二分一次,仍然根據(jù)上式重新計(jì)算積分值,比較兩次計(jì)算結(jié)果的差值,如果小于誤差限,則

26、已求得滿足要求的結(jié)果,否則繼續(xù)二分區(qū)間直到滿足誤差要求為止。程序如下:#include#include#define PI 3.1415926#define error 0.5E-5double f(double x,double y) double answ; answ=tan(x*x+y*y); return answ;void main() double old,temp,a=0,c=0; int i,j,m=1,n=1; double b=PI/3;/重積分內(nèi)層上限 double d=PI/6;/重積分外層上限 double h=(b-a)/(2*n);/ double k=(d-c)

27、/(2*m); double answ=0; do old=answ; answ=0; answ+=f(a,c); temp=0; for(i=1;in;i+) temp+=f(a+2*i*h,c); temp*=2; answ+=temp; temp=0; for(i=1;i=n;i+) temp+=f(a+(2*i-1)*h,c); temp*=4; answ+=temp; answ+=f(b,c); temp=0; for(j=1;jm;j+) temp+=f(a,c+2*j*k); temp*=2; answ+=temp; temp=0; for(j=1;jm;j+) for(i=1;

28、in;i+)temp+=f(a+2*i*h,c+2*j*k); temp*=4; answ+=temp; temp=0; for(j=1;jm;j+) for(i=1;i=n;i+)temp+=f(a+(2*i-1)*h,c+2*j*k); temp*=8; answ+=temp; temp=0; for(j=1;jm;j+) temp+=f(b,c+2*j*k); temp*=2; answ+=temp; temp=0; for(j=1;j=m;j+) temp+=f(a,c+(2*j-1)*k); temp*=4; answ+=temp; temp=0; for(j=1;j=m;j+) f

29、or(i=1;in;i+)temp+=f(a+2*i*h,c+(2*j-1)*k); temp*=8; answ+=temp; temp=0; for(j=1;j=m;j+) for(i=1;i=n;i+)temp+=f(a+(2*i-1)*h,c+(2*j-1)*k); temp*=16; answ+=temp; temp=0; for(j=1;j=m;j+) temp+=f(b,c+(2*j-1)*k); temp*=4; answ+=temp; answ+=f(a,d); temp=0; for(i=1;in;i+) temp+=f(a+2*i*h,d); temp*=2; answ+=

30、temp; temp=0; for(i=1;ierror); coutansw is:answ; coutnDivided intom/2partsn; return;程序的輸出結(jié)果為:Result is:0.33652Divided into64parts即在x,y方向上各二分6次。本題公式較長,形式較為復(fù)雜,但是并不需要太多編程技巧,只需細(xì)心即可。隨著二分的繼續(xù),計(jì)算的結(jié)果越來越趨向準(zhǔn)確值。本題在二分6次后,經(jīng)檢驗(yàn)誤差符合精度要求。習(xí)題621(上機(jī)題)常微分方程初值問題數(shù)值解(1)編制RK4方法的通用程序;(2)編制AB4方法的通用程序(由RK4提供初值);(3)編制AB4-AM4預(yù)測校正

31、方法的通用程序(由RK4提供初值);(4)編制帶改進(jìn)的AB4-AM4預(yù)測校正方法的通用程序(由RK4提供初值);(5)對于初值問題取步長,應(yīng)用(1)(4)中的四種方法進(jìn)行計(jì)算,并將計(jì)算結(jié)果和精確解作比較;(6)通過本上機(jī)題,你能得到哪些結(jié)論?解:程序?yàn)椋旱?16 頁 共 16 頁#include#include#include#includeofstream outfile(data.txt);/此處定義函數(shù)f(x,y)的表達(dá)式/用戶可以自己設(shè)定所需要求得函數(shù)表達(dá)式double f1(double x,double y)double f1;f1=(-1)*x*x*y*y;return f1;/

32、此處定義求函數(shù)精確解的函數(shù)表達(dá)式double f2(double x)double f2;f2=3/(1+x*x*x);return f2;/此處為精確求函數(shù)解的通用程序void accurate(double a,double b,double h)double x100,accurate100;x0=a;int i=0;outfile輸出函數(shù)準(zhǔn)確值的程序結(jié)果:n;doxi=x0+i*h;accuratei=f2(xi);outfileaccuratei=accuratein;i+;while(i(b-a)/h+1);/此處為經(jīng)典Runge-Kutta公式的通用程序void RK4(doub

33、le a,double b,double h,double c)int i=0;double k1,k2,k3,k4;double x100,y100;y0=c;x0=a;outfile輸出經(jīng)典Runge-Kutta公式的程序結(jié)果:n;doxi=x0+i*h;k1=f1(xi,yi);k2=f1(xi+h/2),(yi+h*k1/2);k3=f1(xi+h/2),(yi+h*k2/2);k4=f1(xi+h),(yi+h*k3);yi+1=yi+h*(k1+2*k2+2*k3+k4)/6;outfileyi=yin;i+;while(i(b-a)/h+1);/此處為4階Adams顯式方法的通用

34、程序void AB4(double a,double b,double h,double c)double x100,y100,y1100;double k1,k2,k3,k4;y0=c;x0=a;outfile輸出4階Adams顯式方法的程序結(jié)果:n;for(int i=0;i=2;i+)xi=x0+i*h;k1=f1(xi,yi);k2=f1(xi+h/2),(yi+h*k1/2);k3=f1(xi+h/2),(yi+h*k2/2);k4=f1(xi+h),(yi+h*k3);yi+1=yi+h*(k1+2*k2+2*k3+k4)/6;int j=3;y10=y0;y11=y1;y12=y

35、2;y13=y3;doxj=x0+j*h;y1j+1=y1j+(55*f1(xj,y1j)-59*f1(xj-1,y1j-1)+37*f1(xj-2,y1j-2)-9*f1(xj-3,y1j-3)*h/24;outfiley1j=y1jn;j+;while(j(b-a)/h+1);/主函數(shù)void main(void)double a,b,h,c;coutabhc;accurate(a,b,h);RK4(a,b,h,c);AB4(a,b,h,c);結(jié)果為:由經(jīng)典Runge-Kutta公式得出的結(jié)果列在下面的表格中,以及精確值y(xi)和精確值和數(shù)值解的誤差:ixiyiy(xi)|y(xi)-y

36、i|0033010.12.9972.9971.87138e-00720.22.976192.976193.91665e-00730.32.921132.921137.58342e-00740.42.819552.819551.61101e-00650.52.666662.666673.17735e-00660.62.46712.467115.00551e-00670.7 2.23382.23385.77233e-00680.81.984121.984134.12954e-00690.91.735111.735111.15554e-007101.01.500011.55.80668e-00611

37、1.11.287011.2871.13075e-005121.21.099721.099711.54242e-005131.30.9383970.938381.77272e-005141.40.80130.8012821.83754e-005151.50.6857320.6857141.78e-005由AB4方法得出的結(jié)果為:Y10=3 y11=2.997 y12=2.97619 y13=2.92113 y14=2.81839y15=2.66467 y16=2.4652 y17=2.23308 y18=1.98495 y19=1.73704y110=1.50219 y111=1.28876 y

38、112=1.10072 y113=0.93871 y114=0.801135y115=0.685335通過本上機(jī)題我明白了各種求微分方程的數(shù)值方法,經(jīng)典Runge-Kutta公式,AB4方法以及AB4-AM4預(yù)測校正方法求解公式的精度是不同的。其中經(jīng)典Runge-Kutta公式的精度,四階Adams顯式方法(AB4)具有4階精度。習(xí)題八 拋物線方程Crank-Nicolson格式題目:1)編制用Crank-Nicolson格式求拋物線方程2u/2x = f(x,t) (0x1, 0u(x,0) = (0u(0,t) = ,u(1,t)= (0t數(shù)值解的通用程序。2)就a=1, f(x,t)=0

39、,=exp(x),=exp(t),=exp(1+t),M=40,N=40,輸入點(diǎn)(0.2,1.0),(0.4,1.0),(0.6,1.0),(.8,1.0)4點(diǎn)處u(x,t)的近似值。3) 已知所給方程的精確解為u(x,t)=exp(x+t),將步長反復(fù)二分,從(0.2,1.0),(0.4,1.0),(0.6,1.0),(0.8,1.0)4點(diǎn)處精確解與數(shù)值解的誤差觀察當(dāng)步 長縮小一半時(shí),誤差以什么規(guī)律縮小。算法: 本題選擇空間步長h=0.025,時(shí)間步長=0.025 1. 置初值; 2.通過點(diǎn)(i-1,k),(i-1,k+1),(i,k),(i+1,k),(i+1,k+1)求解點(diǎn)(I,k+1)的值; 3.輸出結(jié)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論