*IF DEF,CONTROL,AND,DEF,ATMOS INITZON1.2
C ******************************COPYRIGHT****************************** GTS2F400.4897
C (c) CROWN COPYRIGHT 1995, METEOROLOGICAL OFFICE, All Rights Reserved. GTS2F400.4898
C GTS2F400.4899
C Use, duplication or disclosure of this code is subject to the GTS2F400.4900
C restrictions as set forth in the contract. GTS2F400.4901
C GTS2F400.4902
C Meteorological Office GTS2F400.4903
C London Road GTS2F400.4904
C BRACKNELL GTS2F400.4905
C Berkshire UK GTS2F400.4906
C RG12 2SZ GTS2F400.4907
C GTS2F400.4908
C If no contract has been raised with this copy of the code, the use, GTS2F400.4909
C duplication or disclosure of it is strictly prohibited. Permission GTS2F400.4910
C to do so must first be obtained in writing from the Head of Numerical GTS2F400.4911
C Modelling at the above address. GTS2F400.4912
C ******************************COPYRIGHT****************************** GTS2F400.4913
C GTS2F400.4914
CLL Routine: INITZONM ------------------------------------------------- INITZON1.3
CLL INITZON1.4
CLL Purpose: Initialises address pointers needed by ZONMCTL for INITZON1.5
CLL diagnostic fields in D1 by searching the STASHlist for INITZON1.6
CLL specified fields. If a field of the specified type and INITZON1.7
CLL space characteristics is not present, the address is set INITZON1.8
CLL to zero (interpreted as missing data by ZONMCTL). INITZON1.9
CLL INITZON1.10
CLL Tested under compiler: cft77 INITZON1.11
CLL Tested under OS version: UNICOS 5.1 INITZON1.12
CLL INITZON1.13
CLL Author: T.C.Johns INITZON1.14
CLL INITZON1.15
CLL Model Modification history from model version 3.0: INITZON1.16
CLL version date INITZON1.17
CLL 3.2 13/07/93 Changed CHARACTER*(*) to CHARACTER*(80) for TS150793.96
CLL portability. Author Tracey Smith. TS150793.97
CLL 3.2 27/03/93 Dynamic allocation of main data arrays. R. Rawlins @DYALLOC.2066
CLL 3.4 14/09/94 Attempt to alter pointers to cope with eg rainfall ARS2F304.1
CLL as rates or accumulations. Also alter IHYDRO, IRAD ARS2F304.2
CLL ICLOUD, IFLUXL & ISICE to be 1 if not required and ARS2F304.3
CLL P_field if required instead of 0 and 1 as before. ARS2F304.4
CLL This allows space to be saved in zonmatm. ARS2F304.5
CLL INITZON1.18
CLL INITZON1.19
CLL Programming standard: UM Doc Paper 3, version 2 (7/9/90) INITZON1.20
CLL INITZON1.21
CLL Logical components covered: C610 INITZON1.22
CLL INITZON1.23
CLL Project task: C61 INITZON1.24
CLL INITZON1.25
CLL External documentation: INITZON1.26
CLL Unified Model Doc Paper C0 - The top-level control system INITZON1.27
CLL Unified Model Doc Paper D6 - Printed diagnostics INITZON1.28
CLL INITZON1.29
CLL ------------------------------------------------------------------- INITZON1.30
C*L Interface and arguments: ------------------------------------------ INITZON1.31
C INITZON1.32
SUBROUTINE INITZONM( 1,31@DYALLOC.2067
*CALL ARGSIZE
@DYALLOC.2068
*CALL ARGSTS
@DYALLOC.2069
*CALL ARGPTRA
@DYALLOC.2070
& ICODE,CMESSAGE ) @DYALLOC.2071
C INITZON1.34
IMPLICIT NONE INITZON1.35
C INITZON1.36
*CALL CSUBMODL
GSS2F305.150
*CALL TYPSIZE
@DYALLOC.2072
*CALL TYPSTS
@DYALLOC.2073
*CALL TYPPTRA
@DYALLOC.2074
INTEGER ICODE ! OUT - Error return code INITZON1.37
CHARACTER*80 CMESSAGE ! OUT - Error return message TS150793.98
C*---------------------------------------------------------------------- INITZON1.39
C Common blocks INITZON1.40
C INITZON1.41
*CALL CZONMPTR
INITZON1.44
*CALL CZONPRIT
INITZON1.45
C INITZON1.46
C Subroutines called INITZON1.47
C INITZON1.48
EXTERNAL FINDPTR INITZON1.49
C INITZON1.50
C Local variables INITZON1.51
C INITZON1.52
INTEGER INITZON1.53
* PROCESS_CODE, ! Processing code INITZON1.54
* FREQ_CODE, ! Frequency code INITZON1.55
* START,END,PERIOD, ! Start, end and period step INITZON1.56
* GRIDPT_CODE,WEIGHT_CODE, ! Gridpt and weighting codes INITZON1.57
* BOTTOM_LEVEL,TOP_LEVEL, ! Bottom and top input level INITZON1.58
* GRID_N,GRID_S,GRID_W,GRID_E, ! Grid corner definitions INITZON1.59
* STASHMACRO_TAG, ! STASHmacro tag number INITZON1.60
* MDI ! Missing data indicator INITZON1.61
* ,JLSRNR,JLSSNR,JCVRNR,JCVSNR ! pointers for rates ARS2F304.6
C INITZON1.62
C INITZON1.63
CL---------------------------------------------------------------------- INITZON1.64
CL 0. Set grid definition information (full field, unweighted) INITZON1.65
CL INITZON1.66
MDI=-99999 INITZON1.67
FREQ_CODE=MDI INITZON1.68
START=MDI INITZON1.69
END=MDI INITZON1.70
PERIOD=MDI INITZON1.71
GRIDPT_CODE=1 INITZON1.72
WEIGHT_CODE=0 INITZON1.73
BOTTOM_LEVEL=MDI INITZON1.74
TOP_LEVEL=MDI INITZON1.75
GRID_N=1 INITZON1.76
GRID_S=P_ROWS ! Most fields on p-grid, but some on u-grid INITZON1.77
GRID_W=1 INITZON1.78
GRID_E=ROW_LENGTH INITZON1.79
STASHMACRO_TAG=MDI INITZON1.80
C INITZON1.81
CL---------------------------------------------------------------------- INITZON1.82
CL 1. Get address for each field from its STASH section/item code INITZON1.83
CL and grid description. INITZON1.84
CL INITZON1.85
CL 1.1 PMSL INITZON1.86
PROCESS_CODE=3 ! Time mean INITZON1.87
CALL FINDPTR
(ATMOS_IM,16,222, GSS2F305.151
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.89
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.90
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.91
* MDI,JPMSL, @DYALLOC.2075
*CALL ARGSIZE
@DYALLOC.2076
*CALL ARGSTS
@DYALLOC.2077
* ICODE,CMESSAGE) @DYALLOC.2078
IF (ICODE.GT.0) GOTO 999 INITZON1.94
IF (JPMSL.EQ.0) WRITE(6,*) GIE0F403.342
& "INITZON1: Comment - PMSL not available for zonal mean print" INITZON1.96
INITZON1.97
CL 1.2 Total moisture flux at surface (ie. evaporation) INITZON1.98
CALL FINDPTR
(ATMOS_IM, 3,223, GSS2F305.152
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.100
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.101
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.102
* MDI,JEVAP, @DYALLOC.2079
*CALL ARGSIZE
@DYALLOC.2080
*CALL ARGSTS
@DYALLOC.2081
* ICODE,CMESSAGE) @DYALLOC.2082
IF (ICODE.GT.0) GOTO 999 INITZON1.105
IF (JEVAP.EQ.0) WRITE(6,*) GIE0F403.343
& "INITZON1: Comment - EVAP not available for zonal mean print" INITZON1.107
INITZON1.108
CL 1.3 Large scale rain at surface (accumulated) INITZON1.109
PROCESS_CODE=2 ! Accumulation INITZON1.110
CALL FINDPTR
(ATMOS_IM, 4,201, GSS2F305.153
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.112
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.113
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.114
* MDI,JLSRN, @DYALLOC.2083
*CALL ARGSIZE
@DYALLOC.2084
*CALL ARGSTS
@DYALLOC.2085
* ICODE,CMESSAGE) @DYALLOC.2086
IF (ICODE.GT.0) GOTO 999 INITZON1.117
IF (JLSRN.EQ.0) WRITE(6,*) GIE0F403.344
& "INITZON1: Comment - LSRN not available for zonal mean print" INITZON1.119
INITZON1.120
CL 1.4 Convective rain at surface (accumulated) INITZON1.121
CALL FINDPTR
(ATMOS_IM, 5,201, GSS2F305.154
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.123
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.124
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.125
* MDI,JCVRN, @DYALLOC.2087
*CALL ARGSIZE
@DYALLOC.2088
*CALL ARGSTS
@DYALLOC.2089
* ICODE,CMESSAGE) @DYALLOC.2090
IF (ICODE.GT.0) GOTO 999 INITZON1.128
IF (JCVRN.EQ.0) WRITE(6,*) GIE0F403.345
& "INITZON1: Comment - CVRN not available for zonal mean print" INITZON1.130
INITZON1.131
CL 1.5 Large scale snow at surface (accumulated) INITZON1.132
CALL FINDPTR
(ATMOS_IM, 4,202, GSS2F305.155
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.134
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.135
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.136
* MDI,JLSSN, @DYALLOC.2091
*CALL ARGSIZE
@DYALLOC.2092
*CALL ARGSTS
@DYALLOC.2093
* ICODE,CMESSAGE) @DYALLOC.2094
IF (ICODE.GT.0) GOTO 999 INITZON1.139
IF (JLSSN.EQ.0) WRITE(6,*) GIE0F403.346
& "INITZON1: Comment - LSSN not available for zonal mean print" INITZON1.141
INITZON1.142
CL 1.6 Convective snow at surface (accumulated) INITZON1.143
CALL FINDPTR
(ATMOS_IM, 5,202, GSS2F305.156
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.145
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.146
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.147
* MDI,JCVSN, @DYALLOC.2095
*CALL ARGSIZE
@DYALLOC.2096
*CALL ARGSTS
@DYALLOC.2097
* ICODE,CMESSAGE) @DYALLOC.2098
IF (ICODE.GT.0) GOTO 999 INITZON1.150
IF (JCVSN.EQ.0) WRITE(6,*) GIE0F403.347
& "INITZON1: Comment - CVSN not available for zonal mean print" INITZON1.152
CL ARS2F304.7
CL Test to see if found required fields ARS2F304.8
CL ARS2F304.9
IF (JLSSN.NE.0.AND.JCVSN.NE.0.AND.JLSRN.NE.0.AND.JCVRN.NE.0) THEN ARS2F304.10
IPPTN=1 ARS2F304.11
ELSE ! try finding rates ARS2F304.12
CL ARS2F304.13
CL 1.3B Large scale rain at surface (rate) ARS2F304.14
PROCESS_CODE=3 ! Time mean ARS2F304.15
CALL FINDPTR
(ATMOS_IM, 4,203, GSS2F305.157
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, ARS2F304.17
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, ARS2F304.18
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, ARS2F304.19
* MDI,JLSRNR, ARS2F304.20
*CALL ARGSIZE
ARS2F304.21
*CALL ARGSTS
ARS2F304.22
* ICODE,CMESSAGE) ARS2F304.23
IF (ICODE.GT.0) GOTO 999 ARS2F304.24
IF (JLSRNR.EQ.0) WRITE(6,*) GIE0F403.348
& "INITZON1: Comment - LSRN rate not available" ARS2F304.26
INITZON1.153
CL 1.4B Convective rain at surface (rate) ARS2F304.27
CALL FINDPTR
(ATMOS_IM, 5,205, GSS2F305.158
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, ARS2F304.29
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, ARS2F304.30
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, ARS2F304.31
* MDI,JCVRNR, ARS2F304.32
*CALL ARGSIZE
ARS2F304.33
*CALL ARGSTS
ARS2F304.34
* ICODE,CMESSAGE) ARS2F304.35
IF (ICODE.GT.0) GOTO 999 ARS2F304.36
IF (JCVRNR.EQ.0) WRITE(6,*) GIE0F403.349
& "INITZON1: Comment - CVRN rate not available" ARS2F304.38
ARS2F304.39
CL 1.5B Large scale snow at surface (accumulated) ARS2F304.40
CALL FINDPTR
(ATMOS_IM, 4,204, GSS2F305.159
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, ARS2F304.42
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, ARS2F304.43
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, ARS2F304.44
* MDI,JLSSNR, ARS2F304.45
*CALL ARGSIZE
ARS2F304.46
*CALL ARGSTS
ARS2F304.47
* ICODE,CMESSAGE) ARS2F304.48
IF (ICODE.GT.0) GOTO 999 ARS2F304.49
IF (JLSSNR.EQ.0) WRITE(6,*) GIE0F403.350
& "INITZON1: Comment - LSSN rate not available " ARS2F304.51
ARS2F304.52
CL 1.6B Convective snow at surface (accumulated) ARS2F304.53
CALL FINDPTR
(ATMOS_IM, 5,206, GSS2F305.160
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, ARS2F304.55
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, ARS2F304.56
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, ARS2F304.57
* MDI,JCVSNR, ARS2F304.58
*CALL ARGSIZE
ARS2F304.59
*CALL ARGSTS
ARS2F304.60
* ICODE,CMESSAGE) ARS2F304.61
IF (ICODE.GT.0) GOTO 999 ARS2F304.62
IF (JCVSNR.EQ.0) WRITE(6,*) GIE0F403.351
& "INITZON1: Comment - CVSN rate not available" ARS2F304.64
ARS2F304.65
IF (JLSSNR.NE.0.AND.JCVSNR.NE.0.AND.JLSRNR.NE.0 ARS2F304.66
& .AND.JCVRNR.NE.0) THEN ARS2F304.67
WRITE(6,*) GIE0F403.352
& "INITZON1: Comment - PPTN means calculated using rates" ARS2F304.69
ARS2F304.70
IPPTN=2 ! rates available ARS2F304.71
JLSSN=JLSSNR ARS2F304.72
JLSRN=JLSRNR ARS2F304.73
JCVSN=JCVSNR ARS2F304.74
JCVRN=JCVRNR ARS2F304.75
ELSE ARS2F304.76
IPPTN=0 ARS2F304.77
WRITE(6,*) GIE0F403.353
& "INITZON1: Comment - PPTN means cannot be calculated" ARS2F304.79
ENDIF ARS2F304.80
ENDIF ARS2F304.81
ARS2F304.82
CL 1.7 X-component of surface windstress INITZON1.154
PROCESS_CODE=3 ! Time mean INITZON1.155
GRID_S=U_ROWS ! u-field INITZON1.156
CALL FINDPTR
(ATMOS_IM, 3,219, GSS2F305.161
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.158
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.159
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.160
* MDI,JTAUX, @DYALLOC.2099
*CALL ARGSIZE
@DYALLOC.2100
*CALL ARGSTS
@DYALLOC.2101
* ICODE,CMESSAGE) @DYALLOC.2102
IF (ICODE.GT.0) GOTO 999 INITZON1.163
IF (JTAUX.EQ.0) WRITE(6,*) GIE0F403.354
& "INITZON1: Comment - TAUX not available for zonal mean print" INITZON1.165
INITZON1.166
CL 1.8 Y-component of surface windstress INITZON1.167
CALL FINDPTR
(ATMOS_IM, 3,220, GSS2F305.162
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.169
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.170
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.171
* MDI,JTAUY, @DYALLOC.2103
*CALL ARGSIZE
@DYALLOC.2104
*CALL ARGSTS
@DYALLOC.2105
* ICODE,CMESSAGE) @DYALLOC.2106
IF (ICODE.GT.0) GOTO 999 INITZON1.174
IF (JTAUY.EQ.0) WRITE(6,*) GIE0F403.355
& "INITZON1: Comment - TAUY not available for zonal mean print" INITZON1.176
INITZON1.177
CL 1.9 Sensible heat flux at surface INITZON1.178
GRID_S=P_ROWS ! p-field INITZON1.179
CALL FINDPTR
(ATMOS_IM, 3,217, GSS2F305.163
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.181
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.182
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.183
* MDI,JSH, @DYALLOC.2107
*CALL ARGSIZE
@DYALLOC.2108
*CALL ARGSTS
@DYALLOC.2109
* ICODE,CMESSAGE) @DYALLOC.2110
IF (ICODE.GT.0) GOTO 999 INITZON1.186
IF (JSH .EQ.0) WRITE(6,*) GIE0F403.356
& "INITZON1: Comment - SH not available for zonal mean print" INITZON1.188
C INITZON1.189
CL 1.10 Sublimation INITZON1.190
PROCESS_CODE=2 ! Accumulation INITZON1.191
CALL FINDPTR
(ATMOS_IM, 3,231, GSS2F305.164
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.193
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.194
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.195
* MDI,JSUBL, @DYALLOC.2111
*CALL ARGSIZE
@DYALLOC.2112
*CALL ARGSTS
@DYALLOC.2113
* ICODE,CMESSAGE) @DYALLOC.2114
IF (ICODE.GT.0) GOTO 999 INITZON1.198
IF (JSUBL.EQ.0) WRITE(6,*) GIE0F403.357
& "INITZON1: Comment - SUBL not available for zonal mean print" INITZON1.200
C INITZON1.201
CL 1.11 Soil Evaporation INITZON1.202
GRIDPT_CODE=2 INITZON1.203
CALL FINDPTR
(ATMOS_IM, 3,229, GSS2F305.165
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.205
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.206
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.207
* MDI,JSOEV, @DYALLOC.2115
*CALL ARGSIZE
@DYALLOC.2116
*CALL ARGSTS
@DYALLOC.2117
* ICODE,CMESSAGE) @DYALLOC.2118
IF (ICODE.GT.0) GOTO 999 INITZON1.210
IF (JSOEV.EQ.0) WRITE(6,*) GIE0F403.358
& "INITZON1: Comment - SOEV not available for zonal mean print" INITZON1.212
C INITZON1.213
CL 1.12 Evaporation from the canopy INITZON1.214
CALL FINDPTR
(ATMOS_IM, 3,230, GSS2F305.166
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.216
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.217
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.218
* MDI,JCAEV, @DYALLOC.2119
*CALL ARGSIZE
@DYALLOC.2120
*CALL ARGSTS
@DYALLOC.2121
* ICODE,CMESSAGE) @DYALLOC.2122
IF (ICODE.GT.0) GOTO 999 INITZON1.221
IF (JCAEV.EQ.0) WRITE(6,*) GIE0F403.359
& "INITZON1: Comment - CAEV not available for zonal mean print" INITZON1.223
C INITZON1.224
CL 1.13 Soil heat flux INITZON1.225
PROCESS_CODE=3 ! Time mean INITZON1.226
CALL FINDPTR
(ATMOS_IM, 3,202, GSS2F305.167
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.228
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.229
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.230
* MDI,JSOHF, @DYALLOC.2123
*CALL ARGSIZE
@DYALLOC.2124
*CALL ARGSTS
@DYALLOC.2125
* ICODE,CMESSAGE) @DYALLOC.2126
IF (ICODE.GT.0) GOTO 999 INITZON1.233
IF (JSOHF.EQ.0) WRITE(6,*) GIE0F403.360
& "INITZON1: Comment - SOHF not available for zonal mean print" INITZON1.235
C INITZON1.236
C INITZON1.237
CL 1.14 Suface runoff INITZON1.238
GRIDPT_CODE=2 INITZON1.239
PROCESS_CODE=2 ! Accumulation INITZON1.240
CALL FINDPTR
(ATMOS_IM, 8,204, GSS2F305.168
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.242
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.243
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.244
* MDI,JSFRU, @DYALLOC.2127
*CALL ARGSIZE
@DYALLOC.2128
*CALL ARGSTS
@DYALLOC.2129
* ICODE,CMESSAGE) @DYALLOC.2130
IF (ICODE.GT.0) GOTO 999 INITZON1.247
IF (JSFRU.EQ.0) WRITE(6,*) GIE0F403.361
& "INITZON1: Comment - SFRU not available for zonal mean print" INITZON1.249
C INITZON1.250
CL 1.15 Sub Suface runoff INITZON1.251
CALL FINDPTR
(ATMOS_IM, 8,205, GSS2F305.169
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.253
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.254
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.255
* MDI,JSBRU, @DYALLOC.2131
*CALL ARGSIZE
@DYALLOC.2132
*CALL ARGSTS
@DYALLOC.2133
* ICODE,CMESSAGE) @DYALLOC.2134
IF (ICODE.GT.0) GOTO 999 INITZON1.258
IF (JSBRU.EQ.0) WRITE(6,*) GIE0F403.362
& "INITZON1: Comment - SBRU not available for zonal mean print" INITZON1.260
C INITZON1.261
CL 1.16 Snowmelt INITZON1.262
CALL FINDPTR
(ATMOS_IM, 8,201, GSS2F305.170
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.264
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.265
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.266
* MDI,JSNML, @DYALLOC.2135
*CALL ARGSIZE
@DYALLOC.2136
*CALL ARGSTS
@DYALLOC.2137
* ICODE,CMESSAGE) @DYALLOC.2138
IF (ICODE.GT.0) GOTO 999 INITZON1.269
IF (JSNML.EQ.0) WRITE(6,*) GIE0F403.363
& "INITZON1: Comment - SNML not available for zonal mean print" INITZON1.271
C INITZON1.272
CL 1.17 Throughfall INITZON1.273
CALL FINDPTR
(ATMOS_IM, 8,203, GSS2F305.171
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.275
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.276
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.277
* MDI,JTHRF, @DYALLOC.2139
*CALL ARGSIZE
@DYALLOC.2140
*CALL ARGSTS
@DYALLOC.2141
* ICODE,CMESSAGE) @DYALLOC.2142
IF (ICODE.GT.0) GOTO 999 INITZON1.280
IF (JTHRF.EQ.0) WRITE(6,*) GIE0F403.364
& "INITZON1: Comment - THRF not available for zonal mean print" INITZON1.282
C INITZON1.283
CL 1.18 SW incoming TOA radiation INITZON1.284
GRIDPT_CODE=1 INITZON1.285
PROCESS_CODE=3 ! Time mean INITZON1.286
CALL FINDPTR
(ATMOS_IM, 1,207, GSS2F305.172
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.288
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.289
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.290
* MDI,JTISW, @DYALLOC.2143
*CALL ARGSIZE
@DYALLOC.2144
*CALL ARGSTS
@DYALLOC.2145
* ICODE,CMESSAGE) @DYALLOC.2146
IF (ICODE.GT.0) GOTO 999 INITZON1.293
IF (JTISW.EQ.0) WRITE(6,*) GIE0F403.365
& "INITZON1: Comment - TISW not available for zonal mean print" INITZON1.295
C INITZON1.296
CL 1.19 SW outgoing TOA radiation INITZON1.297
CALL FINDPTR
(ATMOS_IM, 1,208, GSS2F305.173
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.299
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.300
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.301
* MDI,JTOSW, @DYALLOC.2147
*CALL ARGSIZE
@DYALLOC.2148
*CALL ARGSTS
@DYALLOC.2149
* ICODE,CMESSAGE) @DYALLOC.2150
IF (ICODE.GT.0) GOTO 999 INITZON1.304
IF (JTOSW.EQ.0) WRITE(6,*) GIE0F403.366
& "INITZON1: Comment - TOSW not available for zonal mean print" INITZON1.306
C INITZON1.307
CL 1.20 Surface net SW downward radiation INITZON1.308
CALL FINDPTR
(ATMOS_IM, 1,201, GSS2F305.174
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.310
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.311
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.312
* MDI,JSDSR, @DYALLOC.2151
*CALL ARGSIZE
@DYALLOC.2152
*CALL ARGSTS
@DYALLOC.2153
* ICODE,CMESSAGE) @DYALLOC.2154
IF (ICODE.GT.0) GOTO 999 INITZON1.315
IF (JSDSR.EQ.0) WRITE(6,*) GIE0F403.367
& "INITZON1: Comment - SDSR not available for zonal mean print" INITZON1.317
C INITZON1.318
CL 1.21 LW outgoing TOA radiation INITZON1.319
CALL FINDPTR
(ATMOS_IM, 2,205, GSS2F305.175
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.321
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.322
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.323
* MDI,JTOLR, @DYALLOC.2155
*CALL ARGSIZE
@DYALLOC.2156
*CALL ARGSTS
@DYALLOC.2157
* ICODE,CMESSAGE) @DYALLOC.2158
IF (ICODE.GT.0) GOTO 999 INITZON1.326
IF (JTOLR.EQ.0) WRITE(6,*) GIE0F403.368
& "INITZON1: Comment - TOALO not available for zonal mean print" INITZON1.328
C INITZON1.329
CL 1.22 Surface net LW downward radiation INITZON1.330
CALL FINDPTR
(ATMOS_IM, 2,201, GSS2F305.176
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.332
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.333
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.334
* MDI,JSDLR, @DYALLOC.2159
*CALL ARGSIZE
@DYALLOC.2160
*CALL ARGSTS
@DYALLOC.2161
* ICODE,CMESSAGE) @DYALLOC.2162
IF (ICODE.GT.0) GOTO 999 INITZON1.337
IF (JSDLR.EQ.0) WRITE(6,*) GIE0F403.369
& "INITZON1: Comment - SDLR not available for zonal mean print" INITZON1.339
C INITZON1.340
CL 1.23 Cloud liquid water content taken from section 4 INITZON1.341
CALL FINDPTR
(ATMOS_IM, 4,205, GSS2F305.177
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.343
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.344
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.345
* MDI,JCLLIQ, @DYALLOC.2163
*CALL ARGSIZE
@DYALLOC.2164
*CALL ARGSTS
@DYALLOC.2165
* ICODE,CMESSAGE) @DYALLOC.2166
IF (ICODE.GT.0) GOTO 999 INITZON1.348
IF (JCLLIQ.EQ.0) WRITE(6,*) GIE0F403.370
& "INITZON1: Comment - CLLW not available for zonal mean print" INITZON1.350
C INITZON1.351
CL 1.24 Cloud ICE water content taken from section 4 INITZON1.352
CALL FINDPTR
(ATMOS_IM, 4,206, GSS2F305.178
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.354
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.355
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.356
* MDI,JCLICE, @DYALLOC.2167
*CALL ARGSIZE
@DYALLOC.2168
*CALL ARGSTS
@DYALLOC.2169
* ICODE,CMESSAGE) @DYALLOC.2170
IF (ICODE.GT.0) GOTO 999 INITZON1.359
IF (JCLICE.EQ.0) WRITE(6,*) GIE0F403.371
& "INITZON1: Comment - CLICE not available for zonal mean print" INITZON1.361
C INITZON1.362
CL 1.25 Sea-ice heat flux through INITZON1.363
CALL FINDPTR
(ATMOS_IM, 3,201, GSS2F305.179
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.365
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.366
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.367
* MDI,JSIHF, @DYALLOC.2171
*CALL ARGSIZE
@DYALLOC.2172
*CALL ARGSTS
@DYALLOC.2173
* ICODE,CMESSAGE) @DYALLOC.2174
IF (ICODE.GT.0) GOTO 999 INITZON1.370
IF (JSIHF.EQ.0) WRITE(6,*) GIE0F403.372
& "INITZON1: Comment - SIHF not available for zonal mean print" INITZON1.372
C INITZON1.373
CL 1.26 Sea-ice top melting heat flux INITZON1.374
CALL FINDPTR
(ATMOS_IM, 3,235, GSS2F305.180
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.376
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.377
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.378
* MDI,JSIMH, @DYALLOC.2175
*CALL ARGSIZE
@DYALLOC.2176
*CALL ARGSTS
@DYALLOC.2177
* ICODE,CMESSAGE) @DYALLOC.2178
IF (ICODE.GT.0) GOTO 999 INITZON1.381
IF (JSIMH.EQ.0) WRITE(6,*) GIE0F403.373
& "INITZON1: Comment - SIMH not available for zonal mean print" INITZON1.383
C INITZON1.384
CL 1.26 Sea-ice total downward surface solar rad INITZON1.385
CALL FINDPTR
(ATMOS_IM, 1,235, GSS2F305.181
* PROCESS_CODE,FREQ_CODE,START,END,PERIOD, INITZON1.387
* GRIDPT_CODE,WEIGHT_CODE,BOTTOM_LEVEL,TOP_LEVEL, INITZON1.388
* GRID_N,GRID_S,GRID_W,GRID_E,STASHMACRO_TAG, INITZON1.389
* MDI,JSISS, @DYALLOC.2179
*CALL ARGSIZE
@DYALLOC.2180
*CALL ARGSTS
@DYALLOC.2181
* ICODE,CMESSAGE) @DYALLOC.2182
IF (ICODE.GT.0) GOTO 999 INITZON1.392
IF (JSISS.EQ.0) WRITE(6,*) GIE0F403.374
& "INITZON1: Comment - SISS not available for zonal mean print" INITZON1.394
C INITZON1.395
CL 2.0 Define integers controlling global prints INITZON1.396
C INITZON1.397
CL total snowfall INITZON1.398
IF (JLSSN.NE.0.AND.JCVSN.NE.0) THEN INITZON1.399
ISNOW=1 INITZON1.400
ELSE INITZON1.401
ISNOW=0 INITZON1.402
WRITE(6,*) GIE0F403.375
&"INITZON1: Comment - SNOW means cannot be calculated" INITZON1.404
ENDIF INITZON1.405
CL Hydrology INITZON1.414
IF (JSFRU.NE.0.AND.JSBRU.NE.0.AND.JTHRF.NE.0.AND.JSNML.NE.0) THEN INITZON1.415
IHYDRO=P_FIELD ARS2F304.83
ELSE ARS2F304.84
IHYDRO=1 INITZON1.416
WRITE(6,*) GIE0F403.376
&"INITZON1: Comment - Hydrology means will not be printed" INITZON1.420
ENDIF INITZON1.421
CL Radiation INITZON1.422
IF (JTOSW.NE.0.AND.JTISW.NE.0.AND.JSDSR.NE.0.AND.JTOLR.NE.0.AND. INITZON1.423
&JSDLR.NE.0) THEN INITZON1.424
IRAD=P_FIELD ARS2F304.85
ELSE ARS2F304.86
IRAD=1 INITZON1.425
WRITE(6,*) GIE0F403.377
&"INITZON1: Comment - Radiation means will not be printed" INITZON1.429
ENDIF INITZON1.430
CL Cloud water INITZON1.431
IF (JCLICE.NE.0.AND.JCLLIQ.NE.0)THEN INITZON1.432
ICLOUD=P_FIELD ARS2F304.87
ELSE ARS2F304.88
ICLOUD=1 INITZON1.433
WRITE(6,*) GIE0F403.378
&"INITZON1: Comment - Cloud water means will not be printed" INITZON1.437
ENDIF INITZON1.438
CL net water flux into surface snow INITZON1.439
IF (ISNOW.NE.0.AND.JSUBL.NE.0.AND.JSNML.NE.0)THEN INITZON1.440
IWFSS=1 INITZON1.441
ELSE INITZON1.442
IWFSS=0 INITZON1.443
WRITE(6,*) GIE0F403.379
&"INITZON1: Comment - WFSS means cannot be calculated" INITZON1.445
ENDIF INITZON1.446
CL net water flux into into canopy INITZON1.447
IF (IPPTN.NE.0.AND.JCAEV.NE.0.AND.JTHRF.NE.0)THEN INITZON1.448
IWFCA=1 INITZON1.449
ELSE INITZON1.450
IWFCA=0 INITZON1.451
WRITE(6,*) GIE0F403.380
&"INITZON1: Comment - WFCA means cannot be calculated" INITZON1.453
ENDIF INITZON1.454
CL net water flux into soil INITZON1.455
IF (IHYDRO.NE.1.AND.JSOEV.NE.0)THEN ARS2F304.89
IWFSO=1 INITZON1.457
ELSE INITZON1.458
IWFSO=0 INITZON1.459
WRITE(6,*) GIE0F403.381
&"INITZON1: Comment - WFSO means cannot be calculated" INITZON1.461
ENDIF INITZON1.462
CL net energy flux into soil INITZON1.463
IF (JEVAP.NE.0.AND.JSUBL.NE.0.AND.JSNML.NE.0.AND.JSH.NE.0.AND. INITZON1.464
&JSDSR.NE.0.AND.JSDLR.NE.0) THEN INITZON1.465
IENFS=1 INITZON1.466
ELSE INITZON1.467
IENFS=0 INITZON1.468
WRITE(6,*) GIE0F403.382
&"INITZON1: Comment - ENFS means cannot be calculated" INITZON1.470
ENDIF INITZON1.471
CL net water flux into atmosphere INITZON1.472
IF (JEVAP.NE.0.AND.IPPTN.NE.0) THEN INITZON1.473
IWAFL=1 INITZON1.474
ELSE INITZON1.475
IWAFL=0 INITZON1.476
WRITE(6,*) GIE0F403.383
&"INITZON1: Comment - WAFL means cannot be calculated" INITZON1.478
ENDIF INITZON1.479
CL net energy flux into atmosphere INITZON1.480
IF (IRAD.NE.1.AND.IPPTN.NE.0.AND.ISNOW.NE.0.AND.JSH.NE.0) THEN ARS2F304.90
IENFL=1 INITZON1.482
ELSE INITZON1.483
IENFL=0 INITZON1.484
WRITE(6,*) GIE0F403.384
&"INITZON1: Comment - ENFL means cannot be calculated" INITZON1.486
ENDIF INITZON1.487
CL FLUX over land INITZON1.488
IF (IWFSS.NE.0.AND.IWFCA.NE.0.AND.IWFSO.NE.0.AND.IWAFL.NE.0.AND. INITZON1.489
&IENFS.NE.0.AND.IENFL.NE.0.AND.JSOHF.NE.0) THEN INITZON1.490
IFLUXL=P_FIELD ARS2F304.91
ELSE ARS2F304.92
IFLUXL=1 INITZON1.491
WRITE(6,*) GIE0F403.385
&"INITZON1: Comment - Fluxes over land will not be printed" INITZON1.495
ENDIF INITZON1.496
CL Sea-ice fields INITZON1.497
IF (JSIHF.NE.0.AND.JSIMH.NE.0.AND.IRAD.NE.0.AND.JSH.NE.0 INITZON1.498
&.AND.JSISS.NE.0) THEN INITZON1.499
ISICE=P_FIELD ARS2F304.93
ELSE ARS2F304.94
ISICE=1 INITZON1.500
WRITE(6,*) GIE0F403.386
&"INITZON1: Comment - Sea-ice fluxes will not be printed" INITZON1.504
ENDIF INITZON1.505
999 CONTINUE INITZON1.506
RETURN INITZON1.507
CL---------------------------------------------------------------------- INITZON1.508
END INITZON1.509
*ENDIF INITZON1.510