c $Header: /u/gcmpack/MITgcm/pkg/exf/exf_constants.h,v 1.5 2004/05/07 22:09:35 heimbach Exp $
c
c
c ==================================================================
c HEADER exf_constants
c ==================================================================
c
c o Header file for constants.
c These include - numbers (e.g. 1, 2, 1/2, ...)
c - physical constants (e.g. gravitational const.)
c - empirical parameters
c - control parameters (e.g. max. no of iteration)
c
c started: Patrick Heimbach heimbach@mit.edu 06-May-2000
c mods for pkg/seaice: menemenlis@jpl.nasa.gov 20-Dec-2002
c
c ==================================================================
c HEADER exf_constants
c ==================================================================
c 1. numbers
c exf_half 0.5
c exf_one 1.0
c exf_two 2.0
_RL exf_half
_RL exf_one
_RL exf_two
parameter(
& exf_half = 0.5d0 ,
& exf_one = 1.0d0 ,
& exf_two = 2.0d0
& )
real exf_undef
parameter( exf_undef = -9000. )
c 2. physical constants
#ifdef ALLOW_ATM_TEMP
c is identical to "gravity" used in MITgcmUV
c needs to be marmonized through common constants.h file
_RL gravity_mks
parameter ( gravity_mks = 9.81d0 )
#endif
c 3. empirical parameters
#ifdef ALLOW_BULKFORMULAE
c atmrho - mean atmospheric density [kg/(m*3)]
c atmcp - mean atmospheric specific heat [J/kg/deg K]
c flamb - latent heat of evaporation [J/kg]
c cdrag_[n] - n = 1,2,3 coefficients used to evaluate
c drag coefficient
c cstanton_[n] - n = 1,2 coefficients used to evaluate
c the Stanton number (stable/unstable cond.)
c dalton - coefficient used to evaluate the Dalton number
c umin - minimum absolute wind speed used to evaluate
c drag coefficient [m/s]
c zolmin - minimum stability parameter
c zref - reference height
c
c karman - von Karman constant
c cvapor - see e.g. Gill (1982) p.41 Eq. (3.1.15)
c humid_fac - constant entering the evaluation of the virtual
c temperature
c gamma_blk - adiabatic lapse rate
c saltsat - reduction of saturation vapor pressure over salt water
c psim_fac -
c cen2kel - conversion of deg. Centigrade to Kelvin
c hu - height of mean wind
c ht - height of mean temperature
c hq - height of mean rel. humidity
_RL atmrho, atmcp
_RL flamb
_RL cdrag_1, cdrag_2, cdrag_3
_RL cstanton_1, cstanton_2
_RL cdalton
_RL umin
_RL zolmin
_RL zref
_RL karman
_RL cvapor_fac, cvapor_exp
_RL humid_fac
_RL gamma_blk
_RL saltsat
_RL psim_fac
_RL cen2kel
_RL hu
_RL ht
_RL hq
parameter ( cdrag_1 = 0.0027000d0 ,
& cdrag_2 = 0.0001420d0 ,
& cdrag_3 = 0.0000764d0 ,
& cstanton_1 = 0.0327000d0 ,
& cstanton_2 = 0.0180000d0 ,
& cdalton = 0.0346000d0 ,
& atmrho = 1.200 d0 ,
& atmcp = 1005.000 d0 ,
& flamb = 2500000.000 d0 ,
& umin = 0.500 d0 ,
& zolmin = -100.000 d0 ,
& zref = 10.000 d0 ,
& karman = 0.400 d0 ,
& cvapor_fac = 640380.000 d0 ,
& cvapor_exp = 5107.400 d0 ,
& humid_fac = 0.606 d0 ,
& gamma_blk = 0.010 d0 ,
& saltsat = 0.980 d0 ,
& psim_fac = 5.000 d0 ,
& cen2kel = 273.150 d0 ,
& hu = 10.000 d0 ,
& ht = 2.000 d0 ,
& hq = 2.000 d0
& )
#ifndef ALLOW_ATM_WIND
#ifdef ALLOW_ATM_TEMP
c To invert the relationship ustar = ustar(umagn) the following
c parameterization is used:
c
c ustar**2 = umagn**2 * CDN(umagn)
c
c / cquadrag_1 * umagn**2 + cquadrag_2; 0 < u < 11 m/s
c CDN(umagn) =
c \ clindrag_1 * umagn + clindrag_2 ; u > 11 m/s
c
c clindrag_[n] - n = 1, 2 coefficients used to evaluate
c LINEAR relationship of Large and Pond 1981
c cquadrag_[n] - n = 1, 2 coefficients used to evaluate
c quadratic relationship
c u11 - u = 11 m/s wind speed
c ustofu11 - ustar = 0.3818 m/s, corresponding to u = 11 m/s
_RL clindrag_1, clindrag_2
_RL cquadrag_1, cquadrag_2
_RL u11
_RL ustofu11
parameter (
& ustofu11 = 0.381800d0 ,
& u11 = 11. d0 ,
& clindrag_1 = 0.000065d0 ,
& clindrag_2 = 0.000490d0 ,
& cquadrag_1 = clindrag_1/u11/2 ,
& cquadrag_2 = clindrag_1*u11/2 + clindrag_2
& )
#endif
#endif
#ifdef ALLOW_ATM_TEMP
_RL czol
parameter ( czol = hu*karman*gravity_mks )
#endif
c 4. control parameters
c niter_bulk - Number of iterations to be performed for the
c evaluation of the bulk surface fluxes. The ncom
c model uses 2 hardwired interation steps (loop
c unrolled).
c
integer niter_bulk
parameter ( niter_bulk = 2 )
#endif /* ALLOW_BULKFORMULAE */