#include "base/cs_base.h"
Include dependency graph for cs_atmo.h:Go to the source code of this file.
Classes | |
| struct | cs_atmo_option_t |
| struct | cs_atmo_constants_t |
Enumerations | |
| enum | cs_atmo_model_t { CS_ATMO_OFF = -1 , CS_ATMO_CONSTANT_DENSITY = 0 , CS_ATMO_DRY = 1 , CS_ATMO_HUMID = 2 } |
| enum | cs_atmo_nucleation_type_t { CS_ATMO_NUC_OFF = 0 , CS_ATMO_NUC_PRUPPACHER_KLETT = 1 , CS_ATMO_NUC_COHARD = 2 , CS_ATMO_NUC_ABDUL_RAZZAK = 3 } |
| enum | cs_atmo_universal_functions_t { CS_ATMO_UNIV_FN_CHENG = 0 , CS_ATMO_UNIV_FN_HOGSTROM = 1 , CS_ATMO_UNIV_FN_BUSINGER = 2 , CS_ATMO_UNIV_FN_HARTOGENSIS = 3 , CS_ATMO_UNIV_FN_CARL = 4 } |
| enum | cs_atmo_ground_cat_t { CS_ATMO_GROUND_5_CAT = 0 , CS_ATMO_GROUND_7_CAT = 1 , CS_ATMO_GROUND_23_CAT = 2 } |
| enum | cs_atmo_ground_meb_model_t { CS_ATMO_GROUND_GENUINE = 0 , CS_ATMO_GROUND_PHOTOVOLTAICS = 1 , CS_ATMO_GROUND_VEGETATION = 2 } |
| enum | cs_atmo_projection_t { CS_ATMO_PROJ_UNDEF = -1 , CS_ATMO_PROJ_WGS84 = 0 , CS_ATMO_PROJ_LAMBERT_93 = 1 , CS_ATMO_PROJ_UTM = 2 , CS_ATMO_PROJ_TAN = 3 } |
Functions | |
| void | cs_atmo_phyvar_update (void) |
| void | cs_atmo_fields_init0 (void) |
| void | cs_atmo_bcond (void) |
| void | cs_atmo_init_meteo_profiles (void) |
| Initialize meteo profiles if no meteo file is given. More... | |
| void | cs_atmo_compute_meteo_profiles (void) |
| Compute meteo profiles if no meteo file is given. More... | |
| void | cs_atmo_z_ground_compute (void) |
| This function computes the ground elevation. More... | |
| void | cs_atmo_hydrostatic_profiles_compute (void) |
| Compute hydrostatic profiles of density and pressure. More... | |
| void | cs_atmo_read_meteo_profile (int mode) |
| Reads the meteo profile data for the atmospheric. More... | |
| cs_real_t | cs_mo_phim (cs_real_t z, cs_real_t dlmo) |
| Universal function phim for neutral, stable and unstable. More... | |
| cs_real_t | cs_mo_phih (cs_real_t z, cs_real_t dlmo, cs_real_t prt) |
| Universal function phih for neutral, stable and unstable. More... | |
| cs_real_t | cs_mo_psim (cs_real_t z, cs_real_t z0, cs_real_t dlmo) |
| Universal function psim for neutral, stable and unstable. More... | |
| cs_real_t | cs_mo_psih (cs_real_t z, cs_real_t z0, cs_real_t dlmo, cs_real_t prt) |
| Universal function psih for neutral, stable and unstable. More... | |
| void | cs_mo_compute_from_thermal_diff (cs_real_t z, cs_real_t z0, cs_real_t du, cs_real_t buoyant_param, cs_real_t dt, cs_real_t *dlmo, cs_real_t *ustar) |
| Compute LMO, friction velocity ustar, friction temperature tstar from a thermal difference using Monin Obukhov. More... | |
| void | cs_mo_compute_from_thermal_flux (cs_real_t z, cs_real_t z0, cs_real_t du, cs_real_t buoyant_param, cs_real_t flux, cs_real_t *dlmo, cs_real_t *ustar) |
| Compute LMO, friction velocity ustar, friction temperature tstar from a thermal flux using Monin Obukhov. More... | |
| void | cs_atmo_set_meteo_file_name (const char *file_name) |
| This function set the file name of the meteo file. More... | |
| void | cs_atmo_compute_solar_angles (cs_real_t xlat, cs_real_t xlong, cs_real_t jour, cs_real_t heurtu, int imer, cs_real_t *albe, cs_real_t *za, cs_real_t *muzero, cs_real_t *omega, cs_real_t *fo) |
| 1D Radiative scheme - Solar data + zenithal angle) More... | |
| void | cs_atmo_log_setup (void) |
| Print the atmospheric module options to setup.log. More... | |
| void | cs_atmo_finalize (void) |
| Deallocate arrays for atmo module. More... | |
| void | cs_user_ground_model (void) |
| Allow call of cs_user fonctions during ground model computation. More... | |
| void | cs_atmo_get_ground_zone (cs_lnum_t *n_elts, int *n_ground_cat, const cs_lnum_t **elt_ids) |
| void | cs_atmo_ground_init_arrays (int *n_ground_cat, cs_real_t **csol, cs_real_t **rugdyn, cs_real_t **rugthe, cs_real_t **albedo, cs_real_t **emissi, cs_real_t **vegeta, cs_real_t **c1w, cs_real_t **c2w, cs_real_t **r1, cs_real_t **r2) |
| void | cs_atmo_projection (cs_atmo_projection_t origin_projection, cs_atmo_projection_t target_projection, cs_real_t x_origin, cs_real_t y_origin, cs_real_t *x_target, cs_real_t *y_target, int utm_fixed_zone) |
| Reproject coordinates between supported atmosphere projections. More... | |
Variables | |
| cs_atmo_option_t * | cs_glob_atmo_option |
| cs_atmo_constants_t * | cs_glob_atmo_constants |
| enum cs_atmo_ground_cat_t |
| enum cs_atmo_model_t |
| enum cs_atmo_projection_t |
| void cs_atmo_bcond | ( | void | ) |
| void cs_atmo_compute_meteo_profiles | ( | void | ) |
Compute meteo profiles if no meteo file is given.
| void cs_atmo_compute_solar_angles | ( | cs_real_t | latitude, |
| cs_real_t | longitude, | ||
| cs_real_t | squant, | ||
| cs_real_t | utc, | ||
| int | sea_id, | ||
| cs_real_t * | albedo, | ||
| cs_real_t * | za, | ||
| cs_real_t * | muzero, | ||
| cs_real_t * | omega, | ||
| cs_real_t * | fo | ||
| ) |
1D Radiative scheme - Solar data + zenithal angle)
Compute:
| [in] | xlat | latitude |
| [in] | xlong | longitude |
| [in] | jour | day in the year |
| [in] | heurtu | Universal time (hour) |
| [in] | imer | sea index |
| [out] | albe | albedo |
| [out] | za | zenithal angle |
| [out] | muzero | cosin of zenithal angle (+ correction due to Earth curvature) |
| [out] | omega | solar azimut angle |
| [out] | fo | solar constant |
| [in] | latitude | latitude |
| [in] | longitude | longitude |
| [in] | squant | start day in the year |
| [in] | utc | Universal time (hour) |
| [in] | sea_id | sea index |
| [out] | albedo | albedo |
| [out] | za | zenithal angle |
| [out] | muzero | cosin of zenithal angle |
| [out] | omega | solar azimut angle |
| [out] | fo | solar constant |
| void cs_atmo_fields_init0 | ( | void | ) |
| void cs_atmo_finalize | ( | void | ) |
Deallocate arrays for atmo module.
| void cs_atmo_ground_init_arrays | ( | int * | n_ground_cat, |
| cs_real_t ** | csol, | ||
| cs_real_t ** | rugdyn, | ||
| cs_real_t ** | rugthe, | ||
| cs_real_t ** | albedo, | ||
| cs_real_t ** | emissi, | ||
| cs_real_t ** | vegeta, | ||
| cs_real_t ** | c1w, | ||
| cs_real_t ** | c2w, | ||
| cs_real_t ** | r1, | ||
| cs_real_t ** | r2 | ||
| ) |
| void cs_atmo_hydrostatic_profiles_compute | ( | void | ) |
Compute hydrostatic profiles of density and pressure.
This function solves the following transport equation on
:
where
is the gravity field and
is the potential temperature.
The boundary conditions on
read:
and Neumann elsewhere.
| void cs_atmo_init_meteo_profiles | ( | void | ) |
Initialize meteo profiles if no meteo file is given.
| void cs_atmo_log_setup | ( | void | ) |
Print the atmospheric module options to setup.log.
| void cs_atmo_phyvar_update | ( | void | ) |
| void cs_atmo_projection | ( | cs_atmo_projection_t | origin_projection, |
| cs_atmo_projection_t | target_projection, | ||
| cs_real_t | x_origin, | ||
| cs_real_t | y_origin, | ||
| cs_real_t * | x_target, | ||
| cs_real_t * | y_target, | ||
| int | utm_fixed_zone | ||
| ) |
Reproject coordinates between supported atmosphere projections.
This convenience wrapper converts coordinates from an origin projection to a target projection. Supported projections include WGS84 (geographic lon/lat in degrees), Lambert-93, UTM and a local tangential projection. The function may perform an intermediate conversion to WGS84 when a direct transformation is not available.
| [in] | origin_projection | Input projection enum (cs_atmo_projection_t). |
| [in] | target_projection | Desired output projection enum (cs_atmo_projection_t). |
| [in] | x_origin | X coordinate in the origin projection (lon for WGS84). |
| [in] | y_origin | Y coordinate in the origin projection (lat for WGS84). |
| [out] | x_target | Resulting X coordinate in the target projection. |
| [out] | y_target | Resulting Y coordinate in the target projection. |
| [in] | utm_fixed_zone | Optional forced UTM zone number when converting to UTM. |
| void cs_atmo_read_meteo_profile | ( | int | mode | ) |
Reads the meteo profile data for the atmospheric.
| [in] | mode | 0: reading for dimensions and starting time only 1: reading actual meteo data |
| void cs_atmo_set_meteo_file_name | ( | const char * | file_name | ) |
This function set the file name of the meteo file.
| [in] | file_name | name of the file. |
| void cs_atmo_z_ground_compute | ( | void | ) |
This function computes the ground elevation.
This function solves the following transport equation on
:
where
is the gravity field
The boundary conditions on
read:
Remarks:
This function computes the ground elevation.
This function solves the following transport equation on
:
where
is the gravity field
The boundary conditions on
read:
Remarks:
| void cs_mo_compute_from_thermal_diff | ( | cs_real_t | z, |
| cs_real_t | z0, | ||
| cs_real_t | du, | ||
| cs_real_t | buoyant_param, | ||
| cs_real_t | dt, | ||
| cs_real_t * | dlmo, | ||
| cs_real_t * | ustar | ||
| ) |
Compute LMO, friction velocity ustar, friction temperature tstar from a thermal difference using Monin Obukhov.
| [in] | z | altitude |
| [in] | z0 | |
| [in] | du | velocity difference |
| [in] | buoyant_param | beta g |
| [in] | dt | thermal difference |
| [out] | dlmo | Inverse Monin Obukhov length |
| [out] | ustar | friction velocity |
Compute LMO, friction velocity ustar, friction temperature tstar from a thermal difference using Monin Obukhov.
| [in] | z | altitude |
| [in] | z0 | |
| [in] | du | velocity difference |
| [in] | buoyant_param | beta g |
| [in] | dt | thermal difference |
| [out] | dlmo | Inverse Monin Obukhov length |
| [out] | ustar | friction velocity |
| void cs_mo_compute_from_thermal_flux | ( | cs_real_t | z, |
| cs_real_t | z0, | ||
| cs_real_t | du, | ||
| cs_real_t | buoyant_param, | ||
| cs_real_t | flux, | ||
| cs_real_t * | dlmo, | ||
| cs_real_t * | ustar | ||
| ) |
Compute LMO, friction velocity ustar, friction temperature tstar from a thermal flux using Monin Obukhov.
| [in] | z | altitude |
| [in] | z0 | |
| [in] | du | velocity difference |
| [in] | buoyant_param | beta g |
| [in] | flux | thermal flux |
| [out] | dlmo | Inverse Monin Obukhov length |
| [out] | ustar | friction velocity |
Compute LMO, friction velocity ustar, friction temperature tstar from a thermal flux using Monin Obukhov.
| [in] | z | altitude |
| [in] | z0 | |
| [in] | du | velocity difference |
| [in] | buoyant_param | beta g |
| [in] | flux | thermal flux |
| [out] | dlmo | Inverse Monin Obukhov length |
| [out] | ustar | friction velocity |
Universal function phih for neutral, stable and unstable.
| [in] | z | altitude |
| [in] | dlmo | Inverse Monin Obukhov length |
| [in] | prt | Turbulent Prandtl number |
Universal function phim for neutral, stable and unstable.
| [in] | z | altitude |
| [in] | dlmo | Inverse Monin Obukhov length |
Universal function psih for neutral, stable and unstable.
| [in] | z | altitude |
| [in] | z0 | roughness |
| [in] | dlmo | Inverse Monin Obukhov length |
| [in] | prt | Turbulent Prandtl number |
| [in] | z | altitude |
| [in] | z0 | altitude of the starting point integration |
| [in] | dlmo | Inverse Monin Obukhov length |
| [in] | prt | Turbulent Prandtl number |
Universal function psim for neutral, stable and unstable.
| [in] | z | altitude |
| [in] | z0 | roughness |
| [in] | dlmo | Inverse Monin Obukhov length |
| [in] | z | altitude |
| [in] | z0 | altitude of the starting point integration |
| [in] | dlmo | Inverse Monin Obukhov length |
| void cs_user_ground_model | ( | void | ) |
Allow call of cs_user fonctions during ground model computation.
|
extern |
|
extern |