PartMC
2.6.1
|
The aero_data_t structure and associated subroutines. More...
Data Types | |
type | aero_data_t |
Aerosol material properties and associated data. More... | |
Functions/Subroutines | |
real(kind=dp) elemental function | aero_data_vol2rad (aero_data, v) |
Convert mass-equivalent volume (m^3) to geometric radius (m). More... | |
real(kind=dp) elemental function | aero_data_vol2diam (aero_data, v) |
Convert mass-equivalent volume (m^3) to geometric diameter (m). More... | |
real(kind=dp) elemental function | aero_data_rad2vol (aero_data, r) |
Convert geometric radius (m) to mass-equivalent volume (m^3). More... | |
real(kind=dp) elemental function | aero_data_diam2vol (aero_data, d) |
Convert geometric diameter (m) to mass-equivalent volume (m^3). More... | |
real(kind=dp) elemental function | aero_data_vol_to_num_of_monomers (aero_data, v) |
Convert mass-equivalent volume (m^3) to number of monomers in a fractal particle cluster. More... | |
real(kind=dp) function | aero_data_vol_to_mobility_rad (aero_data, v, temp, pressure) |
Convert mass-equivalent volume (m^3) to mobility equivalent radius (m). More... | |
real(kind=dp) function | aero_data_mobility_rad_to_vol (aero_data, mobility_rad, temp, pressure) |
Convert mobility equivalent radius (m) to mass-equivalent volume (m^3). More... | |
real(kind=dp) function | aero_data_mobility_rad_to_geometric_rad (aero_data, mobility_rad, temp, pressure) |
Convert mobility equivalent radius (m) to geometric radius (m^3). More... | |
elemental integer function | aero_data_n_spec (aero_data) |
Return the number of aerosol species, or -1 if uninitialized. More... | |
elemental integer function | aero_data_n_source (aero_data) |
Return the number of aerosol sources, or -1 if uninitialized. More... | |
integer function | aero_data_spec_by_name (aero_data, name) |
Returns the number of the species in aero_data with the given name, or returns 0 if there is no such species. More... | |
integer function | aero_data_source_by_name (aero_data, name) |
Returns the number of the source in aero_data with the given name, or adds the source if it doesn't exist yet. More... | |
subroutine | aero_data_set_water_index (aero_data) |
Fills in aero_data%i_water. More... | |
subroutine | aero_data_set_mosaic_map (aero_data) |
Fills in aero_data%mosaic_index. More... | |
integer function | camp_spec_id (aero_data, i_part, i_spec) |
Get the index on the CAMP state array for a specified species and computational particle. More... | |
subroutine | spec_file_read_species_list (file, name, aero_data, species_list) |
Read a list of species from the given file with the given name. More... | |
integer function | pmc_mpi_pack_size_aero_data (val) |
Determines the number of bytes required to pack the given value. More... | |
subroutine | pmc_mpi_pack_aero_data (buffer, position, val) |
Packs the given value into the buffer, advancing position. More... | |
subroutine | pmc_mpi_unpack_aero_data (buffer, position, val) |
Unpacks the given value from the buffer, advancing position. More... | |
subroutine | aero_data_netcdf_dim_aero_species (aero_data, ncid, dimid_aero_species) |
Write the aero species dimension to the given NetCDF file if it is not already present and in any case return the associated dimid. More... | |
subroutine | aero_data_netcdf_dim_aero_source (aero_data, ncid, dimid_aero_source) |
Write the aero source dimension to the given NetCDF file if it is not already present and in any case return the associated dimid. More... | |
subroutine | aero_data_input_netcdf (aero_data, ncid) |
Read full state. More... | |
subroutine | aero_data_initialize (aero_data, camp_core) |
Initialize the aero_data_t variable with camp chem data. More... | |
Variables | |
integer, parameter | aero_name_len = 50 |
integer, parameter | aero_source_name_len = 100 |
The aero_data_t structure and associated subroutines.
real(kind=dp) elemental function pmc_aero_data::aero_data_diam2vol | ( | type(aero_data_t), intent(in) | aero_data, |
real(kind=dp), intent(in) | d | ||
) |
Convert geometric diameter (m) to mass-equivalent volume (m^3).
[in] | aero_data | Aero data structure. |
[in] | d | Geometric diameter (m). |
Definition at line 136 of file aero_data.F90.
subroutine pmc_aero_data::aero_data_initialize | ( | class(aero_data_t), intent(inout) | aero_data, |
type(camp_core_t), intent(in) | camp_core | ||
) |
Initialize the aero_data_t variable with camp chem data.
[in,out] | aero_data | Aerosol data. |
[in] | camp_core | CAMP core. |
Definition at line 854 of file aero_data.F90.
subroutine pmc_aero_data::aero_data_input_netcdf | ( | type(aero_data_t), intent(inout) | aero_data, |
integer, intent(in) | ncid | ||
) |
Read full state.
[in,out] | aero_data | Aero_data to read. |
[in] | ncid | NetCDF file ID, in data mode. |
Definition at line 770 of file aero_data.F90.
real(kind=dp) function pmc_aero_data::aero_data_mobility_rad_to_geometric_rad | ( | type(aero_data_t), intent(in) | aero_data, |
real(kind=dp), intent(in) | mobility_rad, | ||
real(kind=dp), intent(in) | temp, | ||
real(kind=dp), intent(in) | pressure | ||
) |
Convert mobility equivalent radius (m) to geometric radius (m^3).
[in] | aero_data | Aero data structure. |
[in] | mobility_rad | Mobility equivalent radius (m). |
[in] | temp | Temperature (K). |
[in] | pressure | Pressure (Pa). |
Definition at line 214 of file aero_data.F90.
real(kind=dp) function pmc_aero_data::aero_data_mobility_rad_to_vol | ( | type(aero_data_t), intent(in) | aero_data, |
real(kind=dp), intent(in) | mobility_rad, | ||
real(kind=dp), intent(in) | temp, | ||
real(kind=dp), intent(in) | pressure | ||
) |
Convert mobility equivalent radius (m) to mass-equivalent volume (m^3).
[in] | aero_data | Aero data structure. |
[in] | mobility_rad | Mobility equivalent radius (m). |
[in] | temp | Temperature (K). |
[in] | pressure | Pressure (Pa). |
Definition at line 193 of file aero_data.F90.
elemental integer function pmc_aero_data::aero_data_n_source | ( | type(aero_data_t), intent(in) | aero_data | ) |
Return the number of aerosol sources, or -1 if uninitialized.
[in] | aero_data | Aero data structure. |
Definition at line 251 of file aero_data.F90.
elemental integer function pmc_aero_data::aero_data_n_spec | ( | type(aero_data_t), intent(in) | aero_data | ) |
Return the number of aerosol species, or -1 if uninitialized.
[in] | aero_data | Aero data structure. |
Definition at line 235 of file aero_data.F90.
subroutine pmc_aero_data::aero_data_netcdf_dim_aero_source | ( | type(aero_data_t), intent(in) | aero_data, |
integer, intent(in) | ncid, | ||
integer, intent(out) | dimid_aero_source | ||
) |
Write the aero source dimension to the given NetCDF file if it is not already present and in any case return the associated dimid.
[in] | aero_data | Aero_data structure. |
[in] | ncid | NetCDF file ID, in data mode. |
[out] | dimid_aero_source | Dimid of the source dimension. |
Definition at line 651 of file aero_data.F90.
subroutine pmc_aero_data::aero_data_netcdf_dim_aero_species | ( | type(aero_data_t), intent(in) | aero_data, |
integer, intent(in) | ncid, | ||
integer, intent(out) | dimid_aero_species | ||
) |
Write the aero species dimension to the given NetCDF file if it is not already present and in any case return the associated dimid.
[in] | aero_data | Aero_data structure. |
[in] | ncid | NetCDF file ID, in data mode. |
[out] | dimid_aero_species | Dimid of the species dimension. |
Definition at line 594 of file aero_data.F90.
real(kind=dp) elemental function pmc_aero_data::aero_data_rad2vol | ( | type(aero_data_t), intent(in) | aero_data, |
real(kind=dp), intent(in) | r | ||
) |
Convert geometric radius (m) to mass-equivalent volume (m^3).
[in] | aero_data | Aero data structure. |
[in] | r | Geometric radius (m). |
Definition at line 121 of file aero_data.F90.
subroutine pmc_aero_data::aero_data_set_mosaic_map | ( | type(aero_data_t), intent(inout) | aero_data | ) |
Fills in aero_data%mosaic_index.
[in,out] | aero_data | Aero_data data. |
Definition at line 334 of file aero_data.F90.
subroutine pmc_aero_data::aero_data_set_water_index | ( | type(aero_data_t), intent(inout) | aero_data | ) |
Fills in aero_data%i_water.
[in,out] | aero_data | Aero_data data. |
Definition at line 320 of file aero_data.F90.
integer function pmc_aero_data::aero_data_source_by_name | ( | type(aero_data_t), intent(inout) | aero_data, |
character(len=*), intent(in) | name | ||
) |
Returns the number of the source in aero_data with the given name, or adds the source if it doesn't exist yet.
[in,out] | aero_data | Aero_data data. |
[in] | name | Name of source to find. |
Definition at line 297 of file aero_data.F90.
integer function pmc_aero_data::aero_data_spec_by_name | ( | type(aero_data_t), intent(in) | aero_data, |
character(len=*), intent(in) | name | ||
) |
Returns the number of the species in aero_data with the given name, or returns 0 if there is no such species.
[in] | aero_data | Aero_data data. |
[in] | name | Name of species to find. |
Definition at line 268 of file aero_data.F90.
real(kind=dp) elemental function pmc_aero_data::aero_data_vol2diam | ( | type(aero_data_t), intent(in) | aero_data, |
real(kind=dp), intent(in) | v | ||
) |
Convert mass-equivalent volume (m^3) to geometric diameter (m).
[in] | aero_data | Aero data structure. |
[in] | v | Particle mass-equivalent volume (m^3). |
Definition at line 106 of file aero_data.F90.
real(kind=dp) elemental function pmc_aero_data::aero_data_vol2rad | ( | type(aero_data_t), intent(in) | aero_data, |
real(kind=dp), intent(in) | v | ||
) |
Convert mass-equivalent volume (m^3) to geometric radius (m).
[in] | aero_data | Aero data structure. |
[in] | v | Particle mass-equivalent volume (m^3). |
Definition at line 91 of file aero_data.F90.
real(kind=dp) function pmc_aero_data::aero_data_vol_to_mobility_rad | ( | type(aero_data_t), intent(in) | aero_data, |
real(kind=dp), intent(in) | v, | ||
real(kind=dp), intent(in) | temp, | ||
real(kind=dp), intent(in) | pressure | ||
) |
Convert mass-equivalent volume (m^3) to mobility equivalent radius (m).
Based on Eq. 5, 21 and 30 in Naumann [2003].
[in] | aero_data | Aero data structure. |
[in] | v | Particle mass-equivalent volume (m^3). |
[in] | temp | Temperature (K). |
[in] | pressure | Pressure (Pa). |
Definition at line 172 of file aero_data.F90.
real(kind=dp) elemental function pmc_aero_data::aero_data_vol_to_num_of_monomers | ( | type(aero_data_t), intent(in) | aero_data, |
real(kind=dp), intent(in) | v | ||
) |
Convert mass-equivalent volume (m^3) to number of monomers in a fractal particle cluster.
Based on Eq. 5 in Naumann [2003].
[in] | aero_data | Aero data structure. |
[in] | v | Particle mass-equivalent volume (m^3). |
Definition at line 153 of file aero_data.F90.
integer function pmc_aero_data::camp_spec_id | ( | class(aero_data_t), intent(in) | aero_data, |
integer, intent(in) | i_part, | ||
integer, intent(in) | i_spec | ||
) |
Get the index on the CAMP state array for a specified species and computational particle.
[in] | aero_data | Aerosol data. |
[in] | i_part | Computational particle index (1...aero_state_tn_part). |
[in] | i_spec | Aerosol species index in aero_particle_tvol(:) array. |
Definition at line 361 of file aero_data.F90.
subroutine pmc_aero_data::pmc_mpi_pack_aero_data | ( | character, dimension(:), intent(inout) | buffer, |
integer, intent(inout) | position, | ||
type(aero_data_t), intent(in) | val | ||
) |
Packs the given value into the buffer, advancing position.
[in,out] | buffer | Memory buffer. |
[in,out] | position | Current buffer position. |
[in] | val | Value to pack. |
Definition at line 530 of file aero_data.F90.
integer function pmc_aero_data::pmc_mpi_pack_size_aero_data | ( | type(aero_data_t), intent(in) | val | ) |
Determines the number of bytes required to pack the given value.
[in] | val | Value to pack. |
Definition at line 509 of file aero_data.F90.
subroutine pmc_aero_data::pmc_mpi_unpack_aero_data | ( | character, dimension(:), intent(inout) | buffer, |
integer, intent(inout) | position, | ||
type(aero_data_t), intent(inout) | val | ||
) |
Unpacks the given value from the buffer, advancing position.
[in,out] | buffer | Memory buffer. |
[in,out] | position | Current buffer position. |
[in,out] | val | Value to pack. |
Definition at line 561 of file aero_data.F90.
subroutine pmc_aero_data::spec_file_read_species_list | ( | type(spec_file_t), intent(inout) | file, |
character(len=*), intent(in) | name, | ||
type(aero_data_t), intent(in) | aero_data, | ||
integer, dimension(:), allocatable | species_list | ||
) |
Read a list of species from the given file with the given name.
[in,out] | file | Spec file. |
[in] | name | Name of line. |
[in] | aero_data | Aero_data data. |
species_list | List of species numbers. |
Definition at line 478 of file aero_data.F90.
integer, parameter pmc_aero_data::aero_name_len = 50 |
Definition at line 28 of file aero_data.F90.
integer, parameter pmc_aero_data::aero_source_name_len = 100 |
Definition at line 29 of file aero_data.F90.