Namespace dustscheme_ginoux_mod¶
Namespace List > dustscheme_ginoux_mod
Public Functions¶
| Type | Name |
|---|---|
| pure subroutine, public | compute_ginoux (integer, intent(in) num_layers, integer, intent(in) num_species, type(dustschemeginouxconfig), intent(in) params, real(fp), intent(in) g0, real(fp), dimension(num_layers), intent(in) airden, real(fp), intent(in) frlake, real(fp), intent(in) frsno, real(fp), intent(in) gwettop, integer, intent(in) lwi, real(fp), intent(in) ssm, real(fp), intent(in) tskin, real(fp), intent(in) u10m, real(fp), intent(in) v10m, real(fp), dimension(:), intent(in) species_density, real(fp), dimension(:), intent(in) species_radius, real(fp), dimension(num_layers, num_species), intent(in) species_conc, real(fp), dimension(num_layers, num_species), intent(inout) species_tendencies, real(fp), intent(inout), optional dust_emission_total, real(fp), dimension(:), intent(inout), optional dust_emission_per_bin, real(fp), dimension(:), intent(inout), optional utar_threshold_per_bin, integer, dimension(:), intent(in), optional diagnostic_species_id) Pure science computation for ginoux scheme. |
Public Functions Documentation¶
function compute_ginoux¶
Pure science computation for ginoux scheme.
pure subroutine, public dustscheme_ginoux_mod::compute_ginoux (
integer, intent(in) num_layers,
integer, intent(in) num_species,
type( dustschemeginouxconfig ), intent(in) params,
real(fp), intent(in) g0,
real(fp), dimension(num_layers), intent(in) airden,
real(fp), intent(in) frlake,
real(fp), intent(in) frsno,
real(fp), intent(in) gwettop,
integer, intent(in) lwi,
real(fp), intent(in) ssm,
real(fp), intent(in) tskin,
real(fp), intent(in) u10m,
real(fp), intent(in) v10m,
real(fp), dimension(:), intent(in) species_density,
real(fp), dimension(:), intent(in) species_radius,
real(fp), dimension(num_layers, num_species), intent(in) species_conc,
real(fp), dimension(num_layers, num_species), intent(inout) species_tendencies,
real(fp), intent(inout), optional dust_emission_total,
real(fp), dimension(:), intent(inout), optional dust_emission_per_bin,
real(fp), dimension(:), intent(inout), optional utar_threshold_per_bin,
integer, dimension(:), intent(in), optional diagnostic_species_id
)
This is a pure computational kernel implementing Ginoux dust emission scheme. NO error checking, validation, or infrastructure concerns. Host model must ensure all inputs are valid before calling.
Parameters:
num_layersNumber of vertical layersnum_speciesNumber of chemical speciesparamsScheme parameters (pre-validated by host)g0Required constant from Constants moduleairdenAIRDEN field [appropriate units]frlakeFRLAKE field [appropriate units]frsnoFRSNO field [appropriate units]gwettopGWETTOP field [appropriate units]lwiLWI field [appropriate units]ssmSSM field [appropriate units]tskinTSKIN field [appropriate units]u10mU10M field [appropriate units]v10mV10M field [appropriate units]species_densitySpecies density propertyspecies_radiusSpecies radius propertyspecies_concSpecies concentrations [ppm or ug/kg] (num_layers, num_species)species_tendenciesSpecies tendency terms [mol/mol/s] (num_layers, num_species)dust_emission_totalTotal dust emissions for all bins [kg/m2/s]dust_emission_per_binDust emission flux per bin [kg/m2/s] (num_species)utar_thresholdThreshold friction velocity to have dust emission [m/s]diagnostic_species_idIndices mapping diagnostic species to species array (optional, for per-species diagnostics)
The documentation for this class was generated from the following file src/process/dust/schemes/DustScheme_GINOUX_Mod.F90