| 1 | ! Station Extraction Parameters.
|
|---|
| 2 | !
|
|---|
| 3 | !svn $Id: stations_bl_test.in 165 2008-03-13 21:18:13Z arango $
|
|---|
| 4 | !========================================================= Hernan G. Arango ===
|
|---|
| 5 | ! Copyright (c) 2002-2008 The ROMS/TOMS Group !
|
|---|
| 6 | ! Licensed under a MIT/X style license !
|
|---|
| 7 | ! See License_ROMS.txt !
|
|---|
| 8 | !==============================================================================
|
|---|
| 9 | ! !
|
|---|
| 10 | ! Input parameters can be entered in ANY order, provided that the parameter !
|
|---|
| 11 | ! KEYWORD (usually, upper case) is typed correctly followed by "=" or "==" !
|
|---|
| 12 | ! symbols. Any comment lines are allowed and must begin with an exclamation !
|
|---|
| 13 | ! mark (!) in column one. Comments may appear to the right of a parameter !
|
|---|
| 14 | ! specification to improve documentation. Comments will be ignored during !
|
|---|
| 15 | ! reading. Blank lines are also allowed and ignored. Continuation lines in !
|
|---|
| 16 | ! a parameter specification are allowed and must be preceded by a backslash !
|
|---|
| 17 | ! (\). In some instances, more than one value is required for a parameter. !
|
|---|
| 18 | ! If fewer values are provided, the last value is assigned for the entire !
|
|---|
| 19 | ! parameter array. The multiplication symbol (*), without blank spaces in !
|
|---|
| 20 | ! between, is allowed for a parameter specification. For example, in a two !
|
|---|
| 21 | ! grids nested application: !
|
|---|
| 22 | ! !
|
|---|
| 23 | ! AKT_BAK == 2*1.0d-6 2*5.0d-6 ! m2/s !
|
|---|
| 24 | ! !
|
|---|
| 25 | ! indicates that the first two entries of array AKT_BAK, in fortran column- !
|
|---|
| 26 | ! major order, will have the same value of "1.0d-6" for grid 1, whereas the !
|
|---|
| 27 | ! next two entries will have the same value of "5.0d-6" for grid 2. !
|
|---|
| 28 | ! !
|
|---|
| 29 | ! In multiple levels of nesting and/or multiple connected domains step-ups, !
|
|---|
| 30 | ! "Ngrids" entries are expected for some of these parameters. In such case, !
|
|---|
| 31 | ! the order of the entries for a parameter is extremely important. It must !
|
|---|
| 32 | ! follow the same order (1:Ngrids) as in the state variable declaration. The !
|
|---|
| 33 | ! USER may follow the above guidelines for specifying his/her values. These !
|
|---|
| 34 | ! parameters are marked by "==" plural symbol after the KEYWORD. !
|
|---|
| 35 | ! !
|
|---|
| 36 | !==============================================================================
|
|---|
| 37 | !
|
|---|
| 38 | ! Switch to control the writing of stations data within nested and/or multiple
|
|---|
| 39 | ! connected grids, [1:Ngrids].
|
|---|
| 40 |
|
|---|
| 41 | Lstations == T
|
|---|
| 42 |
|
|---|
| 43 | ! Logical switches (TRUE/FALSE) to activate writing of fields in STATION
|
|---|
| 44 | ! output file, [Sout(:,ng), ng=1, Ngrids].
|
|---|
| 45 |
|
|---|
| 46 | Sout(idBath) == T ! time-dependent bathymetry
|
|---|
| 47 | Sout(idFsur) == T ! free-surface
|
|---|
| 48 | Sout(idUbar) == T ! 2D U-velocity
|
|---|
| 49 | Sout(idVbar) == T ! 2D V-velocity
|
|---|
| 50 | Sout(idUvel) == T ! 3D U-velocity
|
|---|
| 51 | Sout(idVvel) == T ! 3D V-velocity
|
|---|
| 52 | Sout(idWvel) == T ! 3D W-velocity
|
|---|
| 53 | Sout(idOvel) == T ! 3D omega vertical velocity
|
|---|
| 54 |
|
|---|
| 55 | Sout(idTvar) == T T ! all (NT) tracers
|
|---|
| 56 |
|
|---|
| 57 | Sout(idUsms) == T ! surface U-stress
|
|---|
| 58 | Sout(idVsms) == T ! surface V-stress
|
|---|
| 59 | Sout(idUbms) == T ! bottom U-stress
|
|---|
| 60 | Sout(idVbms) == T ! bottom V-stress
|
|---|
| 61 | Sout(idUbws) == F ! bottom U-wave stress
|
|---|
| 62 | Sout(idVbws) == F ! bottom V-wave stress
|
|---|
| 63 |
|
|---|
| 64 | Sout(idUbed) == F ! bed wave orbital U-velocity
|
|---|
| 65 | Sout(idVbed) == F ! bed wave orbital V-velocity
|
|---|
| 66 | Sout(idUbot) == F ! bottom U-momentum above bed
|
|---|
| 67 | Sout(idVbot) == F ! bottom V-momentum above bed
|
|---|
| 68 |
|
|---|
| 69 | Sout(idTsur) == F F ! surface net heat and salt flux
|
|---|
| 70 | Sout(idLhea) == F ! latent heat flux
|
|---|
| 71 | Sout(idShea) == F ! sensible heat flux
|
|---|
| 72 | Sout(idLrad) == F ! longwave radiation flux
|
|---|
| 73 | Sout(idSrad) == F ! shortwave radiation flux
|
|---|
| 74 | Sout(idevap) == F ! evaporation rate
|
|---|
| 75 | Sout(idrain) == F ! precipitation rate
|
|---|
| 76 |
|
|---|
| 77 | Sout(idDano) == T ! density anomaly
|
|---|
| 78 | Sout(idVvis) == T ! vertical viscosity
|
|---|
| 79 | Sout(idTdif) == T ! vertical T-diffusion
|
|---|
| 80 | Sout(idSdif) == T ! vertical Salinity diffusion
|
|---|
| 81 | Sout(idHsbl) == T ! depth of surface boundary layer
|
|---|
| 82 | Sout(idHbbl) == T ! depth of bottom boundary layer
|
|---|
| 83 | Sout(idMtke) == F ! turbulent kinetic energy
|
|---|
| 84 | Sout(idMtls) == F ! turbulent length scale
|
|---|
| 85 |
|
|---|
| 86 | ! Logical switches (TRUE/FALSE) to activate writing of exposed sediment
|
|---|
| 87 | ! layer properties into STATIONS output file. Currently, MBOTP properties
|
|---|
| 88 | ! are expected for the bottom boundary layer and/or sediment models:
|
|---|
| 89 | !
|
|---|
| 90 | ! Sout(idBott(isd50)), isd50 = 1 ! mean grain diameter
|
|---|
| 91 | ! Sout(idBott(idens)), idens = 2 ! mean grain density
|
|---|
| 92 | ! Sout(idBott(iwsed)), iwsed = 3 ! mean settling velocity
|
|---|
| 93 | ! Sout(idBott(itauc)), itauc = 4 ! critical erosion stress
|
|---|
| 94 | ! Sout(idBott(irlen)), irlen = 5 ! ripple length
|
|---|
| 95 | ! Sout(idBott(irhgt)), irhgt = 6 ! ripple height
|
|---|
| 96 | ! Sout(idBott(ibwav)), ibwav = 7 ! wave excursion amplitude
|
|---|
| 97 | ! Sout(idBott(izdef)), izdef = 8 ! default bottom roughness
|
|---|
| 98 | ! Sout(idBott(izapp)), izapp = 9 ! apparent bottom roughness
|
|---|
| 99 | ! Sout(idBott(izNik)), izNik = 10 ! Nikuradse bottom roughness
|
|---|
| 100 | ! Sout(idBott(izbio)), izbio = 11 ! biological bottom roughness
|
|---|
| 101 | ! Sout(idBott(izbfm)), izbfm = 12 ! bed form bottom roughness
|
|---|
| 102 | ! Sout(idBott(izbld)), izbld = 13 ! bed load bottom roughness
|
|---|
| 103 | ! Sout(idBott(izwbl)), izwbl = 14 ! wave bottom roughness
|
|---|
| 104 | ! Sout(idBott(iactv)), iactv = 15 ! active layer thickness
|
|---|
| 105 | ! Sout(idBott(ishgt)), ishgt = 16 ! saltation height
|
|---|
| 106 | !
|
|---|
| 107 | ! 1 1 1 1 1 1 1
|
|---|
| 108 | ! 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6
|
|---|
| 109 |
|
|---|
| 110 | Sout(idBott) == F F F F F F F F F F F F F F F F
|
|---|
| 111 |
|
|---|
| 112 | ! Number of stations to process in each nested grid. These values are
|
|---|
| 113 | ! essential because the station arrays are dynamically allocated using
|
|---|
| 114 | ! these values, [1:Ngrids].
|
|---|
| 115 |
|
|---|
| 116 | NSTATION == 1
|
|---|
| 117 |
|
|---|
| 118 | ! Station locations for all grids in any desired order. The horizontal
|
|---|
| 119 | ! location for a particular station may be specified in terms of fractional
|
|---|
| 120 | ! (I,J) grid pairs (FLAG=0) or (longitude,latitude) grid pairs (FLAG=1).
|
|---|
| 121 | ! Here, FLAG is a special switch and may be used for multiple purposes.
|
|---|
| 122 | ! The GRID column indicates nested grid number to process. This value must
|
|---|
| 123 | ! be one in non-nested applications. The COMMENT section is ignored during
|
|---|
| 124 | ! reading and may be used to help documentation.
|
|---|
| 125 |
|
|---|
| 126 | POS = GRID FLAG X-POS Y-POS COMMENT
|
|---|
| 127 |
|
|---|
| 128 | 1 0 5.0d0 5.0d0
|
|---|
| 129 |
|
|---|
| 130 | !
|
|---|
| 131 | ! GLOSSARY:
|
|---|
| 132 | ! =========
|
|---|
| 133 | !
|
|---|
| 134 | ! This input file provides the positions of stations data to be extracted
|
|---|
| 135 | ! and written into STATIONS output file. This file is use to monitor model
|
|---|
| 136 | ! fields at frequent time intervals. It is also used to sample the model at
|
|---|
| 137 | ! observation locations in order to build the penalty function used in
|
|---|
| 138 | ! variational data assimilation.
|
|---|
| 139 | !
|
|---|
| 140 | !------------------------------------------------------------------------------
|
|---|
| 141 | ! Control Switch.
|
|---|
| 142 | !------------------------------------------------------------------------------
|
|---|
| 143 | !
|
|---|
| 144 | ! Lstations Switch to control the writing of station data within nested
|
|---|
| 145 | ! and/or multiple connected grids. Ngrid values are expected.
|
|---|
| 146 | ! By default this switch is set to TRUE in "mod_scalars" for
|
|---|
| 147 | ! all grids when the CPP option STATIONS is activated. The
|
|---|
| 148 | ! USER can control which grid to process by turning on/off
|
|---|
| 149 | ! this switch.
|
|---|
| 150 | !
|
|---|
| 151 | !------------------------------------------------------------------------------
|
|---|
| 152 | ! Logical switches (TRUE/FALSE) to activate writing of fields in STATIONS
|
|---|
| 153 | ! output file. Except for tracer type variables, Ngrids values are expected
|
|---|
| 154 | ! for all switches.
|
|---|
| 155 | !------------------------------------------------------------------------------
|
|---|
| 156 | !
|
|---|
| 157 | ! Sout(idBath) Write out time-dependent bathymetry.
|
|---|
| 158 | ! Sout(idFsur) Write out free-surface.
|
|---|
| 159 | ! Sout(idUbar) Write out 2D U-velocity component.
|
|---|
| 160 | ! Sout(idVbar) Write out 2D V-velocity component.
|
|---|
| 161 | ! Sout(idUvel) Write out 3D U-velocity component.
|
|---|
| 162 | ! Sout(idVvel) Write out 3D V-velocity component.
|
|---|
| 163 | ! Sout(idWvel) Write out 3D W-velocity component.
|
|---|
| 164 | ! Sout(idOvel) Write out 3D omega vertical velocity.
|
|---|
| 165 | !
|
|---|
| 166 | ! Sout(idTvar) Write out tracer type variables, (NT,Ngrids) values are
|
|---|
| 167 | ! Expected.
|
|---|
| 168 | !
|
|---|
| 169 | ! Sout(idUsms) Write out surface U-momentum stress.
|
|---|
| 170 | ! Sout(idVsms) Write out surface V-momentum stress.
|
|---|
| 171 | ! Sout(idUbms) Write out bottom U-momentum stress.
|
|---|
| 172 | ! Sout(idVbms) Write out bottom V-momentum stress.
|
|---|
| 173 | ! Sout(idUbws) Write out wind-induced, bottom U-wave stress.
|
|---|
| 174 | ! Sout(idVbws) Write out wind-induced, bottom V-wave stress.
|
|---|
| 175 | !
|
|---|
| 176 | ! Sout(idUbed) Write out wind-induced, bed wave orbital U-velocity.
|
|---|
| 177 | ! Sout(idVbed) Write out wind-induced, bed wave orbital V-velocity.
|
|---|
| 178 | ! Sout(idUbot) Write out bottom U-momentum above bed.
|
|---|
| 179 | ! Sout(idVbot) Write out bottom V-momentum above bed.
|
|---|
| 180 | !
|
|---|
| 181 | ! Sout(idTsur) Write out surface net heat and salt flux.
|
|---|
| 182 | ! Sout(idLhea) Write out latent heat flux.
|
|---|
| 183 | ! Sout(idShea) Write out sensible heat flux.
|
|---|
| 184 | ! Sout(idLrad) Write out long-wave radiation flux.
|
|---|
| 185 | ! Sout(idSrad) Write out short-wave radiation flux.
|
|---|
| 186 | ! Sout(idevap) Write out evaporation rate.
|
|---|
| 187 | ! Sout(idrain) Write out precipitation rate.
|
|---|
| 188 | !
|
|---|
| 189 | ! Sout(idDano) Write out density anomaly.
|
|---|
| 190 | ! Sout(idVvis) Write out vertical viscosity coefficient.
|
|---|
| 191 | ! Sout(idTdif) Write out vertical diffusion coefficient of temperature.
|
|---|
| 192 | ! Sout(idSdif) Write out vertical diffusion coefficient of salinity.
|
|---|
| 193 | ! Sout(idHsbl) Write out depth of oceanic surface boundary layer.
|
|---|
| 194 | ! Sout(idHbbl) Write out depth of oceanic bottom boundary layer.
|
|---|
| 195 | ! Sout(idMtke) Write out turbulent kinetic energy.
|
|---|
| 196 | ! Sout(idMtls) Write out turbulent kinetic energy times length scale.
|
|---|
| 197 | !
|
|---|
| 198 | ! Sout(idBott) Write out exposed sediment layer properties, 1:MBOTP.
|
|---|
| 199 | !
|
|---|
| 200 | !------------------------------------------------------------------------------
|
|---|
| 201 | ! Station positions KEYWORDS.
|
|---|
| 202 | !------------------------------------------------------------------------------
|
|---|
| 203 | !
|
|---|
| 204 | ! NSTATION Number of stations to process in each nested grid. Ngrids
|
|---|
| 205 | ! values are expected. These values are essential because
|
|---|
| 206 | ! the station arrays are dynamically allocated using these
|
|---|
| 207 | ! values.
|
|---|
| 208 | !
|
|---|
| 209 | ! POS Station locations for all grids in any desired order. The
|
|---|
| 210 | ! horizontal location for a particular station can be
|
|---|
| 211 | ! specified in terms of fractional (I,J) grid pairs (FLAG=0)
|
|---|
| 212 | ! or (longitude,latitude) grid pairs (FLAG=1). Here, FLAG is
|
|---|
| 213 | ! a special switch and may be used for multiple purposes.
|
|---|
| 214 | ! The GRID column indicates nested grid number to process.
|
|---|
| 215 | ! This value must be one in non-nested applications. The
|
|---|
| 216 | ! COMMENT section is ignored during reading and may be used
|
|---|
| 217 | ! to help documentation. This locations are used to
|
|---|
| 218 | ! interpolate model data before writting to output STATIONS
|
|---|
| 219 | ! file. The stations locations are read using the following
|
|---|
| 220 | ! statement:
|
|---|
| 221 | !
|
|---|
| 222 | ! is(1:Ngrids)=0
|
|---|
| 223 | ! DO WHILE (.true.)
|
|---|
| 224 | ! read (unit,*,ERR=10) igrid, flag, Xpos, Ypos
|
|---|
| 225 | ! ng=MAX(1,ABS(ng))
|
|---|
| 226 | ! is(ng)=ic(ng)+1
|
|---|
| 227 | ! SCALARS(ng)%Sflag(is(ng))=flag
|
|---|
| 228 | ! SCALARS(ng)%SposX(is(ng))=Xpos
|
|---|
| 229 | ! SCALARS(ng)%SposY(is(ng))=Ypos
|
|---|
| 230 | ! END DO
|
|---|
| 231 | !
|
|---|
| 232 | ! Since there is no decoding during the reading of the stations
|
|---|
| 233 | ! locations, the POS keyword must be the last one to process.
|
|---|
| 234 | ! That is, it should be at the end of the input specification.
|
|---|
| 235 | !
|
|---|
| 236 | !
|
|---|