微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 fortran 中卡住了 do 循环

如何解决在 fortran 中卡住了 do 循环

我只是做简单的方程(gaussian-plume eq.) 目标是基于 x、y、z 分布的浓度值 但是循环在第一步就卡住了有什么问题? 这是我的代码

  PROGRAM plume
  IMPLICIT NONE
  REAL,ParaMETER :: pi=3.141592,q=1000,u=5,t=10,&                  kx=1,ky=1,kz=1
  REAL :: d,dx,dy,dz,f1,f2,C
  INTEGER :: x,y,z

  OPEN(10,file='./results/plume.txt')

  WRITE(10,'(3(A4),2(x,A50))') "x","y","z","f2","C"

  dy = dx
  dz = dx
  dx = (2 * kx * t)

  PRINT*,"f1=",f1(q,pi,u,dx)

  DO x = 0,1000,10
   DO y = -500,500,10 
    DO z = 0,10 
     f2 = exp( -(1/2) * ( ( (y**2.) + (z**2.) ) / dx ) ) 
     C = f1(q,dx) * f2
     WRITE(10,'(3(I4),(x,2(F50.48)))') x,z,C
    END DO
   END DO
  END DO
     

  END PROGRAM


  FUNCTION f1(q,dx)
  IMPLICIT NONE
  REAL :: q,u
  REAL :: f1,dx
   f1 = q / (2 * pi * u * dx)
  END FUNCTION f1

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。