24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 905  |  回复: 6
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

gelitao1234

金虫 (正式写手)

[求助] 程序运行的结果很奇怪,不知道原因是什么

程序如下,程序运行结果是TTT的值是NaN,数组TEMP的结果也是这样的,原因是什么?
C
C....<< CACULATION  OF  TEMPERATURE>>
      
       SUBROUTINE TEMPER
       PARAMETER(MX=181,MY=151,MZ=161)
       IMPLICIT DOUBLE PRECISION(A-H,O-Z)
       COMMON /PARA3/ NX,NY,NZ
       COMMON /PARA4/ DT,TIME
       COMMON /TEMP/ TEMP(0:MX+2,0:MY+2,0:MZ+2)
     &,               TEMPH(0:MZ+2)
     &,               SGST(0:MX+2,0:MY+2,0:MZ+2)
      COMMON /FLOWS/ UU(0:MX+2,0:MY+2,0:MZ+2)
     &,              VV(0:MX+2,0:MY+2,0:MZ+2)
     &,              WW(0:MX+2,0:MY+2,0:MZ+2)
      COMMON /DELT1/ DXU(0:MX+1),DYU(0:MY+1),DZU(0:MZ+1)
      COMMON /DELT2/ DXV(0:MX+1),DYV(0:MY+1),DZV(0:MZ+1)
      COMMON /DELT3/ DXW(0:MX+1),DYW(0:MY+1),DZW(0:MZ+1)
      
      COMMON /DELT3/ DXT(0:MX+1),DYT(0:MY+1),DZT(0:MZ+1)
      
      COMMON /DELT3/ DXP(0:MX+1),DYP(0:MY+1),DZP(0:MZ+1)
C....<INITIAL CONDITION >
      DO K=0,NZ+2
      DO J=0,NY+2
      DO I=0,NX+2

      TEMP(I,J,K)=1.2D0
      END DO
      END DO
      END DO

      DO J=0,NY+2
      DO I=0,NX+2

      TEMP(I,J,2)=6.D0
      TEMP(I,J,1)=6.D0

      END DO
      END DO
C....<< TEMPERATURE B.C.>>
      DO K=1,NZ+1
      DO J=1,NY+1
      TEMP(1,J,K)=TEMP(2,J,K)
      TEMP(NX+1,J,K)=TEMP(NX,J,K)
      END DO
      END DO
      DO J=1,NY+1
      DO I=1,NX+1
      TEMP(I,J,1)=TEMP(I,J,2)
      TEMP(I,J,NZ+1)=TEMP(I,J,NZ)
      END DO
      END DO
      DO K=1,NZ+1
      DO I=1,NX+1
      TEMP(I,1,K)=TEMP(I,2,K)
      TEMP(I,NY+1,K)=TEMP(I,NY,K)
      END DO
      END DO
C

C....<TEMPERATURE CACULATION >
      DO K=2,NZ
      DO J=2,NY
      DO I=2,NX
C....<<SPACING LENGTH>>
      H1=DXP(I-1)
      H2=DXP(I)
      H3=DYP(J-1)
      H4=DYP(J)
      H5=DZP(K-1)
      H6=DZP(K)
      DX=DXU(I-1)
      DY=DYV(J-1)
      DZ=DZW(K-1)

C....<<CACULATION>>
      YIX=DT*UU(I,J,K)*(TEMP(I+1,J,K)-TEMP(I-1,J,K))
      YIY=DT*VV(I,J,K)*(TEMP(I,J+1,K)-TEMP(I,J-1,K))
      YIZ=DT*WW(I,J,K)*(TEMP(I,J,K+1)-TEMP(I,J,K-1))
      ERX=TEMP(I+1,J,K)/(DX*H2)-TEMP(I,J,K)*(1.D0/(DX*H1)+1.D0/(DX*H2))
      ERY=TEMP(I,J+1,K)/(DY*H4)-TEMP(I,J,K)*(1.D0/(DY*H3)+1.D0/(DY*H4))
      ERY=TEMP(I,J,K+1)/(DZ*H6)-TEMP(I,J,K)*(1.D0/(DZ*H5)+1.D0/(DZ*H6))
      TEMP(I,J,K)=TEMP(I,J,K)+YIX/(DXT(I)+DXT(I+1))
     & +YIY/(DYT(J)+DYT(J+1))
     & +YIZ/(DZT(K)+DZT(K+1))  
     & -DT*SGST(I,J,K)*(ERX+TEMP(I-1,J,K)/(DX*H1))
     & -DT*SGST(I,J,K)*(ERY+TEMP(I,J-1,K)/(DY*H3))
     & -DT*SGST(I,J,K)*(RYZ+TEMP(I,J,K-1)/(DZ*H5))
      END DO
      END DO
      END DO
C....<<HORIZENTAL AVERAGING >>
       DO K=0,NZ+1
       TEMPH(K)= 0
      END DO

       DO K=1,NZ+1
       TEMPH(K-1)= TEMPH(K)/DFLOAT(NX+1)*(NY+1)
      DO J=1,NY+1
      DO I=1,NX+1
       TEMPH(K)=TEMPH(K)+TEMP(I,J,K)
      END DO
      END DO
      END DO
C....<<AVERAGING & SUBTRACTION>>
      TTT=0.D0
      DPLAY=0.D0
      DO K=1,NZ+1
      DO J=1,NY+1
      DO I=1,NX+1
      TTT=TTT+TEMP(I,J,K)
      END DO
      END DO
      END DO
      
      DO K=1,NZ+1
      DO J=1,NY+1
      DO I=1,NX+1
      TEMP(I,J,K)=TEMP(I,J,K)-TTT/DFLOAT((NX+1)*(NY+1)*(NZ+1))
      END DO
      END DO
      END DO
      DPLAY=TTT/DFLOAT((NX+1)*(NY+1)*(NZ+1))      
      WRITE(*,601)DPLAY
  601 FORMAT(' TTT',F8.1)
      RETURN  
      END
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

