*IF DEF,A05_3C FLAGW3C.2 C ******************************COPYRIGHT****************************** FLAGW3C.3 C (c) CROWN COPYRIGHT 1997, METEOROLOGICAL OFFICE, All Rights Reserved. FLAGW3C.4 C FLAGW3C.5 C Use, duplication or disclosure of this code is subject to the FLAGW3C.6 C restrictions as set forth in the contract. FLAGW3C.7 C FLAGW3C.8 C Meteorological Office FLAGW3C.9 C London Road FLAGW3C.10 C BRACKNELL FLAGW3C.11 C Berkshire UK FLAGW3C.12 C RG12 2SZ FLAGW3C.13 C FLAGW3C.14 C If no contract has been raised with this copy of the code, the use, FLAGW3C.15 C duplication or disclosure of it is strictly prohibited. Permission FLAGW3C.16 C to do so must first be obtained in writing from the Head of Numerical FLAGW3C.17 C Modelling at the above address. FLAGW3C.18 C ******************************COPYRIGHT****************************** FLAGW3C.19 C FLAGW3C.20 CLL SUBROUTINE FLAG_WET----------------------------------------------- FLAGW3C.21 CLL FLAGW3C.22 CLL PURPOSE : CALCULATES A MASK FOR WHEN CONDENSATION IS LIQUID FLAGW3C.23 CLL FLAGW3C.24 CLL IF 0.5 * (TK + TK+1) > TICE THEN ANY CONDENSATION FLAGW3C.25 CLL IN LAYER K+1 IS LIQUID FLAGW3C.26 CLL FLAGW3C.27 CLL IF 0.5 * (TK + TK+1) < TICE THEN ANY CONDENSATION FLAGW3C.28 CLL IN LAYER K+1 IS ICE FLAGW3C.29 CLL FLAGW3C.30 CLL SUITABLE FOR SINGLE COLUMN MODEL USE FLAGW3C.31 CLL FLAGW3C.32 CLL CODE REWORKED FOR CRAY Y-MP BY D.GREGORY AUTUMN/WINTER 1989/90 FLAGW3C.33 CLL FLAGW3C.34 CLL MODEL MODIFICATION HISTORY: FLAGW3C.35 CLL VERSION DATE FLAGW3C.36 !LL 4.4 17/10/97 New version optimised for T3E. FLAGW3C.37 !LL Single PE optimisations D.Salmond FLAGW3C.38 !LL 4.5 03/03/98 Correct level swapping in loop. R. Rawlins ADR1F405.78 CLL FLAGW3C.39 CLL PROGRAMMING STANDARDS : FLAGW3C.40 CLL FLAGW3C.41 CLL SYSTEM TASK : P27 FLAGW3C.42 CLL FLAGW3C.43 CLL DOCUMENTATION : UNIFIED MODEL DOCUMENTATION PAPER 27 FLAGW3C.44 CLL SECTION (2B) FLAGW3C.45 CLL FLAGW3C.46 CLLEND----------------------------------------------------------------- FLAGW3C.47 C FLAGW3C.48 C*L ARGUMENTS--------------------------------------------------------- FLAGW3C.49 C FLAGW3C.50SUBROUTINE FLAG_WET (BWATER,TH,EXNER,PSTAR,AKH,BKH, 4FLAGW3C.51 & NP_FIELD,NPNTS,NLEV) FLAGW3C.52 C FLAGW3C.53 C----------------------------------------------------------------------- FLAGW3C.54 C RETURNS 'BWATER' - A BIT VECTOR OF POINTS WHERE CONDENSATE IS WATER FLAGW3C.55 C RATHER THAN ICE. FLAGW3C.56 C----------------------------------------------- AUTHOR: M FISHER 1987 - FLAGW3C.57 C FLAGW3C.58 IMPLICIT NONE FLAGW3C.59 C FLAGW3C.60 C---------------------------------------------------------------------- FLAGW3C.61 C MODEL CONSTANTS FLAGW3C.62 C---------------------------------------------------------------------- FLAGW3C.63 C FLAGW3C.64 *CALL TICE
FLAGW3C.65 *CALL C_R_CP
FLAGW3C.66 C FLAGW3C.67 C---------------------------------------------------------------------- FLAGW3C.68 C VECTOR LENGTHS AND LOOP COUNTERS FLAGW3C.69 C---------------------------------------------------------------------- FLAGW3C.70 C FLAGW3C.71 INTEGER NP_FIELD ! IN FULL VECTOR LENGTH FLAGW3C.72 C FLAGW3C.73 INTEGER NPNTS ! IN VECTOR LENGTH FLAGW3C.74 C FLAGW3C.75 INTEGER NLEV ! IN NUMBER OF MODEL LAYERS FLAGW3C.76 C FLAGW3C.77 INTEGER I,K ! LOOP COUNTERS FLAGW3C.78 C FLAGW3C.79 C FLAGW3C.80 C---------------------------------------------------------------------- FLAGW3C.81 C VARIABLES WHICH ARE INPUT FLAGW3C.82 C---------------------------------------------------------------------- FLAGW3C.83 C FLAGW3C.84 REAL TH(NP_FIELD,NLEV) ! IN POTENTIAL TEMPERATURE (K) FLAGW3C.85 C FLAGW3C.86 REAL EXNER(NP_FIELD,NLEV+1) ! IN EXNER RATIO AT LAYER FLAGW3C.87 ! BOUNDARIES (STARTING WITH THE FLAGW3C.88 ! SURFACE) FLAGW3C.89 C FLAGW3C.90 REAL PSTAR(NPNTS) ! IN Surface pressure FLAGW3C.91 C FLAGW3C.92 REAL AKH(NLEV+1) ! IN Hybrid coordinate A at FLAGW3C.93 ! layer boundary FLAGW3C.94 REAL BKH(NLEV+1) ! IN Hybrid coordinate B at FLAGW3C.95 ! layer boundary FLAGW3C.96 C FLAGW3C.97 C---------------------------------------------------------------------- FLAGW3C.98 C VARIABLES WHICH ARE OUTPUT FLAGW3C.99 C---------------------------------------------------------------------- FLAGW3C.100 C FLAGW3C.101 LOGICAL BWATER(NPNTS,2:NLEV) ! OUT MASK FOR THOSE POINTS AT FLAGW3C.102 ! WHICH CONDENSATE IS LIQUID FLAGW3C.103 C FLAGW3C.104 C FLAGW3C.105 C---------------------------------------------------------------------- FLAGW3C.106 C VARIABLES WHICH ARE DEFINED LOCALLY FLAGW3C.107 C---------------------------------------------------------------------- FLAGW3C.108 C FLAGW3C.109 REAL EXK ! EXNER RATIO FOR LEVEL K FLAGW3C.110 REAL EXKP1 ! EXNER RATIO FOR LEVEL K+1 FLAGW3C.111 REAL EX(NPNTS,2) ! EXNER pressure at levels K & K+1 FLAGW3C.112 INTEGER KL,K1,K2 FLAGW3C.113 C FLAGW3C.114 FLAGW3C.115 REAL FLAGW3C.116 & PU,PL,PU2 FLAGW3C.117 *CALL P_EXNERC
FLAGW3C.118 FLAGW3C.119 C*--------------------------------------------------------------------- FLAGW3C.120 CL FLAGW3C.121 CL--------------------------------------------------------------------- FLAGW3C.122 CL NO SIGNIFICANT STRUCTURE FLAGW3C.123 CL--------------------------------------------------------------------- FLAGW3C.124 CL FLAGW3C.125 K=1 FLAGW3C.126 K1=1 FLAGW3C.127 K2=2 FLAGW3C.128 DO I=1,NPNTS FLAGW3C.129 PU=PSTAR(I)*BKH(K+1) + AKH(K+1) FLAGW3C.130 PL=PSTAR(I)*BKH(K) + AKH(K) FLAGW3C.131 EX(I,K1) = P_EXNER_C(EXNER(I,K+1),EXNER(I,K),PU,PL,KAPPA) FLAGW3C.132 ENDDO FLAGW3C.133 DO K=1,NLEV-1 FLAGW3C.134 DO I=1,NPNTS FLAGW3C.135 FLAGW3C.136 PU2=PSTAR(I)*BKH(K+2) + AKH(K+2) FLAGW3C.137 PU=PSTAR(I)*BKH(K+1) + AKH(K+1) FLAGW3C.138 EX(I,K2) = P_EXNER_C(EXNER(I,K+2),EXNER(I,K+1),PU2,PU,KAPPA) FLAGW3C.139 FLAGW3C.140 BWATER(I,K+1) = 0.5*(TH(I,K)*EX(I,K1) + FLAGW3C.141 * TH(I,K+1)*EX(I,K2)) .GT. TICE FLAGW3C.142 ENDDO FLAGW3C.143 KL=K2 ADR1F405.79 K2=K1 FLAGW3C.145 K1=KL FLAGW3C.146 ENDDO FLAGW3C.147 C FLAGW3C.148 RETURN FLAGW3C.149 END FLAGW3C.150 *ENDIF FLAGW3C.151