UFO
|
Enumerations | |
enum | MethodFormulation { UKMO , NCAR , NOAA , DEFAULT , Murphy , Sonntag , LandoltBornstein , Walko , Rogers } |
Various Methods and Formulations available. More... | |
Functions | |
MethodFormulation | resolveMethods (const std::string &input) |
MethodFormulation | resolveFormulations (const std::string &input, const std::string &method) |
float | SatVaporPres_fromTemp (const float temp_K, const MethodFormulation formulation=formulas::MethodFormulation::DEFAULT) |
Calculates saturated vapour pressure from temperature. More... | |
float | SatVaporPres_correction (float e_sub_s, float temp_K, float pressure, const MethodFormulation formulation=formulas::MethodFormulation::DEFAULT) |
Calculates saturated vapour pressure from temperature. More... | |
float | Qsat_From_Psat (float Psat, float P, MethodFormulation formulation=formulas::MethodFormulation::DEFAULT) |
Calculates Saturated specific humidity or saturated vapour pressure using saturation vapour pressure. More... | |
float | VirtualTemp_From_Psat_P_T (float Psat, float P, float T, MethodFormulation formulation=formulas::MethodFormulation::DEFAULT) |
Derive Virtual Temperature from saturation vapour pressure, pressure and temperature. More... | |
float | VirtualTemp_From_Rh_Psat_P_T (float Rh, float Psat, float P, float T, MethodFormulation formulation=formulas::MethodFormulation::DEFAULT) |
Derive Virtual Tempreture using Relative humidity, sat. More... | |
float | Height_To_Pressure_ICAO_atmos (float Height, MethodFormulation formulation=formulas::MethodFormulation::DEFAULT) |
Converts height to pressure using the International Civil Aviation Organization (ICAO) atmosphere. More... | |
float | Pressure_To_Height (float pressure, MethodFormulation formulation=formulas::MethodFormulation::DEFAULT) |
Converts pressure to height. More... | |
float | GetWindDirection (float u, float v) |
Converts u and v wind component into wind direction. More... | |
float | GetWindSpeed (float u, float v) |
Converts u and v wind component into wind speed. More... | |
float | GetWind_U (float windSpeed, float windFromDirection) |
Get eastward (u) wind component from wind speed and direction. More... | |
float | GetWind_V (float windSpeed, float windFromDirection) |
Get northward (v) wind component from wind speed and direction. More... | |
int | RenumberScanPosition (int scanpos) |
Get renumbered scan position 1,2,3,... More... | |
void | horizontalDrift (const std::vector< size_t > &locs, const std::vector< bool > &apply, const std::vector< float > &lat_in, const std::vector< float > &lon_in, const std::vector< util::DateTime > &time_in, const std::vector< float > &height, const std::vector< float > &windspd, const std::vector< float > &winddir, std::vector< float > &lat_out, std::vector< float > &lon_out, std::vector< util::DateTime > &time_out, MethodFormulation formulation=formulas::MethodFormulation::DEFAULT) |
Compute horizontal drift latitude, longitude and time for an atmospheric profile. More... | |
Various Methods and Formulations available.
Enumerator | |
---|---|
UKMO | UKMO specific formulation. |
NCAR | NCAR specific formulation. |
NOAA | NOAA specific formulation. |
DEFAULT | DEFAULT formulation. |
Murphy | |
Sonntag | |
LandoltBornstein | |
Walko | |
Rogers |
Definition at line 26 of file Formulas.h.
float ufo::formulas::GetWind_U | ( | float | windSpeed, |
float | windFromDirection | ||
) |
Get eastward (u) wind component from wind speed and direction.
windSpeed | wind speed [m/s] |
windFromDirection | wind direction [degree] |
Definition at line 347 of file Formulas.cc.
float ufo::formulas::GetWind_V | ( | float | windSpeed, |
float | windFromDirection | ||
) |
Get northward (v) wind component from wind speed and direction.
windSpeed | wind speed [m/s] |
windFromDirection | wind direction [degree] |
Definition at line 359 of file Formulas.cc.
float ufo::formulas::GetWindDirection | ( | float | u, |
float | v | ||
) |
Converts u and v wind component into wind direction.
Wind direction is defined such that a northerly wind is 0°, an easterly wind is 90°, a southerly wind is 180°, and a westerly wind is 270°.
u | eastward (u) wind component[m/s] |
v | northward (v) wind component[m/s] |
Definition at line 323 of file Formulas.cc.
float ufo::formulas::GetWindSpeed | ( | float | u, |
float | v | ||
) |
Converts u and v wind component into wind speed.
u | eastward (u) wind component[m/s] |
v | northward (v) wind component[m/s] |
Definition at line 337 of file Formulas.cc.
float ufo::formulas::Height_To_Pressure_ICAO_atmos | ( | float | Height, |
MethodFormulation | formulation = formulas::MethodFormulation::DEFAULT |
||
) |
Converts height to pressure using the International Civil Aviation Organization (ICAO) atmosphere.
Formulation available:
height | observation height in geopotential metres [gpm] |
Definition at line 224 of file Formulas.cc.
void ufo::formulas::horizontalDrift | ( | const std::vector< size_t > & | locs, |
const std::vector< bool > & | apply, | ||
const std::vector< float > & | lat_in, | ||
const std::vector< float > & | lon_in, | ||
const std::vector< util::DateTime > & | time_in, | ||
const std::vector< float > & | height, | ||
const std::vector< float > & | windspd, | ||
const std::vector< float > & | winddir, | ||
std::vector< float > & | lat_out, | ||
std::vector< float > & | lon_out, | ||
std::vector< util::DateTime > & | time_out, | ||
MethodFormulation | formulation = formulas::MethodFormulation::DEFAULT |
||
) |
Compute horizontal drift latitude, longitude and time for an atmospheric profile.
This formula accepts input and output vectors that correspond to the entire data sample as well as a vector of the locations of the current profile in the entire sample. The latter vector is used to select the relevant observations from the entire sample prior to running the horizontal drift algorithm. The outputs of the algorithm are placed in the relevant locations in the entire sample.
Formulations available:
locs | Vector of locations of the current profile in the entire data sample. | |
apply | Vector specifying whether a location should be used or not (governed by the where clause). | |
lat_in | Vector of input latitudes in the entire sample [degrees]. | |
lon_in | Vector of input longitudes in the entire sample [degrees]. | |
time_in | Vector of input datetimes in the entire sample [ISO 8601 format]. | |
height | Vector of input heights in the entire sample [m]. | |
windspd | Vector of input wind speeds in the entire sample [m/s]. | |
winddir | Vector of input wind directions in the entire sample [degrees]. Wind direction is defined such that a northerly wind is 0°, an easterly wind is 90°, a southerly wind is 180°, and a westerly wind is 270°. | |
[out] | lat_out | Vector of output latitudes in the entire sample [degrees]. |
[out] | lon_out | Vector of output longitudes in the entire sample [degress]. |
[out] | time_out | Vector of output datetimes in the entire sample [ISO 8601 format]. |
formulation | Method used to determine the horizontal drift positions. |
Definition at line 380 of file Formulas.cc.
float ufo::formulas::Pressure_To_Height | ( | float | pressure, |
MethodFormulation | formulation = formulas::MethodFormulation::DEFAULT |
||
) |
Converts pressure to height.
Formulation available:
pressure | observation pressure in Pa |
Definition at line 271 of file Formulas.cc.
float ufo::formulas::Qsat_From_Psat | ( | float | Psat, |
float | P, | ||
MethodFormulation | formulation = formulas::MethodFormulation::DEFAULT |
||
) |
Calculates Saturated specific humidity or saturated vapour pressure using saturation vapour pressure.
Formulation available:
Psat | saturation vapour pressure of pure water vapour |
P | Pressure |
Definition at line 163 of file Formulas.cc.
int ufo::formulas::RenumberScanPosition | ( | int | scanpos | ) |
Get renumbered scan position 1,2,3,...
for satellite instrument which has been spatially resampled and for which scan position is 2,5,8,...
scanpos | satellite instrument scan position |
Definition at line 372 of file Formulas.cc.
MethodFormulation ufo::formulas::resolveFormulations | ( | const std::string & | input, |
const std::string & | method | ||
) |
Definition at line 30 of file Formulas.cc.
MethodFormulation ufo::formulas::resolveMethods | ( | const std::string & | input | ) |
float ufo::formulas::SatVaporPres_correction | ( | float | e_sub_s, |
float | temp_K, | ||
float | pressure, | ||
const MethodFormulation | formulation = formulas::MethodFormulation::DEFAULT |
||
) |
Calculates saturated vapour pressure from temperature.
Formulation available:
e_sub_s | saturation vapour pressure |
temp_K | temperature [k] |
pressure | air pressure [Pa] |
Definition at line 132 of file Formulas.cc.
float ufo::formulas::SatVaporPres_fromTemp | ( | const float | temp_K, |
const MethodFormulation | formulation = formulas::MethodFormulation::DEFAULT |
||
) |
Calculates saturated vapour pressure from temperature.
Formulation available:
temp_K | Temperature [k] |
Definition at line 45 of file Formulas.cc.
float ufo::formulas::VirtualTemp_From_Psat_P_T | ( | float | Psat, |
float | P, | ||
float | T, | ||
MethodFormulation | formulation = formulas::MethodFormulation::DEFAULT |
||
) |
Derive Virtual Temperature from saturation vapour pressure, pressure and temperature.
Formulation available:
Psat | saturation vapour pressure of pure water vapour |
T | Temperature |
P | Pressure |
Definition at line 187 of file Formulas.cc.
float ufo::formulas::VirtualTemp_From_Rh_Psat_P_T | ( | float | Rh, |
float | Psat, | ||
float | P, | ||
float | T, | ||
MethodFormulation | formulation = formulas::MethodFormulation::DEFAULT |
||
) |
Derive Virtual Tempreture using Relative humidity, sat.
vapour pressure, pressure and temperature
Formulation available:
Rh | Relative humidity |
Psat | saturation vapour pressure of pure water vapour |
T | Temperature |
P | Pressure |
Definition at line 204 of file Formulas.cc.