⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 p2.for

📁 关于simple算法
💻 FOR
字号:
*=======================================================================
      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  2   ----------------------------
*-----------------------------------------------------------------------
	DIMENSION T(22,22)
	EQUIVALENCE (F(1,1,4),T(1,1))
*-----------------------------------------------------------------------
	GOTO (1,2,3,4,5,6),K
*-----------------------------------------------------------------------
* 	ENTRY GRID
1	MODE=2
	XL=2.
	YL=1.
	R(1)=1.
	L1=7
	M1=7
	CALL SUPPLY(1)
	RETURN
*-----------------------------------------------------------------------
*	ENTRY START
2	CONTINUE
	READ(*,*)METHOD
	TITLE(4)=' TEMP  '
	TITLE(13)='  COND '
	LSOLVE(4)=.TRUE.
	LPRINT(4)=.TRUE.
	LPRINT(13)=.TRUE.
	LAST=90
	IF(METHOD.EQ.2)LAST=5
	DO 100 J=1,M1
	DO 100 I=1,L1
	T(I,J)=200.
	IF(I.EQ.1)T(I,J)=100.*(1.+Y(J))
100	CONTINUE
	HTC=5.
	Q=50.
	TF=100.
	GAM1=1.
	RETURN
*-----------------------------------------------------------------------
*	ENTRY DENSE
3 	CONTINUE
	RETURN
*-----------------------------------------------------------------------
*	ENTRY BOUND
4	CONTINUE
	DO 300 I=2,L2
	T(I,M1)=T(I,M2)
300	T(I,1)=T(I,2)+Q*YDIF(2)/GAM1
	GY=GAM1/XDIF(L1)
	DO 301 J=2,M2
301	T(L1,J)=(HTC*TF+GY*T(L2,J))/(HTC+GY)
	RETURN
*-----------------------------------------------------------------------
*	ENTRY OUTPUT
5	CONTINUE
	IF(ITER.NE.0)GOTO 400
	WRITE(*,403)METHOD
403	FORMAT('  METHOD = ',I1)
	WRITE(*,401)
401	FORMAT('   ITER',11X,'T(4,5)',14X,'T(5,3)')
400	WRITE(*,402)ITER,T(4,5),T(5,3)
402	FORMAT(I6,2F20.5)
	IF(ITER.EQ.LAST)CALL SUPPLY(2)
	RETURN
*-----------------------------------------------------------------------
*	ENTRY GAMSOR
6	CONTINUE
	DO 500 J=1,M1
	DO 500 I=1,L1
500	GAM(I,J)=GAM1
	DO 501 J=4,7
	DO 501 I=4,5
501	GAM(I,J)=.2*(1.+T(I,J)/100.)
	DO 510 I=2,L2
	DO 510 J=2,M2
	CON(I,J)=100.
510	AP(I,J)=-.5
	IF(METHOD.EQ.1)RETURN
	DO 520 I=2,L2
	GAM(I,M1)=0.
	GAM(I,1)=0.
520	CON(I,2)=CON(I,2)+Q*R(1)/ARX(2)
	RES=1./HTC+1./GY
	ARES=1./(RES*XCV(L2))
	DO 521 J=2,M2
	GAM(L1,J)=0.
	CON(L2,J)=CON(L2,J)+ARES*TF
521	AP(L2,J)=AP(L2,J)-ARES
	RETURN
	END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -