The BVW (Bourassa-Vincent-Wood) model is a fully coupled flux and sea state model. It determines internally consistent fluxes (momentum, heat, and moisture), atmospheric stabilities, and sea states.
Includes:
BVW sea state parameterization (optional),
BVW atmospheric boundary layer (roughness length) model,
Toba's 2/3 wave relation,
Monin-Obhukov atmospheric stability parameterization,
Godfrey and Beljaar's convective parameterization.
Main Differences From Other Models:
1) Coupled flux and seastate model is not restricted to the assumption of local equilibrium.
2) Coupling allows the seastate to respond to atmospheric stability, and vice versa.
3) Considers roughness and mixing due to capillary waves, in addition to the usual roughness due to gravity waves and smooth surfaces.
4) The roughness due to capillary waves is adjusted for the orbital motion of the dominant waves.
5) The capillary wave roughness length is adjusted to the frame of reference of the mean surface current.
6) Input options allow for input from a wide range of temperature
and moisture variables.
Model Input:
Lists input parameters and tables explaining options.
Input Parameters:
Parameter | Type | Description | Units |
astab | int | Atmospheric stability option | none |
CONVECT | float | Convective parameter. Recommended value between 0.7 and 1.25. For details see TOGA NOTES #4 | none |
CONV_CRIT | float | Convergence criterion | fraction |
air_moist_prm | int | Atmospheric moisture parameter index | none |
air_moist_val | float | Value of the parameter corresponding to the above index | see below |
pressure | float | Atmospheric surface pressure | Pa |
ref_ht_wind | float | Height of the wind observations | m |
ref_ht_tq | float | Height of the temperature observations. Note: in the current version of the code this must equal to height of the humidity observations. | m |
salinity | float | Salinity | none |
sfc_moist_prm | int | Surface moisture parameter index | none |
sfc_moist_val | float | Value of the parameter corresponding to the above index | see below |
ss_prm | int | Seastate parameter index | none |
ss_val | float | Value of the parameter corresponding to the above index | see below |
t_air | float | Air temperature at the reference height of the thermometer and humidity sensor | C |
t_skin | float | Skin temperature of the water. | C |
warn | int | Warning level: 0 warnings, 1 no warnings. | none |
wind_ang | float | Angle of the mean wind relative to the direction that the dominant waves propagate. The positive direction is counter-clockwise when looking down on the surface. | none |
wind_spd | float | Mean wind speed at the height (zref) of the anemometer | m s-1 |
Options for atmospheric stability condition:
The atmospheric stability in the boundary-layer can be assumed
to neutral, or it can be calculated input parameters.
astab | Description | Units |
0 | Atmospheric stability is assumed to be neutral | none |
1 | Stability is calculated | none |
Options for seastate parameterizations:
There are three possible seastate assumptions: any one of the
following can be treated as known: wind-wave stability parameter
(set to 1.0 for local equilibrium), phase speed, or wave age.
ss_prm | Parameter treated as known (ss_val) | Units |
0 | Wind-wave stability parameter | none |
1 | Phase speed of the dominant waves | m/s |
2 | Wave age the dominant waves (cp/u*) | none |
3 | Significant wave height (Hs) | m |
4 | Significant slope (Hs/l) | none |
Options for atmospheric moisture input:
Choose the moisture parameter that is easiest for you to deal
with:
air_moist_prm | Parameter for moisture of air (air_moist_val) | Units |
0 | Specific humidity at the reference height of the thermometer and humidity sensor | g vapor / g air |
1 | Relative humidity | fraction |
2 | Dew point temperature | C |
3 | Wet bulb temperature | C |
Options for surface moisture input:
Choose the moisture parameter that is easiest for you to deal
with:
sfc_moist_prm | Parameter for moisture of air (sfc_moist_val) | Units |
0 | Specific humidity 'at' (near) the surface | g vapor / g air |
1 | Relative humidity | fraction |
2 | Dew point temperature | C |
3 | Wet bulb temperature | C |
Model Output:
Vector components are calculated parallel and perpendicular to
the direction in which the dominant waves are propagating. The
first component is parallel the direction of wave
propagation, and the second component is perpendicular to the
first (while looking down it is 90 counter-clockwise from the
first component; i.e., in a right handed coordinate system with
the positive vertical axis pointing upward). For most applications
there will be insufficient wave information, requiring the assumption
of local wind-wave equilibrium. This assumption implies that
the wind and the waves are moving in the same direction; which
results in the first component of the vectors being parallel to
the wind direction, and the second component being zero.
All output is single precision floating point.
Parameter | Type | Description | Units |
lhf | scalar | latent heat flux | W m-2 |
shf | scalar | sensible heat flux | W m-2 |
tau | vector | stress vector | N m-2 |
ustar | vector | friction velocity (u*) | m s-1 |
tstar | scalar | scaling term for potential temperature (T*) | C |
qstar | scalar | scaling parameter for moisture (q*) | none |
z_over_L | scalar | dimensionless Monin-Obhukov scale length | m-1 |
wa | vector | wave age, cp/u* | none |
cp | vector | dominant phase speed of gravity waves | m s-1 |
hsig | vector | significant wave height | m |
ww_stab | scalar | wind-wave evolution parameter | none |
zo_m | vector | momentum roughness length | m |
Additional Routines in BVW Library
BVW flux and sea state model: call_bvw97.c
Calls BVW flux and sea state model with one array of arguements. The primary use of this routine is to serve as an interface for the IDL version of the subroutine. Same I/O list.
IDL version of BVW flux and sea state model: bvw97.pro
IDL version of BVW model. Same I/O list.
Height Adjustment: ht_adj.c
Adjusts wind speed, potential temperature, and specific humidity to a specified height (relative to sea level) in addition to the operations performed by the BVW flux and sea state model. I/O is as for BVW, with two additional inputs, and the three additional outputs.
Additional Input
Parameter | Type | Description | Units |
eqv_neut | int | option for equivalent neutral winds | none |
z_wanted | float | height to which the values are adjusted | m |
Options for height adjustment (eqv_neut)
Equivalent neutral wind speed (perhaps better called 'equivalent only when neutral') are used
in applications such as scatterometry. The winds must be height adjusted, the friction velocity is
assumed to be correct (and momentum roughness length), however, the atmospheric stability information
in not known.
Consequently, friction velocity and roughness length are determined using the
atmospheric stability parameterization, but the hight adjustment is made for a neutral atmosphere.
If this option is set to '1', the potential temperature and specific humidity are also equivalent
neutral values.
eqv_neut | Description | Units |
0 | real winds | none |
1 | equivalent neutral winds | none |
Additional Output
Parameters adjusted to the height specified in z_wanted. Adjustment assumed the modified log-profile is valid at both the observation (ref_ht_wind) and the wanted height (z_wanted).
Parameter | Type | Description | Units |
u_at_z | float | wind speed at the specified height | m s-1 |
t_at_z | float | potential temperature at the specified height | oC |
q_at_z | float | specific humidity at the specified height | kg kg-1 |
Calculating Specific Humidity: find_q
There are many methods of measuring the moisture content of air. When data sets are combined, it is likely that several methods have been used. In most boundary layer applications, these measurements must be converted to specific humidity. This routine converts all the common humidity measurements to specific humidity.
find_q Input
Parameter | Type | Description | Units |
moist_prm | int | option for humidity observation units | none |
moist_val | float | value of humidity observations | variable |
press | float | atmospheric pressure | Pa |
temperature | float | temperature of air | oC |
Options for Input Humidity (moist_prm)
Choose the moisture parameter that is easiest for you to deal
with:
moist_prm | Parameter for moisture (moist_val) | Units |
0 | Specific humidity | g vapor / g air |
1 | Relative humidity | fraction |
2 | Dew point temperature | C |
3 | Wet bulb temperature | C |
find_q Output
The function returns specific humidity in units of kg kg-1.

Last update: Jan. 23, 1998