*IF DEF,A03_5A BL_IC5A.2 C *****************************COPYRIGHT****************************** BL_IC5A.3 C (c) CROWN COPYRIGHT 1996, METEOROLOGICAL OFFICE, All Rights Reserved. BL_IC5A.4 C BL_IC5A.5 C Use, duplication or disclosure of this code is subject to the BL_IC5A.6 C restrictions as set forth in the contract. BL_IC5A.7 C BL_IC5A.8 C Meteorological Office BL_IC5A.9 C London Road BL_IC5A.10 C BRACKNELL BL_IC5A.11 C Berkshire UK BL_IC5A.12 C RG12 2SZ BL_IC5A.13 C BL_IC5A.14 C If no contract has been raised with this copy of the code, the use, BL_IC5A.15 C duplication or disclosure of it is strictly prohibited. Permission BL_IC5A.16 C to do so must first be obtained in writing from the Head of Numerical BL_IC5A.17 C Modelling at the above address. BL_IC5A.18 C ******************************COPYRIGHT****************************** BL_IC5A.19 CLL Subroutine BL_INTCT ------------------------------------------- BL_IC5A.20 CLL BL_IC5A.21 CLL Purpose : Intermediate control level to call requested version of BL_IC5A.22 CLL BDY_LAYR with the appropriate arguments. BL_IC5A.23 CLL BL_IC5A.24 CLL Level 3 control routine BL_IC5A.25 CLL version for CRAY YMP BL_IC5A.26 CLL BL_IC5A.27 CLL Model Modification history: BL_IC5A.28 CLL version Date BL_IC5A.29 CLL 4.1 5/6/96 new deck. C.Bunton BL_IC5A.30 CLL BL_IC5A.31 CLL 4.3 04/02/97 Logical switches L_MOM and L_MIXLEN passed down ARN1F403.16 CLL to BDY_LYR. ARN1F403.17 CLL R.N.B.Smith ARN1F403.18 CLL ARN1F403.19 CLL 4.4 08/09/97 Logical switch L_BL_LSPICE specifies mixed phase ADM3F404.47 CLL precipitation scheme. D.Wilson ADM3F404.48 CLL ADM3F404.49 !!! 4.4 18/09/97 Extra arguments RAD_HR and RADHR_DIM1 for BDYLYR6A ARN1F404.162 !!! Cyndy Bunton ARN1F404.163 !!! 4.5 24/4/98 New diagnostics ZHT and BL_TYPE_1 to _6 for ARN0F405.128 !!! BDYLYR6A R.N.B.Smith ARN0F405.129 !!! 4.5 Jul. 98 Kill the IBM specific lines. (JCThil) AJC1F405.343 !!! 4.5 27/04/98 Add dummy arguments LAND_FIELD_TRIF, NPFT_TRIF, ABX1F405.697 !!! GPP_FT, RESP_P_FT, TILE_FRAC, L_PHENOL and L_TRIFFID ABX1F405.698 !!! and change TILE_INDEX and TILE_PTS from IN to OUT, ABX1F405.699 !!! consistent with changes to BL_CTL required for ABX1F405.700 !!! TRIFFID. ABX1F405.701 !!! Richard Betts ABX1F405.702 CLL Programming standard : unified model documentation paper No 3 BL_IC5A.32 CLL BL_IC5A.33 CLL System components covered : P24 BL_IC5A.34 CLL BL_IC5A.35 CLL System task : P0 BL_IC5A.36 CLL BL_IC5A.37 CLLEND ----------------------------------------------------------------- BL_IC5A.38 C Arguments :- BL_IC5A.39SUBROUTINE BL_INTCT( 2,8BL_IC5A.40 BL_IC5A.41 C IN values defining field dimensions and subset to be processed : BL_IC5A.42 + P_FIELD,U_FIELD,LAND_FIELD,LAND_FIELD_TRIF,NPFT_TRIF, ABX1F405.703 + P_ROWS,FIRST_ROW,N_ROWS,ROW_LENGTH, BL_IC5A.44 BL_IC5A.45 C IN values defining vertical grid of model atmosphere : BL_IC5A.46 + BL_LEVELS,P_LEVELS,AK,BK,AKH,BKH,DELTA_AK,DELTA_BK, BL_IC5A.47 + EXNER, BL_IC5A.48 BL_IC5A.49 C IN soil/vegetation/land surface data : BL_IC5A.50 + LAND_MASK,GATHER,LAND_INDEX, BL_IC5A.55 + ST_LEVELS,SM_LEVELS,CANHT,CANOPY,CATCH,HCAP, BL_IC5A.56 + HCON,LAI,LAYER_DEPTH, BL_IC5A.57 + LYING_SNOW,RESIST,ROOTD,SMC,SMVCCL,SMVCST,SMVCWT, BL_IC5A.59 + VFRAC,Z0V,SIL_OROG_LAND,L_Z0_OROG, BL_IC5A.60 + HO2R2_OROG, BL_IC5A.61 BL_IC5A.62 C IN sea/sea-ice data : BL_IC5A.63 + DI,ICE_FRACT,U_0,V_0, BL_IC5A.64 BL_IC5A.65 C IN cloud data : BL_IC5A.66 + CF,QCF,QCL, BL_IC5A.67 + CCA,CCB,CCT, BL_IC5A.68 BL_IC5A.69 C IN everything not covered so far : BL_IC5A.70 & RAD_HR,RADHR_DIM1, ARN1F404.164 + CO2_MMR,PHOTOSYNTH_ACT_RAD,PSTAR,RADNET,TIMESTEP, BL_IC5A.71 + L_RMBL,L_BL_LSPICE,L_MOM,L_MIXLEN, ADM3F404.50 BL_IC5A.73 C INOUT data : BL_IC5A.74 + GS,Q,STHF,STHU,T,T_DEEP_SOIL,TI,TSTAR,U,V,Z0MSEA, BL_IC5A.75 BL_IC5A.76 C OUT Diagnostic not requiring STASH flags : BL_IC5A.77 + CD,CH,E_SEA,ETRAN,FQW,FTL,GPP,H_SEA, BL_IC5A.78 + NPP,RESP_P,RHOKH,RHOKM,RIB,SEA_ICE_HTF, BL_IC5A.79 + TAUX,TAUY,VSHR,ZHT, ARN0F405.130 + EPOT,FSMC, ANG1F405.51 BL_IC5A.81 C OUT diagnostic requiring STASH flags : BL_IC5A.82 + FME,SICE_MLT_HTF,SNOMLT_SURF_HTF,LATENT_HEAT, BL_IC5A.83 + Q1P5M,T1P5M,U10M,V10M, BL_IC5A.84 C (IN) STASH flags :- BL_IC5A.85 + SFME,SIMLT,SMLT,SLH,SQ1P5,ST1P5,SU10,SV10, BL_IC5A.86 BL_IC5A.87 C OUT data required for tracer mixing : BL_IC5A.88 & RHO_ARESIST,ARESIST,RESIST_B, BL_IC5A.89 & NRML, BL_IC5A.90 BL_IC5A.91 C OUT data required for 4D_VAR : BL_IC5A.92 & RHO_CD_MODV1,RHO_KM, BL_IC5A.93 BL_IC5A.94 C OUT data required elsewhere in UM system : BL_IC5A.95 & BL_TYPE_1,BL_TYPE_2,BL_TYPE_3,BL_TYPE_4,BL_TYPE_5,BL_TYPE_6, ARN0F405.131 + ECAN,EI,ES,EXT,SNOWMELT, BL_IC5A.96 + SURF_HT_FLUX,ZH,T1_SD,Q1_SD,ERROR, BL_IC5A.97 BL_IC5A.98 ! Additional arguments for 7A boundary layer (MOSES II) ARE1F404.205 ! IN ARE1F404.206 & L_PHENOL,L_TRIFFID,L_NEG_TSTAR, ABX1F405.704 & CANHT_FT,CANOPY_TILE,CATCH_TILE,CS,LAI_FT, ARE1F404.208 & FRAC,SNOW_FRAC,RAD_NO_SNOW,RAD_SNOW,TSNOW,Z0V_TILE, ARE1F404.209 & CO2_3D,CO2_DIM,L_CO2_INTERACTIVE, ACN1F405.106 ! INOUT ARE1F404.210 & TSTAR_TILE, ARE1F404.211 & G_LEAF_ACC,NPP_FT_ACC,RESP_W_FT_ACC,RESP_S_ACC, ARE1F404.212 ! OUT ARE1F404.213 & ECAN_TILE,ESOIL_TILE,FTL_TILE, ARE1F404.214 & G_LEAF,GPP_FT,NPP_FT,RESP_P_FT,RESP_S,RESP_W_FT, ABX1F405.705 & RHO_ARESIST_TILE,ARESIST_TILE,RESIST_B_TILE, ARE1F404.216 & RIB_TILE,SNOW_SURF_HTF,SOIL_SURF_HTF, ARE1F404.217 & TILE_INDEX,TILE_PTS,TILE_FRAC, ABX1F405.706 ARE1F404.218 C LOGICAL LTIMER BL_IC5A.99 + LTIMER BL_IC5A.100 *IF DEF,SCMA AJC0F405.28 & ,FACTOR_RHOKH,OBS AJC0F405.29 *ENDIF AJC0F405.30 +) BL_IC5A.101 IMPLICIT NONE BL_IC5A.102 C BL_IC5A.103 C Inputs :- BL_IC5A.104 C BL_IC5A.105 C (a) Defining horizontal grid and subset thereof to be processed. BL_IC5A.106 C BL_IC5A.107 INTEGER BL_IC5A.108 + P_FIELD ! IN No. of P-points in whole grid BL_IC5A.109 C ! (for dimensioning only). BL_IC5A.110 +,RADHR_DIM1 ! IN Dimension for RAD_HR ARN1F404.165 +,U_FIELD ! IN No. of UV-points in whole grid. BL_IC5A.114 C ! (Checked for consistency with BL_IC5A.116 C ! P_FIELD and P_ROWS; there must BL_IC5A.117 C ! be 1 less UV than P row.) BL_IC5A.118 +,LAND_FIELD ! IN No.of land points in whole grid. BL_IC5A.122 C ! (Checked for consistency with BL_IC5A.124 C ! P_FIELD ) BL_IC5A.125 +,P_ROWS ! IN No. of P-rows in whole grid BL_IC5A.130 C ! (for dimensioning only). BL_IC5A.131 +,FIRST_ROW ! IN First row of data to be treated, BL_IC5A.135 C ! referred to P-grid (must be > 1 BL_IC5A.137 C ! since "polar" rows are never BL_IC5A.138 C ! treated). BL_IC5A.139 +,N_ROWS ! IN No. of rows of data to be BL_IC5A.143 C ! treated, referred to P-grid. BL_IC5A.144 C ! FIRST_ROW+N_ROWS-1 must be less BL_IC5A.146 C ! than P_ROWS, since "polar" rows BL_IC5A.147 C ! are never treated. BL_IC5A.148 +,ROW_LENGTH ! IN No. of points in one row. BL_IC5A.152 C ! (Checked for consistency with BL_IC5A.154 C ! P_FIELD and N_ROWS.) BL_IC5A.155 C BL_IC5A.159 C (b) Defining vertical grid of model atmosphere. BL_IC5A.160 C BL_IC5A.161 INTEGER BL_IC5A.162 + BL_LEVELS ! IN Max. no. of "boundary" levels BL_IC5A.163 C ! allowed.Assumed <= 30 for dim- BL_IC5A.164 C ! sioning of GAMMA in common deck BL_IC5A.165 C ! C_GAMMA used in SF_EXCH and KMKH BL_IC5A.166 +,P_LEVELS ! IN Total no. of vertical levels in BL_IC5A.167 C ! the model atmosphere. BL_IC5A.168 REAL BL_IC5A.169 + AK(P_LEVELS) ! IN Hybrid 'A' for all levels. BL_IC5A.170 +,BK(P_LEVELS) ! IN Hybrid 'B' for all levels. BL_IC5A.171 +,AKH(P_LEVELS+1) ! IN Hybrid 'A' for layer interfaces. BL_IC5A.172 +,BKH(P_LEVELS+1) ! IN Hybrid 'B' for layer interfaces. BL_IC5A.173 +,DELTA_AK(P_LEVELS) ! IN Difference of hybrid 'A' across BL_IC5A.174 C ! layers (K-1/2 to K+1/2). BL_IC5A.175 C ! NB: Upper minus lower. BL_IC5A.176 +,DELTA_BK(P_LEVELS) ! IN Difference of hybrid 'B' across BL_IC5A.177 C ! layers (K-1/2 to K+1/2). BL_IC5A.178 C ! NB: Upper minus lower. BL_IC5A.179 +,EXNER(P_FIELD,BL_LEVELS+1) ! IN Exner function. EXNER(,K) is BL_IC5A.180 C ! value for LOWER BOUNDARY of BL_IC5A.181 C ! level K. BL_IC5A.182 C BL_IC5A.183 C (c) Soil/vegetation/land surface parameters (mostly constant). BL_IC5A.184 C BL_IC5A.185 LOGICAL BL_IC5A.186 + LAND_MASK(P_FIELD) ! IN T if land, F elsewhere. BL_IC5A.187 &,L_CO2_INTERACTIVE ! dummy CO2 variable - not used with A03_5A. ACN1F405.107 +,GATHER ! IN T if gather to sea-ice points BL_IC5A.188 C ! in SF_EXCH. Saves a lot of un- BL_IC5A.189 C ! necessary calculations if there BL_IC5A.190 C ! are relatively few sea-ice points BL_IC5A.191 +,L_RMBL ! IN T to use rapidly mixing BL_IC5A.192 C ! boundary scheme in IMPL_CAL BL_IC5A.193 +,L_BL_LSPICE ! IN ADM3F404.51 ! TRUE Use scientific treatment of mixed ADM3F404.52 ! phase precip scheme. ADM3F404.53 ! FALSE Do not use mixed phase precip ADM3F404.54 ! considerations ADM3F404.55 &,L_MOM ! IN Switch for convective momentum ARN1F403.21 C ! transport. ARN1F403.22 &,L_MIXLEN ! IN Switch for reducing the turbulent ARN1F403.23 C ! mixing length above the top of the ARN1F403.24 C ! boundary layer. ARN1F403.25 +,L_Z0_OROG ! IN T to use simple orog.roughness BL_IC5A.194 C ! treatment in SF_EXCH BL_IC5A.195 INTEGER BL_IC5A.197 + LAND_INDEX(P_FIELD) ! IN LAND_INDEX(I)=J => the Jth BL_IC5A.198 C ! point in P_FIELD is the Ith BL_IC5A.199 C ! land point. BL_IC5A.200 INTEGER BL_IC5A.202 + ST_LEVELS ! IN No. of deep soil temp. levels BL_IC5A.203 +,SM_LEVELS ! IN No. of soil moisture levels BL_IC5A.204 &,CO2_DIM ! dummy CO2 variable - field not used with A03_5A. ACN1F405.108 C BL_IC5A.205 REAL BL_IC5A.206 + CANHT(LAND_FIELD) ! IN Canopy height (m) BL_IC5A.207 +,CANOPY(LAND_FIELD) ! IN Surface/canopy water (kg per sq m) BL_IC5A.208 +,CATCH(LAND_FIELD) ! IN Surface/canopy water capacity BL_IC5A.209 C ! (kg per sq m). BL_IC5A.210 +,HCAP(LAND_FIELD) ! IN Soil heat capacity (J/K/m**3) BL_IC5A.211 +,HCON(LAND_FIELD) ! IN Soil thermal conductivity (W/m/K). BL_IC5A.212 +,HO2R2_OROG(LAND_FIELD) ! IN Dummy used only in version 3A. BL_IC5A.213 BL_IC5A.214 +,LAI(LAND_FIELD) ! IN Leaf area index BL_IC5A.215 +,LAYER_DEPTH(SM_LEVELS) ! Dummy Variable not used BL_IC5A.216 C ! in this version BL_IC5A.217 +,LYING_SNOW(P_FIELD) ! IN Lying snow (kg per sq m). BL_IC5A.218 C ! Must be global for coupled model, BL_IC5A.220 C ! ie dimension P_FIELD not LAND_FIEL BL_IC5A.221 +,RESIST(LAND_FIELD) ! IN "Stomatal" resistance to BL_IC5A.223 C ! evaporation (seconds per metre). BL_IC5A.224 +,ROOTD(LAND_FIELD) ! IN Depth of active soil layer ("root BL_IC5A.225 C ! depth") (metres). BL_IC5A.226 +,SMC(LAND_FIELD) ! IN Soil moisture content (kg / sq m). BL_IC5A.227 +,SMVCCL(LAND_FIELD) ! IN Critical volumetric SMC (cubic m BL_IC5A.228 C ! per cubic m of soil). BL_IC5A.229 +,SMVCST(LAND_FIELD) ! IN Volumetric saturation point (cubic BL_IC5A.230 C ! per cubic m of soil). BL_IC5A.231 +,SMVCWT(LAND_FIELD) ! IN Volumetric wilting point (cubic m BL_IC5A.232 C ! per cubic m of soil). BL_IC5A.233 +,VFRAC(LAND_FIELD) ! IN Vegetation fraction. BL_IC5A.234 +,Z0V(P_FIELD) ! IN Vegetative roughness length (m). BL_IC5A.235 C ! NB:UM uses same storage for Z0MSEA BL_IC5A.236 C ! so for sea points this is INOUT. BL_IC5A.237 +,SIL_OROG_LAND(LAND_FIELD) ! IN Dummy used only in version 3A. BL_IC5A.238 C BL_IC5A.239 C (d) Sea/sea-ice data. BL_IC5A.240 C BL_IC5A.241 REAL BL_IC5A.242 + DI(P_FIELD) ! IN "Equivalent thickness" of sea-ice BL_IC5A.243 C ! (m). BL_IC5A.244 +,ICE_FRACT(P_FIELD) ! IN Fraction of gridbox covered by BL_IC5A.245 C ! sea-ice (decimal fraction). BL_IC5A.246 +,U_0(U_FIELD) ! IN W'ly component of surface current BL_IC5A.247 C ! (metres per second). BL_IC5A.248 +,V_0(U_FIELD) ! IN S'ly component of surface current BL_IC5A.249 C ! (metres per second). BL_IC5A.250 C BL_IC5A.251 C (e) Cloud data. BL_IC5A.252 C BL_IC5A.253 REAL BL_IC5A.254 + CF(P_FIELD,BL_LEVELS) ! IN Cloud fraction (decimal). BL_IC5A.255 +,QCF(P_FIELD,BL_LEVELS) ! IN Cloud ice (kg per kg air) BL_IC5A.256 +,QCL(P_FIELD,BL_LEVELS) ! IN Cloud liquid water (kg BL_IC5A.257 C ! per kg air). BL_IC5A.258 +,CCA(P_FIELD) ! IN Convective Cloud Amount (decimal). BL_IC5A.259 INTEGER BL_IC5A.260 + CCB(P_FIELD) ! IN Convective Cloud Base BL_IC5A.261 +,CCT(P_FIELD) ! IN Convective Cloud Top BL_IC5A.262 C BL_IC5A.263 C (f) Atmospheric + any other data not covered so far, incl control. BL_IC5A.264 C BL_IC5A.265 REAL BL_IC5A.266 + CO2_MMR ! IN CO2 Mass Mixing Ratio BL_IC5A.267 *IF DEF,SCMA AJC0F405.31 & ,FACTOR_RHOKH(P_FIELD) ! IN Factor for modifying surface AJC0F405.32 ! fluxes if OBS forcing used AJC0F405.33 *ENDIF AJC0F405.34 &,CO2_3D ! dummy CO2 variable - field not used with A03_5A. ACN1F405.109 +,PHOTOSYNTH_ACT_RAD(P_FIELD) ! IN Net downward shortwave radiation BL_IC5A.268 C ! in band 1 (w/m2). BL_IC5A.269 +,PSTAR(P_FIELD) ! IN Surface pressure (Pascals). BL_IC5A.270 +,RADNET(P_FIELD) ! IN Surface net radiation (W/sq m, BL_IC5A.271 C ! positive downwards). BL_IC5A.272 +,RAD_HR(RADHR_DIM1,BL_LEVELS) ARN1F404.166 ! ! IN Radiative heating rates ARN1F404.167 ! ! - not used in A03_5A. ARN1F404.168 +,TIMESTEP ! IN Timestep (seconds). BL_IC5A.273 C BL_IC5A.274 LOGICAL LTIMER ! Logical switch for TIMER diags BL_IC5A.275 *IF DEF,SCMA AJC0F405.35 LOGICAL OBS ! IN flag for Observational AJC0F405.36 ! diagnostics for SCM AJC0F405.37 *ENDIF AJC0F405.38 C BL_IC5A.276 C STASH flags :- BL_IC5A.277 C BL_IC5A.278 LOGICAL BL_IC5A.279 + SFME ! IN Flag for FME (q.v.). BL_IC5A.280 +,SMLT ! IN Flag for SICE_MLT_HTF (q.v.) BL_IC5A.281 +,SIMLT ! IN Flag BL_IC5A.282 +,SLH ! IN Flag for LATENT_HEAT (q.v.) BL_IC5A.283 +,SQ1P5 ! IN Flag for Q1P5M (q.v.) BL_IC5A.284 +,ST1P5 ! IN Flag for T1P5M (q.v.) BL_IC5A.285 +,SU10 ! IN Flag for U10M (q.v.) BL_IC5A.286 +,SV10 ! IN Flag for V10M (q.v.) BL_IC5A.287 C BL_IC5A.288 C In/outs :- BL_IC5A.289 C BL_IC5A.290 REAL BL_IC5A.291 + GS(LAND_FIELD) ! INOUT "Stomatal" conductance to BL_IC5A.292 C ! evaporation (m/s). BL_IC5A.293 +,Q(P_FIELD,BL_LEVELS) ! INOUT Input:specific humidity BL_IC5A.294 C ! ( kg water per kg air). BL_IC5A.295 C ! Output:total water content BL_IC5A.296 C ! (Q)(kg water per kg air). BL_IC5A.297 +,STHF(LAND_FIELD,SM_LEVELS) ! INOUT Frozen soil moisture BL_IC5A.298 C ! content of each layer BL_IC5A.299 C ! as a fraction of BL_IC5A.300 C ! saturation. BL_IC5A.301 +,STHU(LAND_FIELD,SM_LEVELS) ! INOUT UNfrozen soil moisture BL_IC5A.302 C ! content of each layer BL_IC5A.303 C ! as a fraction of BL_IC5A.304 C ! saturation. BL_IC5A.305 +,T(P_FIELD,BL_LEVELS) ! INOUT Input:atmospheric temp(K) BL_IC5A.306 C ! Output:liquid/frozen water BL_IC5A.307 C ! temperature (TL) (K) BL_IC5A.308 +,T_DEEP_SOIL(LAND_FIELD,ST_LEVELS) ! INOUT Deep soil temperatures BL_IC5A.309 C ! (K). BL_IC5A.310 +,TI(P_FIELD) ! INOUT Sea-ice surface layer BL_IC5A.311 C ! temperature (K) BL_IC5A.312 +,TSTAR(P_FIELD) ! INOUT Surface temperature BL_IC5A.313 C ! (= top soil layer BL_IC5A.314 C ! temperature) (K). BL_IC5A.315 +,U(U_FIELD,BL_LEVELS) ! INOUT W'ly wind component BL_IC5A.316 C ! (metres per second). BL_IC5A.317 +,V(U_FIELD,BL_LEVELS) ! INOUT S'ly wind component BL_IC5A.318 C ! (metres per second). BL_IC5A.319 +,Z0MSEA(P_FIELD) ! INOUT Sea-surface roughness BL_IC5A.320 C ! length for momentum (m). BL_IC5A.321 C ! NB: same storage is used BL_IC5A.322 C ! for Z0V, so the intent is BL_IC5A.323 C ! IN for land points. BL_IC5A.324 C BL_IC5A.325 C Outputs :- BL_IC5A.326 C BL_IC5A.327 C-1 Diagnostic (or effectively so - includes coupled model requisites):- BL_IC5A.328 C BL_IC5A.329 C (a) Calculated anyway (use STASH space from higher level) :- BL_IC5A.330 C BL_IC5A.331 REAL BL_IC5A.332 & BL_TYPE_1(P_FIELD) ! OUT Dummy (diagnostics for BDYLYR6A) ARN0F405.132 &,BL_TYPE_2(P_FIELD) ! OUT Dummy (diagnostics for BDYLYR6A) ARN0F405.133 &,BL_TYPE_3(P_FIELD) ! OUT Dummy (diagnostics for BDYLYR6A) ARN0F405.134 &,BL_TYPE_4(P_FIELD) ! OUT Dummy (diagnostics for BDYLYR6A) ARN0F405.135 &,BL_TYPE_5(P_FIELD) ! OUT Dummy (diagnostics for BDYLYR6A) ARN0F405.136 &,BL_TYPE_6(P_FIELD) ! OUT Dummy (diagnostics for BDYLYR6A) ARN0F405.137 +,CD(P_FIELD) ! OUT Turbulent surface exchange (bulk ARN0F405.138 C ! transfer) coefficient for BL_IC5A.334 C ! momentum. BL_IC5A.335 +,CH(P_FIELD) ! OUT Turbulent surface exchange (bulk BL_IC5A.336 C ! transfer) coefficient for heat BL_IC5A.337 C ! and/or moisture. BL_IC5A.338 +,E_SEA(P_FIELD) ! OUT Evaporation from sea times leads BL_IC5A.339 C ! fraction. Zero over land. BL_IC5A.340 C ! (kg per square metre per sec). BL_IC5A.341 +,EPOT(P_FIELD) ! OUT potential evaporation (kg/m2/s). ANG1F405.52 +,ETRAN(P_FIELD) ! OUT Transpiration (kg/m2/s). BL_IC5A.342 +,EXT(LAND_FIELD,SM_LEVELS) BL_IC5A.343 C ! OUT Extraction of water from BL_IC5A.344 C ! each soil layer (kg/m2/s) BL_IC5A.345 +,FQW(P_FIELD,BL_LEVELS) ! OUT Moisture flux between layers BL_IC5A.346 C ! (kg per square metre per sec). BL_IC5A.347 C ! FQW(,1) is total water flux BL_IC5A.348 C ! from surface, 'E'. BL_IC5A.349 +,FSMC(LAND_FIELD) ! OUT soil moisture availability. ANG1F405.53 +,FTL(P_FIELD,BL_LEVELS) ! OUT FTL(,K) contains net turbulent BL_IC5A.350 C ! sensible heat flux into layer K BL_IC5A.351 C ! from below; so FTL(,1) is the BL_IC5A.352 C ! surface sensible heat, H. (W/m2) BL_IC5A.353 +,GPP(LAND_FIELD) ! OUT Gross primary productivity BL_IC5A.354 C ! (kg C/m2/s). BL_IC5A.355 +,H_SEA(P_FIELD) ! OUT Surface sensible heat flux over BL_IC5A.356 C ! sea times leads fraction. (W/m2) BL_IC5A.357 +,NPP(LAND_FIELD) ! OUT Net primary productivity BL_IC5A.358 C ! (kg C/m2/s). BL_IC5A.359 +,RESP_P(LAND_FIELD) ! OUT Plant respiration (kg C/m2/s). BL_IC5A.360 BL_IC5A.361 +,RHOKH(P_FIELD,BL_LEVELS) ! OUT Exchange coeffs for moisture. BL_IC5A.362 C ! Surface:out of SF_EXCH containing BL_IC5A.363 C ! GAMMA(1)*RHOKH,after IMPL_CAL BL_IC5A.364 C ! contains only RHOKH. BL_IC5A.365 C ! Above surface:out of KMKH cont- BL_IC5A.366 C ! aining GAMMA(1)*RHOKH(,1)*RDZ(,1) BL_IC5A.367 +,RHOKM(U_FIELD,BL_LEVELS) ! OUT Exchange coefficients for BL_IC5A.368 C ! momentum (on UV-grid, with 1st BL_IC5A.369 C ! and last rows undefined (or, at BL_IC5A.370 C ! present, set to "missing data")). BL_IC5A.371 C ! Surface:out of SF_EXCH containing BL_IC5A.372 C ! GAMMA(1)*RHOKH,after IMPL_CAL BL_IC5A.373 C ! contains only RHOKH. BL_IC5A.374 C ! Above surface:out of KMKH cont- BL_IC5A.375 C ! aining GAMMA(1)*RHOKH(,1)*RDZ(,1) BL_IC5A.376 +,RIB(P_FIELD) ! OUT Bulk Richardson number for lowest BL_IC5A.377 C ! layer. BL_IC5A.378 +,SEA_ICE_HTF(P_FIELD) ! OUT Heat flux through sea-ice (W per BL_IC5A.379 C ! sq m, positive downwards). BL_IC5A.380 +,SOIL_HT_FLUX(P_FIELD) ! OUT Dummy BL_IC5A.381 +,SURF_HT_FLUX(P_FIELD) ! OUT Net downward heat flux at surface BL_IC5A.382 ! ! over land or sea-ice fraction of BL_IC5A.383 ! ! gridbox (W/m2) BL_IC5A.384 +,TAUX(U_FIELD,BL_LEVELS) ! OUT W'ly component of surface wind BL_IC5A.385 C ! stress (N/sq m).(On UV-grid with BL_IC5A.386 C ! first and last rows undefined or BL_IC5A.387 C ! at present, set to 'missing data' BL_IC5A.388 +,TAUY(U_FIELD,BL_LEVELS) ! OUT S'ly component of surface wind BL_IC5A.389 C ! stress (N/sq m). On UV-grid; BL_IC5A.390 C ! comments as per TAUX. BL_IC5A.391 +,VSHR(P_FIELD) ! OUT Magnitude of surface-to-lowest BL_IC5A.392 &,ZHT(P_FIELD) ! OUT Dummy (diagnostics for BDYLYR6A) ARN0F405.139 ARN0F405.140 C ! atm level wind shear (m per s). BL_IC5A.393 C BL_IC5A.394 +,RHO_CD_MODV1(P_FIELD) ! OUT Surface air density * drag coef. BL_IC5A.395 C ! mod(v1 - v0) before interpolation. BL_IC5A.396 BL_IC5A.397 +,RHO_KM(P_FIELD,2:BL_LEVELS)! OUT Air density * turbulent mixing BL_IC5A.398 C ! coef. for momentum before BL_IC5A.399 +,RHO_ARESIST(P_FIELD) ! OUT, RHOSTAR*CD_STD*VSHR for SCYCLE BL_IC5A.400 +,ARESIST(P_FIELD) ! OUT, 1/(CD_STD*VSHR) for SCYCLE BL_IC5A.401 +,RESIST_B(P_FIELD) ! OUT,(1/CH-1/CD_STD)/VSHR for SCYCLE BL_IC5A.402 C BL_IC5A.403 INTEGER BL_IC5A.404 + NRML(P_FIELD) ! OUT Number of model layers in the BL_IC5A.405 C ! Rapidly Mixing Layer; diagnosed BL_IC5A.406 C ! in SF_EXCH and KMKH and used in BL_IC5A.407 C ! IMPL_CAL, SF_EVAP and TR_MIX. BL_IC5A.408 C BL_IC5A.409 C (b) Not passed between lower-level routines (not in workspace at this BL_IC5A.410 C level) :- BL_IC5A.411 C BL_IC5A.412 REAL BL_IC5A.413 + FME(P_FIELD) ! OUT Wind mixing "power" (W per sq m). BL_IC5A.414 +,SICE_MLT_HTF(P_FIELD) ! OUT Heat flux due to melting of sea- BL_IC5A.415 C ! ice (Watts per sq metre). BL_IC5A.416 +,SNOMLT_SURF_HTF(P_FIELD) BL_IC5A.417 +,LATENT_HEAT(P_FIELD) ! OUT Surface latent heat flux, +ve BL_IC5A.418 C ! upwards (Watts per sq m). BL_IC5A.419 +,Q1P5M(P_FIELD) ! OUT Q at 1.5 m (kg water per kg air). BL_IC5A.420 +,T1P5M(P_FIELD) ! OUT T at 1.5 m (K). BL_IC5A.421 +,U10M(U_FIELD) ! OUT U at 10 m (m per s). BL_IC5A.422 +,V10M(U_FIELD) ! OUT V at 10 m (m per s). BL_IC5A.423 C BL_IC5A.424 C-2 Genuinely output, needed by other atmospheric routines :- BL_IC5A.425 C BL_IC5A.426 REAL BL_IC5A.427 + ECAN(P_FIELD) ! OUT Gridbox mean evaporation from canopy/surface BL_IC5A.428 C ! store (kg per sq m per s). Zero over sea. BL_IC5A.429 +,EI(P_FIELD) ! OUT Sublimation from lying snow or sea-ice (kg BL_IC5A.430 C ! per sq m per sec). BL_IC5A.431 +,ES(P_FIELD) ! OUT Surface evapotranspiration through a BL_IC5A.432 C ! resistance which is not entirely aerodynamic BL_IC5A.433 C ! i.e. "soil evaporation". Always non- BL_IC5A.434 C ! negative. Kg per sq m per sec. BL_IC5A.435 +,SNOWMELT(P_FIELD) ! OUT Snowmelt (kg/m/s) BL_IC5A.436 +,ZH(P_FIELD) ! OUT Height above surface of top of boundary BL_IC5A.437 C ! layer (metres). BL_IC5A.438 &,T1_SD(P_FIELD) ! OUT Standard deviation of turbulent fluctuations BL_IC5A.439 C ! of layer 1 temperature; for use in BL_IC5A.440 C ! initiating convection. BL_IC5A.441 &,Q1_SD(P_FIELD) ! OUT Standard deviation of turbulent fluctuations BL_IC5A.442 C ! of layer 1 humidity; for use in initiating BL_IC5A.443 C ! convection. BL_IC5A.444 ! Additional arguments for 7A boundary layer (MOSES II) ARE1F404.219 *CALL NSTYPES
ARE1F404.220 INTEGER ARE1F404.221 & TILE_INDEX(NTYPE) ARE1F404.222 &,TILE_PTS(NTYPE) ARE1F404.223 &,LAND_FIELD_TRIF ABX1F405.707 &,NPFT_TRIF ABX1F405.708 REAL ARE1F404.224 & ARESIST_TILE(NTYPE) ARE1F404.225 &,CANHT_FT(NPFT) ARE1F404.226 &,CANOPY_TILE(NTYPE-1) ARE1F404.227 &,CATCH_TILE(NTYPE-1) ARE1F404.228 &,CS ARE1F404.229 &,ECAN_TILE(NTYPE-1) ARE1F404.230 &,ESOIL_TILE(NTYPE-1) ARE1F404.231 &,FRAC(NTYPE) ARE1F404.232 &,FTL_TILE(NTYPE) ARE1F404.233 &,G_LEAF(NPFT) ARE1F404.234 &,G_LEAF_ACC(NPFT) ARE1F404.235 &,GPP_FT(NPFT) ABX1F405.709 &,LAI_FT(NPFT) ARE1F404.236 &,NPP_FT(NPFT) ARE1F404.237 &,NPP_FT_ACC(NPFT) ARE1F404.238 &,RAD_NO_SNOW(P_FIELD) ARE1F404.239 &,RAD_SNOW(P_FIELD) ARE1F404.240 &,RESIST_B_TILE(NTYPE) ARE1F404.241 &,RESP_P_FT(NPFT) ABX1F405.710 &,RESP_S ARE1F404.242 &,RESP_S_ACC ARE1F404.243 &,RESP_W_FT(NPFT) ARE1F404.244 &,RESP_W_FT_ACC(NPFT) ARE1F404.245 &,RHO_ARESIST_TILE(NTYPE) ARE1F404.246 &,RIB_TILE(NTYPE) ARE1F404.247 &,SNOW_FRAC ARE1F404.248 &,SNOW_SURF_HTF ARE1F404.249 &,SOIL_SURF_HTF ARE1F404.250 &,TILE_FRAC(NPFT) ABX1F405.711 &,TSNOW ARE1F404.251 &,TSTAR_TILE(NTYPE) ARE1F404.252 &,Z0V_TILE(NTYPE) ARE1F404.253 LOGICAL ABX1F405.712 & L_PHENOL ABX1F405.713 &,L_TRIFFID ABX1F405.714 &,L_NEG_TSTAR ABX1F405.715 ARE1F404.254 INTEGER BL_IC5A.445 + ERROR ! OUT 0 - AOK; BL_IC5A.446 +,I BL_IC5A.447 C ! 1 to 7 - bad grid definition detected; BL_IC5A.449 C ! 11 - error in SF_EXCH; BL_IC5A.453 C ! 21 - error in KMKH; BL_IC5A.454 C ! 31 - error in IMPL_CAL; BL_IC5A.455 *IF -DEF,CRAY BL_IC5A.456 C ! 41 - error in SOIL_HTF. BL_IC5A.457 *ENDIF BL_IC5A.458 C*---------------------------------------------------------------------- BL_IC5A.459 BL_IC5A.460 CALL BDY_LAYR
( BL_IC5A.461 BL_IC5A.462 C IN values defining field dimensions and subset to be processed : BL_IC5A.463 + P_FIELD,U_FIELD,LAND_FIELD, BL_IC5A.464 + P_ROWS,FIRST_ROW,N_ROWS,ROW_LENGTH BL_IC5A.465 BL_IC5A.466 C IN values defining vertical grid of model atmosphere : BL_IC5A.467 +,BL_LEVELS,P_LEVELS,AK,BK,AKH,BKH,DELTA_AK,DELTA_BK BL_IC5A.468 +,EXNER BL_IC5A.469 BL_IC5A.470 C IN soil/vegetation/land surface data : BL_IC5A.471 +,LAND_MASK,GATHER,LAND_INDEX BL_IC5A.475 +,ST_LEVELS,SM_LEVELS,CANOPY,CATCH,HCON BL_IC5A.476 +,LYING_SNOW,RESIST,ROOTD,SMVCCL,SMVCST,SMVCWT BL_IC5A.478 +,STHF,STHU,VFRAC,Z0V,SIL_OROG_LAND BL_IC5A.479 +,L_Z0_OROG,HO2R2_OROG BL_IC5A.480 +,CANHT,LAI BL_IC5A.481 BL_IC5A.482 C IN sea/sea-ice data : BL_IC5A.483 +,DI,ICE_FRACT,U_0,V_0 BL_IC5A.484 BL_IC5A.485 C IN cloud data : BL_IC5A.486 +,CF,QCF,QCL BL_IC5A.487 +,CCA,CCB,CCT BL_IC5A.488 BL_IC5A.489 C IN everything not covered so far : BL_IC5A.490 +,CO2_MMR,PHOTOSYNTH_ACT_RAD,PSTAR,RADNET,TIMESTEP BL_IC5A.491 +,L_RMBL,L_BL_LSPICE,L_MOM,L_MIXLEN ADM3F404.56 BL_IC5A.493 C INOUT data : BL_IC5A.494 +,Q,GS,T,T_DEEP_SOIL,TI,TSTAR,U,V,Z0MSEA BL_IC5A.495 BL_IC5A.496 C OUT Diagnostic not requiring STASH flags : BL_IC5A.497 +,CD,CH,E_SEA,EPOT,ETRAN,FQW,FSMC,FTL,H_SEA,RHOKH,RHOKM,RIB ANG1F405.54 +,SEA_ICE_HTF,SURF_HT_FLUX,TAUX,TAUY,VSHR BL_IC5A.499 BL_IC5A.500 C OUT diagnostic requiring STASH flags : BL_IC5A.501 +,FME,SICE_MLT_HTF,SNOMLT_SURF_HTF,LATENT_HEAT BL_IC5A.502 +,Q1P5M,T1P5M,U10M,V10M BL_IC5A.503 C (IN) STASH flags :- BL_IC5A.504 +,SFME,SIMLT,SMLT,SLH,SQ1P5,ST1P5,SU10,SV10 BL_IC5A.505 BL_IC5A.506 C OUT data required for tracer mixing : BL_IC5A.507 &,RHO_ARESIST,ARESIST,RESIST_B BL_IC5A.508 &,NRML BL_IC5A.509 BL_IC5A.510 C OUT data required for 4D_VAR : BL_IC5A.511 &,RHO_CD_MODV1,RHO_KM BL_IC5A.512 BL_IC5A.513 C OUT data required elsewhere in UM system : BL_IC5A.514 +,ECAN,EI,ES,EXT,SNOWMELT,ZH BL_IC5A.515 +,GPP,NPP,RESP_P BL_IC5A.516 +,T1_SD,Q1_SD,ERROR BL_IC5A.517 BL_IC5A.518 C LOGICAL LTIMER BL_IC5A.519 +,LTIMER BL_IC5A.520 *IF DEF,SCMA AJC0F405.39 & ,FACTOR_RHOKH,OBS AJC0F405.40 *ENDIF AJC0F405.41 +) BL_IC5A.521 RETURN BL_IC5A.522 END BL_IC5A.523 BL_IC5A.524 *ENDIF BL_IC5A.525