CLTEND.F
References to this file elsewhere.
1 !
2 !NCEP_MESO:MODEL_LAYER: PHYSICS
3 !
4 !**********************************************************************
5 SUBROUTINE CLTEND (ICLTEND,NPHS,T,T_OLD,T_ADJ &
6 ,IDS,IDE,JDS,JDE,KDS,KDE &
7 ,IMS,IME,JMS,JME,KMS,KME &
8 ,ITS,ITE,JTS,JTE,KTS,KTE)
9 !----------------------------------------------------------------------
10 !$$$ SUBPROGRAM DOCUMENTATION BLOCK
11 ! . . .
12 ! SUBPROGRAM: CLTEND TEMPERATURE CHANGE BY CLOUD PROCESSES
13 ! PRGRMMR: FERRIER ORG: W/NP22 DATE: 01-09-26
14 !
15 ! ABSTRACT:
16 ! CLTEND GRADUALLY UPDATES TEMPERATURE TENDENCIES FROM CONVECTION
17 ! GRID-SCALE MICROPHYSICS, AND PRECIPITATION ASSIMILATION.
18 !
19 ! USAGE: CALL CLTEND FROM SOLVE_RUNSTEAM
20 ! INPUT ARGUMENT LIST:
21 ! ICLTEND - FLAG SET TO -1 PRIOR TO PHYSICS CALLS, 0 AFTER PHYSICS
22 ! CALLS, AND 1 FOR UPDATING TEMPERATURES EVERY TIME STEP
23 !
24 ! OUTPUT ARGUMENT LIST: NONE
25 !
26 ! OUTPUT FILES: NONE
27 !
28 ! SUBPROGRAMS CALLED: NONE
29 !
30 ! UNIQUE: NONE
31 !
32 ! LIBRARY: NONE
33 !
34 ! ATTRIBUTES:
35 ! LANGUAGE: FORTRAN 90
36 ! MACHINE : IBM SP
37 !$$$
38 !----------------------------------------------------------------------
39 USE module_MPP
40 !
41 IMPLICIT NONE
42 !
43 !----------------------------------------------------------------------
44 !
45 INTEGER,INTENT(IN) :: ICLTEND &
46 ,IDS,IDE,JDS,JDE,KDS,KDE &
47 ,IMS,IME,JMS,JME,KMS,KME &
48 ,ITS,ITE,JTS,JTE,KTS,KTE &
49 ,NPHS
50 !
51 REAL,DIMENSION(IMS:IME,KMS:KME,JMS:JME),INTENT(INOUT) :: T &
52 ,T_ADJ &
53 ,T_OLD
54 !
55 !*** LOCAL VARIABLES
56 !
57 INTEGER :: I,J,K
58 !
59 REAL :: DELTPH
60 !
61 !----------------------------------------------------------------------
62 !----------------------------------------------------------------------
63 !
64 IF(ICLTEND.LT.0)THEN
65 DO J=JTS,JTE
66 DO K=KTS,KTE
67 DO I=ITS,ITE
68 T_OLD(I,K,J)=T(I,K,J)
69 ENDDO
70 ENDDO
71 ENDDO
72 ELSEIF(ICLTEND.EQ.0)THEN
73 DO J=JTS,JTE
74 DO K=KTS,KTE
75 DO I=ITS,ITE
76 T_ADJ(I,K,J)=T(I,K,J)-T_OLD(I,K,J)
77 T(I,K,J)=T_OLD(I,K,J)
78 ENDDO
79 ENDDO
80 ENDDO
81 ELSE
82 DELTPH=1./REAL(NPHS)
83 DO J=JTS,JTE
84 DO K=KTS,KTE
85 DO I=ITS,ITE
86 T(I,K,J)=T(I,K,J)+DELTPH*T_ADJ(I,K,J)
87 ENDDO
88 ENDDO
89 ENDDO
90 ENDIF
91 !----------------------------------------------------------------------
92 !
93 END SUBROUTINE CLTEND
94 !
95 !----------------------------------------------------------------------