pippi6

铁杆木虫 (著名写手)

工程和科学数值计算咨询

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
gelitao1234: 金币+20 2013-06-17 10:31:06
引用回帖:
3楼: Originally posted by gelitao1234 at 2013-06-16 23:56:43
万分感谢。我尝试一下看看。...

以后最好在subroutine开始时使用
implicit none
可以帮助你查出许多没有定义、没有赋值、写错变量这样的初级错误
4楼2013-06-17 05:54:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 7 个回答

pippi6

铁杆木虫 (著名写手)

工程和科学数值计算咨询

【答案】应助回帖

感谢参与,应助指数 +1
ERY=TEMP(I,J,K+1)/(DZ*H6)-TEMP(I,J,K)*(1.D0/(DZ*H5)+1.D0/(DZ*H6))
      TEMP(I,J,K)=TEMP(I,J,K)+YIX/(DXT(I)+DXT(I+1))
     & +YIY/(DYT(J)+DYT(J+1))
     & +YIZ/(DZT(K)+DZT(K+1))  
     & -DT*SGST(I,J,K)*(ERX+TEMP(I-1,J,K)/(DX*H1))
     & -DT*SGST(I,J,K)*(ERY+TEMP(I,J-1,K)/(DY*H3))
     & -DT*SGST(I,J,K)*(RYZ+TEMP(I,J,K-1)/(DZ*H5))
这两段里,首先ERY可能是ERZ(重复了)?其次,RYZ是ERZ?
你的RYZ完全没有赋值啊。
2楼2013-06-16 20:18:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gelitao1234

金虫 (正式写手)

引用回帖:
2楼: Originally posted by pippi6 at 2013-06-16 20:18:20
ERY=TEMP(I,J,K+1)/(DZ*H6)-TEMP(I,J,K)*(1.D0/(DZ*H5)+1.D0/(DZ*H6))
      TEMP(I,J,K)=TEMP(I,J,K)+YIX/(DXT(I)+DXT(I+1))
     & +YIY/(DYT(J)+DYT(J+1))
     & +YIZ/(DZT(K)+DZT(K+1))  
     &a ...

万分感谢。我尝试一下看看。
3楼2013-06-16 23:56:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gelitao1234

金虫 (正式写手)

非常感谢你,你的建议对我帮助很大
5楼2013-06-17 10:30:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 301求调剂 +3 细胞相关蛋白 2026-04-02 3/150 2026-04-02 14:07 by 乔哒哒哒
[考研] 346求调剂 +3 郑诚乐 2026-04-02 3/150 2026-04-02 13:39 by 乔哒哒哒
[考研] 一志愿北京理工大学本科211材料工程294求调剂 +8 mikasa的围巾 2026-03-28 9/450 2026-04-02 12:09 by ms629
[考研] 367求调剂 +8 芋泥啵啵… 2026-03-28 8/400 2026-04-02 09:20 by olim
[考研] 一志愿346上海大学生物学 +3 上海大学346调剂 2026-04-01 3/150 2026-04-02 08:36 by w虫虫123
[考研] 266分求材料化工冶金矿业等专业的调剂 +7 哇呼哼呼哼 2026-03-26 7/350 2026-04-01 20:47 by cqupH
[考研] 379求调剂 +3 ?苦瓜不苦 2026-04-01 3/150 2026-04-01 20:09 by 暮云清寒
[考研] 0703求调剂 +4 zizimo 2026-03-31 4/200 2026-04-01 16:04 by yanflower7133
[考研] 311求调剂 +10 李芷新1 2026-03-31 10/500 2026-04-01 14:38 by chenqifeng666
[考研] 一志愿 南京航空航天大学 ,080500材料科学与工程学硕 +10 @taotao 2026-03-31 11/550 2026-04-01 09:43 by xiayizhi
[考研] 英一数一总分334求调剂 +4 陈阳坤 2026-03-31 4/200 2026-03-31 14:22 by 记事本2026
[考研] 求调剂 +8 11ggg 2026-03-30 8/400 2026-03-31 13:56 by nanaliuyun
[考研] 南京大学化学调剂 +11 景随风 2026-03-29 16/800 2026-03-31 10:14 by herarysara
[考研] 福建理工大学材料学院先进合金团队招收考研调剂学生 +3 大华金商都 2026-03-30 4/200 2026-03-31 01:04 by 方英俊602
[考研] 083000环境科学与工程调剂,总分281 +4 橙子(胜意) 2026-03-30 4/200 2026-03-31 00:44 by Linzejun
[考研] 本科211总分289,08工学真心求调剂 +3 utopiaE 2026-03-30 3/150 2026-03-30 23:42 by ms629
[有机交流] 考研调剂 +8 watb 2026-03-26 8/400 2026-03-30 18:40 by 544594351
[考研] 调剂考研 +3 王杰一 2026-03-29 3/150 2026-03-29 08:09 by fmesaito
[硕博家园] 招收生物学/细胞生物学调剂 +4 IceGuo 2026-03-26 5/250 2026-03-29 01:25 by griffith2014
[考研] 312,生物学求调剂 +3 小译同学abc 2026-03-28 3/150 2026-03-28 15:32 by 落睿可思
信息提示
请填处理意见