?? p11.for
字號(hào):
*=======================================================================
SUBROUTINE USER(K)
*-----------------------------------------------------------------------
$INCLUDE:'SIMPLE.INC'
DIMENSION TH(22),THU(22),THDIF(22),THCV(22),THCVS(22)
EQUIVALENCE(X,TH),(XU,THU),(XDIF,THDIF),(XCV,THCV),
+ (XCVS,THCVS),(XL,THL)
*-----------------------------------------------------------------------
COMMON/CNTL/LSTOP
COMMON/SORC/SMAX,SSUM
COMMON/COEF/FLOW,DIFF,ACOF
*-----------------------------------------------------------------------
*-------------------------- PROBLEM 11 ----------------------------
*-----------------------------------------------------------------------
DIMENSION T(22,22)
EQUIVALENCE (F(1,1,4),T(1,1))
*-----------------------------------------------------------------------
GOTO (1,2,3,4,5,6),K
*-----------------------------------------------------------------------
* ENTRY GRID
1 XL=1.
YL=2.
L1=7
M1=12
MODE=1
CALL SUPPLY(1)
RETURN
*-----------------------------------------------------------------------
* ENTRY START
2 CONTINUE
DO 14 I=1,3
LSOLVE(I)=.TRUE.
14 LPRINT(I)=.TRUE.
TITLE(1)=' VEL U '
TITLE(2)=' VEL V '
LPRINT(3)=.FALSE.
TITLE(4)=' TEMP '
TITLE(11)='PRESSURE'
LPRINT(4)=.TRUE.
RELAX(1)=0.5
RELAX(2)=0.5
RELAX(11)=1.
LPRINT(11)=.TRUE.
LAST=40
DEPTH=0.2
FLOW=4.
UIN=100.
TIN=500.
TAIR=100.
HTC=2.
PR=5.
CP=1.2
AMU=1.
AMUP=AMU/PR
FDZ=FLOW/DEPTH
DO 100 J=1,M1
DO 100 I=1,L1
U(I,J)=0.
V(I,J)=0.
T(I,J)=TAIR
100 CONTINUE
RETURN
*-----------------------------------------------------------------------
* ENTRY DENSE
3 CONTINUE
RETURN
*-----------------------------------------------------------------------
* ENTRY BOUND
4 CONTINUE
IF(ITER.LT.35)RETURN
DO 300 NF=1,3
300 LSOLVE(NF)=.FALSE.
LSOLVE(4)=.TRUE.
RETURN
*-----------------------------------------------------------------------
* ENTRY OUTPUT
5 CONTINUE
IF(ITER.NE.0) GO TO 400
WRITE(*,401)
401 FORMAT(' ITER',6X,'SMAX',8X,'SSUM',7X,'V(4,7)',6X,
+ 'U(6,4)',6X,'T(5,9)')
400 WRITE(*,403) ITER,SMAX,SSUM,V(4,7),U(6,4),T(5,9)
403 FORMAT(I6,1P5E12.3)
IF(ITER.NE.LAST)RETURN
CALL SUPPLY(2)
RETURN
*-----------------------------------------------------------------------
* ENTRY GAMSOR
6 CONTINUE
DO 500 J=1,M1
DO 500 I=1,L1
GAM(I,J)=AMU
IF(NF.EQ.4)GAM(I,J)=AMUP
IF(NF.NE.4) GO TO 500
GAM(1,J)=0.
GAM(I,1)=0.
GAM(I,M1)=0.
GAM(L1,J)=0.
500 CONTINUE
IF(NF.NE.1) GOTO 510
SOR=0.5*FDZ/(XCVS(4)*YCV(4))
CON(4,4)=SOR*UIN
AP(4,4)=-SOR
SOR=0.5*FDZ/(XCVS(5)*YCV(4))
CON(5,4)=SOR*UIN
AP(5,4)=-SOR
RETURN
510 CONTINUE
IF(NF.NE.2)GOTO 520
SOR=0.5*FDZ/(XCV(4)*YCVS(4))
AP(4,4)=-SOR
SOR=.5*FDZ/(XCV(4)*YCVS(5))
AP(4,5)=-SOR
RETURN
520 CONTINUE
IF(NF.NE.3)GOTO 530
CON(4,4)=FDZ/(XCV(4)*YCV(4))
CON(5,9)=-FDZ/(XCV(5)*YCV(9))
RETURN
530 CONTINUE
IF(NF.NE.4)GOTO 540
SOR=HTC/(CP*DEPTH)
DO 531 J=2,M2
DO 531 I=2,L2
CON(I,J)=SOR*TAIR
531 AP(I,J)=-SOR
SOR=FDZ/(XCV(4)*YCV(4))
CON(4,4)=CON(4,4)+SOR*TIN
AP(4,4)=AP(4,4)-SOR
540 CONTINUE
RETURN
END
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -