-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathBULKF_PARAMS.h
164 lines (152 loc) · 5.8 KB
/
BULKF_PARAMS.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
C $Header: /u/gcmpack/MITgcm/pkg/bulk_force/BULKF_PARAMS.h,v 1.5 2010/08/24 13:56:02 jmc Exp $
C $Name: $
#ifdef ALLOW_BULK_FORCE
C *==========================================================*
C | BULK_PARAMS.h
C | o Header file for BULK_FORCE package parameters:
C | - basic parameter ( I/O frequency, etc ...)
C | - physical constants
C *==========================================================*
C-- COMMON / BULK_PHYS_CONST / physical constants
C.. densities
C rhoA :: density of air [kg/m^3]
C rhoFW :: density of fresh water [kg/m^3]
C rhoSW :: density of sea water [kg/m^3]
C.. specific heats
C cpAir :: specific heat of air [J/kg/K]
C cpwv :: specific heat of water vapour [J/kg/K]
C.. latent heat
C Lvap :: latent heat of vaporization at 0.oC [J/kg]
C Lfresh :: latent heat of melting of pure ice [J/kg]
C Lvap_ice :: latent heat from sublimation [J/kg]
C.. constants
C Tf0kel :: Freezing temp of fresh water in Kelvin = 273.15
C Rgas :: gas constant for dry air [J/kg/K]
C Rvap :: gas constant for H2O vapor [J/kg/K]
C xkar :: von Karman constant [-]
C stefan :: Stefan-Boltzmann constant [W/m^2/K^4]
C.. for transfer coefficient
C zref :: reference height [m] for transfer coefficient
C zwd :: height [m] of near-surface wind-speed input data
C zth :: height [m] of near-surface air-temp. & air-humid. input
C cDrag_[n] :: n = 1,2,3 coefficients used to evaluate drag coefficient
C cStantonS,U :: coefficients used to evaluate Stanton number (for
C sensib. Heat Flx), under Stable / Unstable stratification
C cDalton :: coefficient used to evaluate Dalton number (for Evap)
C.. for bulk formula
C umin :: minimum wind speed used in bulk-formulae [m/s]
C humid_fac :: dry-air - water-vapor molecular mass ratio (minus one)
C (used to calculate virtual temp.)
C saltQsFac :: reduction of sat. vapor pressure over salty water
C gamma_blk :: adiabatic lapse rate
C.. for Long-Wave Radiation
C atm_emissivity ::
C ocean_emissivity ::
C snow_emissivity ::
C ice_emissivity ::
C.. for BULKF_FORMULA_AIM
C FWIND0 :: ratio of near-sfc wind to lowest-level wind
C CHS :: heat exchange coefficient over sea
C VGUST :: wind speed for sub-grid-scale gusts
C DTHETA :: Potential temp. gradient for stability correction
C dTstab :: potential temp. increment for stability function derivative
C FSTAB :: Amplitude of stability correction (fraction)
C.. Albedo
C ocean_albedo :: ocean surface albedo [0-1]
_RL rhoA
c _RL rhoSW
_RL rhoFW
_RL cpAir
c _RL cpwv
_RL Lvap
_RL Lfresh
c _RL Lvap_ice
_RL Tf0kel
_RL Rgas
c _RL Rvap
_RL xkar
_RL stefan
_RL zref, zwd, zth
_RL cDrag_1, cDrag_2, cDrag_3
_RL cStantonS, cStantonU
_RL cDalton
_RL umin
_RL humid_fac
_RL saltQsFac
_RL gamma_blk
_RL atm_emissivity
_RL ocean_emissivity
_RL snow_emissivity
_RL ice_emissivity
#ifdef ALLOW_FORMULA_AIM
_RL FWIND0, CHS, VGUST, DTHETA, dTstab, FSTAB
#endif
_RL ocean_albedo
COMMON / BULK_PHYS_CONST /
& rhoA, rhoFW,
& cpAir, Lvap, Lfresh,
& Tf0kel, Rgas,
& xkar, stefan,
& zref, zwd, zth,
& cDrag_1, cDrag_2, cDrag_3,
& cStantonS, cStantonU, cDalton,
& umin, humid_fac, saltQsFac, gamma_blk,
& atm_emissivity, ocean_emissivity,
& snow_emissivity, ice_emissivity,
#ifdef ALLOW_FORMULA_AIM
& FWIND0, CHS, VGUST, DTHETA, dTstab, FSTAB,
#endif
& ocean_albedo
C-- COMMON / BULK_PAR_I / Integer parameters
C blk_nIter :: Number of iterations to find turbulent transfer coeff.
INTEGER blk_nIter
COMMON / BULK_PAR_I /
& blk_nIter
C-- COMMON / BULK_PAR_R / real parameter
C blk_taveFreq :: time-average output frequency [s]
_RL blk_taveFreq
cjc(Defining externForcing(Period/Cycle)_Atm
_RL externForcingPeriod_Atm
_RL externForcingCycle_Atm
cjc)
COMMON / BULK_PAR_R /
& blk_taveFreq,
cjc(Defining externForcing(Period/Cycle)_Atm
& externForcingPeriod_Atm,
& externForcingCycle_Atm
cjc)
C-- COMMON / BULK_PAR_L / Logical parameters
C .. for BULKF_FORMULA_AIM
C calcWindStress :: True to calculate Wind-Stress from surface wind
C useFluxFormula_AIM :: set to T when using AIM flux formula rather
C than the default formula (LANL)
LOGICAL calcWindStress
LOGICAL useFluxFormula_AIM
LOGICAL useQnetch, useEmPch
COMMON / BULK_PAR_L /
& calcWindStress,
& useFluxFormula_AIM,
& useQnetch, useEmPch
C-- COMMON / BULK_PAR_C / Character string parameters
CHARACTER*(MAX_LEN_FNAM) AirTempFile
CHARACTER*(MAX_LEN_FNAM) AirHumidityFile
CHARACTER*(MAX_LEN_FNAM) RainFile
CHARACTER*(MAX_LEN_FNAM) SolarFile
CHARACTER*(MAX_LEN_FNAM) LongwaveFile
CHARACTER*(MAX_LEN_FNAM) UWindFile
CHARACTER*(MAX_LEN_FNAM) VWindFile
CHARACTER*(MAX_LEN_FNAM) WSpeedFile
CHARACTER*(MAX_LEN_FNAM) RunoffFile
CHARACTER*(MAX_LEN_FNAM) QnetFile
CHARACTER*(MAX_LEN_FNAM) EmPFile
CHARACTER*(MAX_LEN_FNAM) CloudFile
CHARACTER*(MAX_LEN_FNAM) SnowFile
CHARACTER*(MAX_LEN_FNAM) airPotTempFile
COMMON / BULK_PAR_C /
& AirTempFile, AirHumidityFile, RainFile,
& SolarFile, LongwaveFile, UWindFile, VWindFile,
& WSpeedFile, RunoffFile,
& QnetFile, EmPFile, CloudFile, SnowFile,
& airPotTempFile
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
#endif /*ALLOW_BULK_FORCE*/