! Station Extraction Parameters. ! !svn $Id: stations_bl_test.in 751 2015-01-07 22:56:36Z arango $ !========================================================= Hernan G. Arango === ! Copyright (c) 2002-2015 The ROMS/TOMS Group ! ! Licensed under a MIT/X style license ! ! See License_ROMS.txt ! !============================================================================== ! ! ! Input parameters can be entered in ANY order, provided that the parameter ! ! KEYWORD (usually, upper case) is typed correctly followed by "=" or "==" ! ! symbols. Any comment lines are allowed and must begin with an exclamation ! ! mark (!) in column one. Comments may appear to the right of a parameter ! ! specification to improve documentation. Comments will be ignored during ! ! reading. Blank lines are also allowed and ignored. Continuation lines in ! ! a parameter specification are allowed and must be preceded by a backslash ! ! (\). In some instances, more than one value is required for a parameter. ! ! If fewer values are provided, the last value is assigned for the entire ! ! parameter array. The multiplication symbol (*), without blank spaces in ! ! between, is allowed for a parameter specification. For example, in a two ! ! grids nested application: ! ! ! ! AKT_BAK == 2*1.0d-6 2*5.0d-6 ! m2/s ! ! ! ! indicates that the first two entries of array AKT_BAK, in fortran column- ! ! major order, will have the same value of "1.0d-6" for grid 1, whereas the ! ! next two entries will have the same value of "5.0d-6" for grid 2. ! ! ! ! In multiple levels of nesting and/or multiple connected domains step-ups, ! ! "Ngrids" entries are expected for some of these parameters. In such case, ! ! the order of the entries for a parameter is extremely important. It must ! ! follow the same order (1:Ngrids) as in the state variable declaration. The ! ! USER may follow the above guidelines for specifying his/her values. These ! ! parameters are marked by "==" plural symbol after the KEYWORD. ! ! ! !============================================================================== ! ! Switch to control the writing of stations data within nested and/or multiple ! connected grids, [1:Ngrids]. Lstations == T ! Logical switches (TRUE/FALSE) to activate writing of fields in STATION ! output file, [Sout(:,ng), ng=1, Ngrids]. Sout(idUvel) == T ! u 3D U-velocity Sout(idVvel) == T ! v 3D V-velocity Sout(idu3dE) == F ! u_eastward 3D U-eastward at RHO-points Sout(idv3dN) == F ! v_northward 3D V-nortward at RHO-points Sout(idWvel) == T ! w 3D W-velocity Sout(idOvel) == T ! omega 3D omega vertical velocity Sout(idUbar) == T ! ubar 2D U-velocity Sout(idVbar) == T ! vbar 2D V-velocity Sout(idu2dE) == F ! ubar_eastward 2D U-eastward at RHO-points Sout(idv2dN) == F ! vbar_northward 2D V-northward at RHO-points Sout(idFsur) == T ! zeta free-surface Sout(idBath) == T ! bath time-dependent bathymetry Sout(idTvar) == T T ! temp, salt, ... all (NT) tracers Sout(idUsms) == T ! sustr surface U-stress Sout(idVsms) == T ! svstr surface V-stress Sout(idUbms) == T ! bustr bottom U-stress Sout(idVbms) == T ! bvstr bottom V-stress Sout(idUbrs) == F ! bustrc bottom U-current stress Sout(idVbrs) == F ! bvstrc bottom V-current stress Sout(idUbws) == F ! bustrw bottom U-wave stress Sout(idVbws) == F ! bvstrw bottom V-wave stress Sout(idUbcs) == F ! bustrcwmax bottom max wave-current U-stress Sout(idVbcs) == F ! bvstrcwmax bottom max wave-current V-stress Sout(idUbot) == F ! Ubot bed wave orbital U-velocity Sout(idVbot) == F ! Vbot bed wave orbital V-velocity Sout(idUbur) == F ! Ur bottom U-velocity above bed Sout(idVbvr) == F ! Vr bottom V-velocity above bed Sout(idW2xx) == F ! Sxx_bar 2D radiation stress, Sxx component Sout(idW2xy) == F ! Sxy_bar 2D radiation stress, Sxy component Sout(idW2yy) == F ! Syy_bar 2D radiation stress, Syy component Sout(idU2rs) == F ! Ubar_Rstress 2D radiation U-stress Sout(idV2rs) == F ! Vbar_Rstress 2D radiation V-stress Sout(idU2Sd) == F ! ubar_stokes 2D U-Stokes velocity Sout(idV2Sd) == F ! vbar_stokes 2D V-Stokes velocity Sout(idW3xx) == F ! Sxx 3D radiation stress, Sxx component Sout(idW3xy) == F ! Sxy 3D radiation stress, Sxy component Sout(idW3yy) == F ! Syy 3D radiation stress, Syy component Sout(idW3zx) == F ! Szx 3D radiation stress, Szx component Sout(idW3zy) == F ! Szy 3D radiation stress, Szy component Sout(idU3rs) == F ! u_Rstress 3D U-radiation stress Sout(idV3rs) == F ! v_Rstress 3D V-radiation stress Sout(idU3Sd) == F ! u_stokes 3D U-Stokes velocity Sout(idV3Sd) == F ! v_stokes 3D V-Stokes velocity Sout(idWamp) == F ! Hwave wave height Sout(idWlen) == F ! Lwave wave length Sout(idWdir) == F ! Dwave wave direction Sout(idWptp) == F ! Pwave_top wave surface period Sout(idWpbt) == F ! Pwave_bot wave bottom period Sout(idWorb) == F ! Ub_swan wave bottom orbital velocity Sout(idWdis) == F ! Wave_dissip wave dissipation Sout(idPair) == T ! Pair surface air pressure Sout(idUair) == T ! Uair surface U-wind component Sout(idVair) == T ! Vair surface V-wind component Sout(idTsur) == F F ! shflux, ssflux surface net heat and salt flux Sout(idLhea) == F ! latent latent heat flux Sout(idShea) == F ! sensible sensible heat flux Sout(idLrad) == F ! lwrad longwave radiation flux Sout(idSrad) == F ! swrad shortwave radiation flux Sout(idEmPf) == F ! EminusP E-P flux Sout(idevap) == F ! evaporation evaporation rate Sout(idrain) == F ! rain precipitation rate Sout(idDano) == T ! rho density anomaly Sout(idVvis) == T ! AKv vertical viscosity Sout(idTdif) == T ! AKt vertical T-diffusion Sout(idSdif) == T ! AKs vertical Salinity diffusion Sout(idHsbl) == T ! Hsbl depth of surface boundary layer Sout(idHbbl) == T ! Hbbl depth of bottom boundary layer Sout(idMtke) == F ! tke turbulent kinetic energy Sout(idMtls) == F ! gls turbulent length scale ! Logical switches (TRUE/FALSE) to activate writing of exposed sediment ! layer properties into STATIONS output file. Currently, MBOTP properties ! are expected for the bottom boundary layer and/or sediment models: ! ! idBott( 1=isd50) grain_diameter mean grain diameter ! idBott( 2=idens) grain_density mean grain density ! idBott( 3=iwsed) settling_vel mean settling velocity ! idBott( 4=itauc) erosion_stress critical erosion stress ! idBott( 5=irlen) ripple_length ripple length ! idBott( 6=irhgt) ripple_height ripple height ! idBott( 7=ibwav) bed_wave_amp wave excursion amplitude ! idBott( 8=izdef) Zo_def default bottom roughness ! idBott( 9=izapp) Zo_app apparent bottom roughness ! idBott(10=izNik) Zo_Nik Nikuradse bottom roughness ! idBott(11=izbio) Zo_bio biological bottom roughness ! idBott(12=izbfm) Zo_bedform bed form bottom roughness ! idBott(13=izbld) Zo_bedload bed load bottom roughness ! idBott(14=izwbl) Zo_wbl wave bottom roughness ! idBott(15=iactv) active_layer_thickness active layer thickness ! idBott(16=ishgt) saltation saltation height ! ! 1 1 1 1 1 1 1 ! 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 Sout(idBott) == F F F F F F F F F F F F F F F F ! Number of stations to process in each nested grid. These values are ! essential because the station arrays are dynamically allocated using ! these values, [1:Ngrids]. ! AJ 02/14/2018 added 48 stations of CECAT current survey NSTATION == 115 ! Station locations for all grids in any desired order. The horizontal ! location for a particular station may be specified in terms of fractional ! (I,J) grid pairs (FLAG=0) or (longitude,latitude) grid pairs (FLAG=1). ! Here, FLAG is a special switch and may be used for multiple purposes. ! The GRID column indicates nested grid number to process. This value must ! be one in non-nested applications. The COMMENT section is ignored during ! reading and may be used to help documentation. POS = GRID FLAG X-POS Y-POS COMMENT 1 0 244 633 !-149.8950 61.2383 WL - Anchorage, AK 1 0 233 290 !-151.4058 60.6823 WL - Nikiski, AK 1 0 322 98 !-151.7254 59.4380 WL - Seldovia, AK 1 0 180 12 !-152.5133 57.73 WL - Kodiak Island, AK 1 0 136 2 !-154.2483 56.8967 WL - Alitak, AK 1 0 148 753 !-149.8467 61.3933 WL - Goose Creek, Ak 1 0 184 648 !-149.9167 61.2683 WL - Port Mackenzie, Ak 1 0 205 528 !-150.2133 61.1733 WL - Fire Island, AK 1 0 267 450 !-150.4133 61.0367 WL - Point Possession 1 0 139 367 !-151.1633 61.0433 WL - North Foreland 1 0 263 268 !-151.2833 60.5033 WL - Chinulna Point 1 0 159 257 !-151.9517 60.5117 WL - Kaligan Island 1 0 260 247 !-151.38 60.3367 WL - Cape Kasilof 1 0 263 206 !-151.6817 60.055 WL - Ninilchik 1 0 271 167 !-151.8667 59.7717 WL - Anchor Point 1 0 111 23 !-153.9583 58.3917 WL - Nukshak Island 1 0 149 20 !-153.34 58.1067 WL - West Raspherry Island 1 0 104 7 !-155.3933 57.7067 WL - Puale Bay 1 0 182 17 !-152.4983 57.9217 WL - Ouzinkie 1 0 154 3 !-153.2517 56.965 WL - Sitkalidak Island 1 0 171 17 !-152.8117 57.9283 WL - Uzkosti Point (no plotting on the CIOFS Map from here) 1 0 169 16 !-152.8667 57.8733 WL - Port Lions 1 0 505 44 !-151.0233 59.725 WL - Bear Cove 1 0 351 85 !-151.565 59.4683 WL - Kasitsna Bay 1 0 112 20 !-154.27 58.29 WL - Aguchik Island 1 0 168 18 !-152.925 57.9783 WL - Nachalni Island 1 0 408 120 !-151.3999696 59.5935487 CTD - cast 02 1 0 208 257 !-151.7056567 60.4716673 CTD - cast 04 1 0 171 296 !-151.6113030 60.7870090 CTD - cast 05 1 0 265 24 !-151.5211626 59.1111396 Kennedy entrance for Michael Ulmgren 1 0 263 25 !-151.5465850 59.0853463 Kennedy entrance for Michael Ulmgren 1 0 242 29 !-151.8603300 58.7890133 Kennedy entrance for Michael Ulmgren 1 0 208 24 !-152.2472727 58.4128343 Kennedy entrance for Michael Ulmgren 1 0 210 24 !-152.2244432 58.4381774 Kennedy entrance for Michael Ulmgren 1 0 253 205 !-151.747300 60.059400 Nikiski for Tom Ravens 1 0 253 207 !-151.728700 60.076000 Nikiski for Tom Ravens 1 0 263 205 !-151.6888 60.0467 Nikiski for Tom Ravens (new) 1 0 263 207 !-151.6741 60.0613 Nikiski for Tom Ravens (new) 1 0 342 125 !-151.6783 59.5164 Trench 1 0 335 119 !-151.6986 59.4927 Near Seldovia 1 0 382 72 !-151.4228 59.5091 Sadie Cove 1 1 0 386 61 !-151.3877 59.5062 Sadie Cove 2 1 0 368 60 !-151.4532 59.4725 Tutka Bay 1 1 0 369 42 !-151.4022 59.4486 Tutka Bay 2 1 0 383 99 !-151.4628 59.5358 CIOFS1 1 0 358 105 !-151.5713 59.5032 ciofs2 1 0 364 89 !-151.5227 59.4953 CIOFS3 1 0 222 591 !-149.98435 61.21685 COI0206 Point Woronzof 1 0 226 550 !-150.12553 61.17923 COI0207 Fire Island, 1 nm E 1 0 187 541 !-150.17585 61.19218 COI0213 Fire Island 1 0 194 659 !-149.89452 61.27822 COI0301 Knik Arm, NW of POA 1 0 208 659 !-149.88222 61.27463 COI0302 Knik Arm, East Side 1 0 203 635 !-149.92067 61.25225 COI0303 Port Mackenzie, South of 1 0 142 446 !-150.56492 61.16085 COI0306 Fire Island Shoal, NW of 1 0 206 440 !-150.56155 61.10137 COI0307 Beluga Shoal, S. of 1 0 256 51 !-151.98232 59.0658 COI0418 Kennedy Entrance 1 0 166 164 !-152.36833 59.83933 COI0419 Anchor Point West 1 0 213 166 !-152.15553 59.8187 COI0420 Anchor Point East 1 0 356 140 !-151.6519 59.57542 COI0421 Barabara Point 1 0 460 92 !-151.19163 59.66667 COI0422 Glacier Split 1 0 180 288 !-151.6469 60.72198 COI0501 West Foreland 1 0 198 290 !-151.55733 60.72067 COI0502 The Forelands 1 0 222 294 !-151.43297 60.71727 COI0503 East Foreland 1 0 231 290 !-151.41787 60.68338 COI0504 Nikiski, .8 nm west of 1 0 185 272 !-151.73981 60.59667 COI0505 West Foreland, south of 1 0 238 276 !-151.44453 60.58083 COI0506 Kenai River, north of 1 0 123 258 !-152.12773 60.5517 COI0507 Drift River Terminal 1 0 212 259 !-151.67325 60.48295 COI0508 Kalgin Island, east of 1 0 135 234 !-152.1817 60.37918 COI0509 Harriot Pt., west of 1 0 225 226 !-151.75453 60.24802 COI0510 Kalgin Island, SE of 1 0 191 193 !-152.12018 60.02327 COI0511 Cape Ninilchik, west of 1 0 62 108 !-153.42212 59.56661 COI0512 Iliamna Bay 1 0 324 120 !-151.75505 59.4828 COI0513 Seldovia 1 0 124 87 !-152.93028 59.3018 COI0514 Augustine Island 1 0 234 97 !-152.36497 59.31487 COI0515 Kachemak Bay, southwest of 1 0 284 107 !-151.9659 59.40002 COI0516 Port Graham 1 0 124 44 !-153.1842 58.89005 COI0517 Cape Douglas 1 0 181 54 !-152.7277 58.98048 COI0518 Cape Douglas, NE 1 0 216 41 !-152.40778 58.808 COI0519 Stevenson Passage 1 0 247 56 !-152.15185 59.0492 COI0520 West Armatuli Island, North 1 0 262 51 !-151.89483 59.12072 COI0521 Cape Elizabeth 1 0 271 49 !-151.78703 59.21125 COI0522 Port Chatham 1 0 268 45 !-151.77543 59.16658 COI0523 Chugach Passage 1 0 266 36 !-151.7055 59.13387 COI0524 Chugach Passage, east of 1 0 233 291 !-151.4037 60.6869 COI0801 Tesoro Pier, N of 1 0 237 289 !-151.39162 60.66782 COI0802 Unocal Pier, S of 1 0 407 120 !-151.40017 59.5925 COI1201 Homer Spit 1 0 292 111 !-151.91688 59.42247 COI1202 Pt. Pogishi, SW of 1 0 249 158 !-152.03417 59.74383 COI1203 Anchor Point, W of 1 0 141 378 !-151.08065 61.05982 COI1204 North Forelands 1 0 207 257 !-151.70633 60.47183 COI1205 Kalgin Island, 4nm E of 1 0 265 467 !-150.36035 61.0566 COI1207 Point Possession 1 0 256 498 !-150.26492 61.1036 COI1208 Fire Island, South of 1 0 191 533 !-150.2015 61.18483 COI1209 Fire Island, North of 1 0 210 335 !-151.23268 60.88697 COI1210 Middle Ground Shoal, E of. 1 0 185 10 !-152.08979 57.60784 KOD0906 Cape Chiniak 1 0 174 7 !-152.38065 57.37556 KOD0908 gak Island, W. of 1 0 163 5 !-152.83677 57.14315 KOD0909 Cape Barnabas 1 0 145 1 !-153.79126 56.57744 KOD0916 Cape Sitkinak, E of  1 0 139 1 !-154.13396 56.65504 KOD0917 Sitkinak Strait, SW 1 0 130 1 !-154.64118 56.78384 KOD0920 Approach to Alitak Bay 1 0 120 5 !-154.82843 57.28605 KOD0921 Cape Ikolik 1 0 119 7 !-154.76648 57.41718 KOD0922 Cape Grant 1 0 128 14 !-154.03236 57.79352 KOD0925 Cape Kuliuk 1 0 155 22 !-153.22028 58.21452 KOD0926 Steep Cape  1 0 147 18 !-153.43005 58.01902 KOD0927 Raspberry Cape, S of 1 0 171 26 !-152.90728 58.40572 KOD0936 Black Cape 1 0 187 27 !-152.67033 58.48517 KOD0938 Lighthouse Point 1 0 215 20 !-151.91508 58.34598 KOD0941 Tonki Cape, E of 1 0 211 32 !-152.39663 58.65111 KOD0944 Perevalnie Island, N of 1 0 121 15 !-154.175 57.91000 NDBC 46077 1 0 323 100 !-151.72100 59.44100 NDBC Buoy at Seldovia Deep 1 0 315 146 !-151.82900 59.59700 NDBC Buoy 46108 Lower Cook Inlet 1 0 409 127 !-151.40900 59.60200 NDBC Buoy at Homer Dolphin Deep 1 0 189 6 !-151.69500 57.47900 NDBC 46264 Kodiak ! GLOSSARY: ! ========= ! ! This input file provides the positions of stations data to be extracted ! and written into STATIONS output file. This file is use to monitor model ! fields at frequent time intervals. It is also used to sample the model at ! observation locations in order to build the penalty function used in ! variational data assimilation. ! !------------------------------------------------------------------------------ ! Control Switch. !------------------------------------------------------------------------------ ! ! Lstations Switch to control the writing of station data within nested ! and/or multiple connected grids. Ngrid values are expected. ! By default this switch is set to TRUE in "mod_scalars" for ! all grids when the CPP option STATIONS is activated. The ! USER can control which grid to process by turning on/off ! this switch. ! !------------------------------------------------------------------------------ ! Logical switches (TRUE/FALSE) to activate writing of fields in STATIONS ! output file. Except for tracer type variables, Ngrids values are expected ! for all switches. !------------------------------------------------------------------------------ ! ! Sout(idUvel) Write out 3D U-velocity component. ! Sout(idVvel) Write out 3D V-velocity component. ! Sout(idu3dE) Write out 3D Eastward velocity component at RHO-points. ! Sout(idv3dN) Write out 3D Northward velocity component at RHO-points. ! Sout(idWvel) Write out 3D W-velocity component. ! Sout(idOvel) Write out 3D omega vertical velocity. ! Sout(idUbar) Write out 2D U-velocity component. ! Sout(idVbar) Write out 2D V-velocity component. ! Sout(idu2dE) Write out 2D Eastward velocity component at RHO-points. ! Sout(idv2dN) Write out 2D Northward velocity component at RHO-points. ! Sout(idFsur) Write out free-surface. ! Sout(idBath) Write out time-dependent bathymetry. ! ! Sout(idTvar) Write out tracer type variables, (NT,Ngrids) values are ! Expected. ! ! Sout(idUsms) Write out surface U-momentum stress. ! Sout(idVsms) Write out surface V-momentum stress. ! Sout(idUbms) Write out bottom U-momentum stress. ! Sout(idVbms) Write out bottom V-momentum stress. ! ! Sout(idUbrs) Write out current-induced, U-momentum stress. ! Sout(idVbrs) Write out current-induced, V-momentum stress. ! Sout(idUbws) Write out wind-induced, bottom U-wave stress. ! Sout(idVbws) Write out wind-induced, bottom V-wave stress. ! Sout(idUbcs) Write out bottom maximum wave and current U-stress. ! Sout(idVbcs) Write out bottom maximum wave and current V-stress. ! ! Sout(idUbot) Write out wind-induced, bed wave orbital U-velocity. ! Sout(idVbot) Write out wind-induced, bed wave orbital V-velocity. ! Sout(idUbur) Write out bottom U-velocity above bed. ! Sout(idVbvr) Write out bottom V-velocity above bed. ! ! Sout(idW2xx) Write out 2D radiation stress, Sxx component. ! Sout(idW2xy) Write out 2D radiation stress, Sxy component. ! Sout(idW2yy) Write out 2D radiation stress, Syy component. ! Sout(idU2rs) Write out 2D U-radiation stress. ! Sout(idV2rs) Write out 2D V-radiation stress. ! Sout(idU2Sd) Write out 2D U-Stokes velocity. ! Sout(idV2Sd) Write out 2D V-Stokes velocity. ! ! Sout(idW3xx) Write out 3D radiation stress, Sxx component. ! Sout(idW3xy) Write out 3D radiation stress, Sxy component. ! Sout(idW3yy) Write out 3D radiation stress, Syy component. ! Sout(idW3zx) Write out 3D radiation stress, Szx component. ! Sout(idW3zy) Write out 3D radiation stress, Szy component. ! Sout(idU3rs) Write out 3D U-radiation stress. ! Sout(idV3rs) Write out 3D V-radiation stress. ! Sout(idU3Sd) Write out 3D U-Stokes velocity. ! Sout(idV3Sd) Write out 3D V-Stokes velocity. ! ! Sout(idWamp) Write out wave height. ! Sout(idWlen) Write out wave length. ! Sout(idWdir) Write out wave direction. ! Sout(idWptp) Write out wave surface period. ! Sout(idWpbt) Write out wave bottom period. ! Sout(idWorb) Write out wave bottom orbital velocity. ! Sout(idWdis) Write out wave dissipation. ! ! Sout(idPair) Write out surface air pressure. ! Sout(idUair) Write out surface U-wind component. ! Sout(idVair) Write out surface V-wind component. ! ! Sout(idTsur) Write out surface net heat and salt flux. ! Sout(idLhea) Write out latent heat flux. ! Sout(idShea) Write out sensible heat flux. ! Sout(idLrad) Write out long-wave radiation flux. ! Sout(idSrad) Write out short-wave radiation flux. ! Sout(idEmPf) Write out E-P flux. ! Sout(idevap) Write out evaporation rate. ! Sout(idrain) Write out precipitation rate. ! ! Sout(idDano) Write out density anomaly. ! Sout(idVvis) Write out vertical viscosity coefficient. ! Sout(idTdif) Write out vertical diffusion coefficient of temperature. ! Sout(idSdif) Write out vertical diffusion coefficient of salinity. ! Sout(idHsbl) Write out depth of oceanic surface boundary layer. ! Sout(idHbbl) Write out depth of oceanic bottom boundary layer. ! Sout(idMtke) Write out turbulent kinetic energy. ! Sout(idMtls) Write out turbulent kinetic energy times length scale. ! ! Sout(idBott) Write out exposed sediment layer properties, 1:MBOTP. ! !------------------------------------------------------------------------------ ! Station positions KEYWORDS. !------------------------------------------------------------------------------ ! ! NSTATION Number of stations to process in each nested grid. Ngrids ! values are expected. These values are essential because ! the station arrays are dynamically allocated using these ! values. ! ! POS Station locations for all grids in any desired order. The ! horizontal location for a particular station can be ! specified in terms of fractional (I,J) grid pairs (FLAG=0) ! or (longitude,latitude) grid pairs (FLAG=1). Here, FLAG is ! a special switch and may be used for multiple purposes. ! The GRID column indicates nested grid number to process. ! This value must be one in non-nested applications. The ! COMMENT section is ignored during reading and may be used ! to help documentation. This locations are used to ! interpolate model data before writting to output STATIONS ! file. The stations locations are read using the following ! statement: ! ! is(1:Ngrids)=0 ! DO WHILE (.true.) ! read (unit,*,ERR=10) igrid, flag, Xpos, Ypos ! ng=MAX(1,ABS(ng)) ! is(ng)=ic(ng)+1 ! SCALARS(ng)%Sflag(is(ng))=flag ! SCALARS(ng)%SposX(is(ng))=Xpos ! SCALARS(ng)%SposY(is(ng))=Ypos ! END DO ! ! Since there is no decoding during the reading of the stations ! locations, the POS keyword must be the last one to process. ! That is, it should be at the end of the input specification. ! !