parameter n=100 real z(n,n),z1(n,n),z2(n,n) open(10,file="line.in") open(20,file="line.dat") read (10,*)nt,alpha,ik do i=1,n do j=85,n z1(i,j)=10. z2(i,j)=10. enddo enddo c **************** calculation **************** do k=1,nt do i=2,n-1 do j=2,n-1 if ((j.lt.75.and.j.gt.45).and.(i.gt.55.or.i.lt.45)) then z(i,j)=0. else z(i,j)=2.*z1(i,j)-z2(i,j)+alpha*(z1(i+1,j)+z1(i-1,j)+ * z1(i,j+1)+z1(i,j-1)-4.*z1(i,j)) endif enddo enddo do i=1,n do j=1,n z2(i,j)=z1(i,j) z1(i,j)=z(i,j) enddo enddo if((k/ik)*ik.eq.k) then write (20,100) z endif 100 format (100f18.7) enddo stop end