힌트를 드리자면 이는 1차원 확산 방정식입니다. SEPARATION OF VARIABLE을 사용할 수 있습니다. 답은 U(X, T)=SUM Cm cos(mX Dm) EXP(-입니다. m*m t); 그리고 SUM은 무한 계열입니다. m=0, 1, 2, 3,... 무한대입니다.
일반적인 미분 방정식으로도 수행할 수 있습니다. ; H=0.5, 여기서는 U0, U2는 2, U2-U1=-0.5U2; ; 그러므로
dU1/dt=(U0-2U1 U2)/.25=-2.666664U1; get UI(N 1)-U1(N)=-2.666664U1(N)*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
* ******************************************* ******** ****************
프로그램 열
치수 u(81)
정수*4 m
c J0(x)=0(x=2.405;5.520;8.654;11.792;14.931의 경우)
c J1(x)=0(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 p>
u(i)=u(i) (u(i 1) u(i-1)-2.*u(i))*dt/h/ h
3 계속
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)중지
2 계속
중지
종료
_________________
참고: 여기 r=dt/h/hlt; 0.5; N=11로 설정하면 DT 단계 크기는 0.5/200=0.0025로 설정됩니다.
앞으로 차이를 지정해야 합니다. 암시적으로 사용할 수 없으며 경계 처리 차이 방법을 지정해야 합니다. 또한 Fuli를 사용해야 합니다.
p>Ai Yinding 분석 차이 형식; r=1/2은 불확실한 측면에 있으며, 이 프로그램을 수정할 수도 있습니다. 귀하의 요구 사항을 충족합니다