++++++++++++++++
也可以用常微分方程做;H=0.5;這裏只用三點;U0;U1;U2;J為2;由邊界條件;U1-U0=0.5U0;U0=0.6666666U1;U2-U1=-0.5U2;U2=0.6666666U1;故
dU1/dt=(U0-2U1+U2)/.25=-2.666664U1;得UI(N+1)-U1(N)=-2.666664U1(N)*dt;設dt=0.1;則UI(N+1)-U1(N)=-0.2666664U1(N);可以用EXCEL 做了
U1(N+1)=U1(N)-0.2666664U1(N)=0.7333336U1(N);
這是壹個等比級數;U1(0)=1;U1(1)=0.7333336;...,U1(N+1)=.7333336^N
*****************************************************************
program heat
dimension u(81)
integer*4 m
c J0(x)=0 for x=2.405;5.520;8.654;11.792;14.931
c J1(x)=0 for x=0;3.832;7.016;10.173;13.324...
n=3
h=1./(n-1)
dt=0.5*h*h/2.
j=n
m=10
do 1 i=1,n
1 u(i)=1.
do 2 k=1,m
u(1)=(4.*u(2)-u(3))/(2.*h+3.)
u(n)=(-u(n-2)+4.*u(n-1))/(2.*h+3.)
do 3 i=2,n-1
u(i)=u(i)+(u(i+1)+u(i-1)-2.*u(i))*dt/h/h
3 continue
write(6,'(1x,6e13.6)')(u(i),i=1,n)
if(u(n/2+1).le.1.e-6)write(6,'(1x,i5)')k
if(u(n/2+1).le.1.e-6)stop
2 continue
stop
end
_____________________________
附註:這裏r=dt/h/h<0.5;妳可以把N=11,那DT步長是0.5/200=0.0025;把M=32767;
妳要指定差分用向前;不能用隱性;又要指定邊界處理差分方式;還要研究報告;用富裏
艾隱定分析差分格式;因邊界條件關系;r=1/2剛好在不隱定的壹邊 ;這是壹維熱傳導方程;上百度找找看;妳也可修改這程序;符合妳需要的