
数值模拟编程.docx
20页解析解与显式解、隐式解的对比1、解析解PublicFunctionErf(x1AsDouble)AsDouble/*'误差函数*/DimxAsDouble,qAsDouble,dx#,dt#x=1/(1+0.3275911*x1)q=0.254829592*x-0.284496736*xA2+1.421413741*xA3-1.453152027*x%+1.061405429*xA5Erf=1-q*Exp(-x1A2)EndFunctionPublicFunctionAnIysis11()AsDouble/*解析解*/'Dimdx#,dt#,N,T,p#(40,40),f#N=40T=40Fori=0ToTp(1,i)=1NextFori=0ToTp(N,i)=0NextFori=1ToNp(i,0)=0NextSheet1.Cells(1,2)="dx=0.2:dt=0.01"Sheet1.Cells(1,3)="dx=0.2:dt=0.02"Sheet1.Cells(1,4)="dx=0.2:dt=0.04"dx=0.2dt=0.01Forj=1ToTFori=2ToNf=(i-1)*dx/(2*Sqr(j*dt))p(i,j)=1-Erf(f)NextNextFori=1ToNSheet1.Cells(i+1,1)=iSheet1.Cells(i+1,2)=p(i,N)Nextdx=0.2dt=0.02Forj=1ToTFori=2ToNf=(i-1)*dx/(2*Sqr(j*dt))p(i,j)=1-Erf(f)NextNextFori=1ToNSheet1.Cells(i+1,3)=p(i,N)Nextdx=0.2dt=0.04Forj=1ToTFori=2ToNf=(i-1)*dx/(2*Sqr(j*dt))p(i,j)=1-Erf(f)NextNextFori=1ToNSheet1.Cells(i+1,4)=p(i,N)NextEndFunction解析解图表Sheet1dx=0.2:dt=0.01dx=0.2:dt=0.02dx=0.2:dt=0.0411120.8230633560.8743670410.910979194:30.65472090.7518297720.82306335640.5023348220.6352563210.737315812:50.3710933070.5270891410.654720960.2635525760.4291951770.5761500670.1797126230.342781690.502334822:80.1175248890.268381720.43384793990.073638170.2059033480.371093307100.0441712070.1547290230.314304685:110.0253472360.1138463090.263552576120.0139063090.0819902420.21875814130.0072904520.057779440.179712623:140.0036505690.0398324860.146100551150.0017452530.0268566040.117524889160.000796340.017706040.093532466:170.0003466970.0114120780.07363817180.0001439780.0071896130.05734672195.70218E-050.0044266540.044171207:202.15323E-050.0026632580.033647907217.75111E-060.0015655340.025347236222.65946E-060.0008990270.018881004:238.69591E-070.000504310.013906309:242.70938E-070.0002763090.010126597258.04283E-080.0001478520.007290452262.27449E-087.72603E-050.005188728276.12706E-093.94233E-050.003650569281.57209E-091.9642E-050.002538825293.84168E-109.55497E-060.001745253:308.94037E-114.53791E-060.001185821]311.98129E-112.10399E-060.00079634324.18088E-129.52293E-070.000528543:338.39995E-134.20743E-070.000346697341.60649E-131.81453E-070.000224747352.93099E-147.63825E-080.000143978]365.10703E-153.13828E-089.11487E-05:378.88178E-161.25846E-085.70218E-05:381.11022E-164.92525E-093.52498E-05]3901.88122E-092.15323E-05:4007.01237E-101.29966E-05:解析解2、显式解PublicSubObvious()中国地质大学(北京)能源学院/*显式解*/DimaAsDouble,dx#,dt#,p#(41,41),i#,j#/*边界条件*/T=40N=40Fori=0ToTp(1,i)=1NextFori=0ToTp(N,i)=0NextFori=1ToNp(i,0)=0NextSheet2Cells(1,2)=“dx=0.2:dt=0.01"Sheet2.Cells(1,3)="dx=0.2:dt=0.02"Sheet2.Cells(1,4)="dx=0.2:dt=0.04"dx=0.2dt=0.01a=dt/dxA2/*显式的一个系数*/Forj=1ToTFori=2ToN-1p(i,j)=(1-2*a)*p(i,j-1)+a*(p(i+1,j-1)+p(i-1,j-1))NextNextFori=1ToNSheet2.Cells(1+i,1)=iSheet2.Cells(1+i,2)=p(i,T)Nextdx=0.2dt=0.02a=dt/dxa2/*显式的一个系数*/'Forj=1ToTFori=2ToN-1p(i,j)=(1-2*a)*p(i,j-1)+a*(p(i+1,j-1)+p(i-1,j-1))NextNextFori=1ToNSheet2.Cells(1+i,3)=p(i,T)Nextdx=0.2dt=0.04a=dt/dxA2/*显式的一个系数*/'Forj=1ToTFori=2ToN-1p(i,j)=(1-2*a)*p(i,j-1)+a*(p(i+1,j-1)+p(i-1,j-1))NextNextFori=1ToNSheet2.Cells(1+i,4)=p(i,T)NextEndSub显式解图表Sheet3dx=0.2:dt=0.01dx=0.2:dt=0.02dx=0.2:dt=0.0411120.8221442420.8746293125.89749E+1530.6529643760.749258625-1.11498E+1640.4998968770.6358280031.52264E+1650.3681876340.52239738-1.77989E+1660.2604255260.4295905081.87798E+1670.1766105530.336783635-1.83098E+16:80.1146603560.2681872511.67007E+1690.0711634090.199590867-1.43536E+16100.0421654440.1538599441.16759E+16110.0238197930.108129021-9.01464E+15120.0128124020.0806904686.61783E+15130.0065532980.053251914-4.62453E+15:140.0031830110.0384773083.07793E+15150.0014660720.023702702-1.95153E+15160.0006393980.0165890031.17859E+15170.0002636370.009475304-6.77728E+14180.0001025960.0064265763.70825E+14193.76151E-050.003377848-1.92897E+14:201.29671E-050.0022214349.52884E+13214.19404E-060.00106502-4.464E+13221.2697E-060.0006795481.98005E+13233.58836E-070.000294077-8.2999E+12249.43922E-080.0001821663.28056E+12252.30344E-087.02548E-05-1.2195E+12:265.19494E-094.2277E-054.25068E+11271.07814E-091.42993E-05-1.38437E+11282.04884E-108.36458E-0641952360166293.54456E-112.42991E-06-11771699145305.5447E-121.38261E-063040499607317.77884E-133.35316E-07-717758780329.69112E-141.85702E-07153507785331.05907E-143.60887E-08-29418439349.99515E-161.9465E-084980757357.9813。
