|
PartMC
2.4.0
|
The aero_binned_t structure and associated subroutines. More...
Data Types | |
| type | aero_binned_t |
| Aerosol number and volume distributions stored per bin. More... | |
Functions/Subroutines | |
| logical function | aero_binned_is_allocated (aero_binned) |
Determine whether the aero_binned is correctly allocated. More... | |
| subroutine | aero_binned_set_sizes (aero_binned, n_bin, n_spec) |
| Set the number of bins and species in an aero_binned_t. More... | |
| subroutine | aero_binned_zero (aero_binned) |
| Set all internal data in an aero_binned_t structure to zero. More... | |
| subroutine | aero_binned_add (aero_binned, aero_binned_delta) |
| Add two aero_binned_t structures together. More... | |
| subroutine | aero_binned_add_scaled (aero_binned, aero_binned_delta, alpha) |
Add a scaled aero_binned_t structure to an existing one. More... | |
| subroutine | aero_binned_sub (aero_binned, aero_binned_delta) |
| Subtract one aero_binned_t structure from another. More... | |
| subroutine | aero_binned_scale (aero_binned, alpha) |
| Scale an aero_binned_t by a real number. More... | |
| subroutine | aero_binned_scale_by_array (aero_binned, alpha_array) |
| Scales an aero_binned_t element-wise by an array of reals. More... | |
| subroutine | aero_binned_add_aero_dist (aero_binned, bin_grid, aero_data, aero_dist) |
| Add an aero_dist_t to an aero_binned_t. More... | |
| integer function | pmc_mpi_pack_size_aero_binned (val) |
| Determine the number of bytes required to pack the structure. More... | |
| subroutine | pmc_mpi_pack_aero_binned (buffer, position, val) |
| Pack the structure into the buffer and advance position. More... | |
| subroutine | pmc_mpi_unpack_aero_binned (buffer, position, val) |
| Unpack the structure from the buffer and advance position. More... | |
| subroutine | pmc_mpi_reduce_avg_aero_binned (val, val_avg) |
| Computes the average of the structure across all processes, storing the result on the root process. More... | |
| subroutine | aero_binned_input_netcdf (aero_binned, ncid, bin_grid, aero_data) |
| Read full state. More... | |
The aero_binned_t structure and associated subroutines.
| subroutine pmc_aero_binned::aero_binned_add | ( | type(aero_binned_t), intent(inout) | aero_binned, |
| type(aero_binned_t), intent(in) | aero_binned_delta | ||
| ) |
Add two aero_binned_t structures together.
Symbolically does aero_binned = aero_binned + aero_binned_delta.
| [in,out] | aero_binned | Base aero_binned_t structure that will be added to. |
| [in] | aero_binned_delta | Structure to add to aero_binned. |
Definition at line 110 of file aero_binned.F90.
| subroutine pmc_aero_binned::aero_binned_add_aero_dist | ( | type(aero_binned_t), intent(inout) | aero_binned, |
| type(bin_grid_t), intent(in) | bin_grid, | ||
| type(aero_data_t), intent(in) | aero_data, | ||
| type(aero_dist_t), intent(in) | aero_dist | ||
| ) |
Add an aero_dist_t to an aero_binned_t.
Symbolically does aero_binned = aero_binned + aero_dist.
| [in,out] | aero_binned | Base aero_binned_t structure to add to. |
| [in] | bin_grid | Bin grid. |
| [in] | aero_data | Aerosol data. |
| [in] | aero_dist | The aero_dist_t structure to add. |
Definition at line 229 of file aero_binned.F90.
| subroutine pmc_aero_binned::aero_binned_add_scaled | ( | type(aero_binned_t), intent(inout) | aero_binned, |
| type(aero_binned_t), intent(in) | aero_binned_delta, | ||
| real(kind=dp), intent(in) | alpha | ||
| ) |
Add a scaled aero_binned_t structure to an existing one.
Symbolically does aero_binned = aero_binned + alpha * aero_binned_delta.
| [in,out] | aero_binned | Base aero_binned_t structure that will be added to. |
| [in] | aero_binned_delta | Structure to add to aero_binned. |
| [in] | alpha | Scale factor. |
Definition at line 136 of file aero_binned.F90.
| subroutine pmc_aero_binned::aero_binned_input_netcdf | ( | type(aero_binned_t), intent(inout) | aero_binned, |
| integer, intent(in) | ncid, | ||
| type(bin_grid_t), intent(in) | bin_grid, | ||
| type(aero_data_t), intent(in) | aero_data | ||
| ) |
Read full state.
| [in,out] | aero_binned | Aero_binned to write. |
| [in] | ncid | NetCDF file ID, in data mode. |
| [in] | bin_grid | bin_grid structure. |
| [in] | aero_data | aero_data structure. |
Definition at line 467 of file aero_binned.F90.
| logical function pmc_aero_binned::aero_binned_is_allocated | ( | type(aero_binned_t), intent(in) | aero_binned | ) |
Determine whether the aero_binned is correctly allocated.
| [in] | aero_binned | Aerosol binned to check. |
Definition at line 53 of file aero_binned.F90.
| subroutine pmc_aero_binned::aero_binned_scale | ( | type(aero_binned_t), intent(inout) | aero_binned, |
| real(kind=dp), intent(in) | alpha | ||
| ) |
Scale an aero_binned_t by a real number.
Symbolically does aero_binned = aero_binned * alpha.
| [in,out] | aero_binned | Base aero_binned to scale. |
| [in] | alpha | Scale factor. |
Definition at line 190 of file aero_binned.F90.
| subroutine pmc_aero_binned::aero_binned_scale_by_array | ( | type(aero_binned_t), intent(inout) | aero_binned, |
| real(kind=dp), dimension(:), intent(in), allocatable | alpha_array | ||
| ) |
Scales an aero_binned_t element-wise by an array of reals.
| [in,out] | aero_binned | Base aero_binned_t structure that will be scaled. |
| [in] | alpha_array | Structure to scale aero_binned. |
Definition at line 207 of file aero_binned.F90.
| subroutine pmc_aero_binned::aero_binned_set_sizes | ( | type(aero_binned_t), intent(inout) | aero_binned, |
| integer, intent(in) | n_bin, | ||
| integer, intent(in) | n_spec | ||
| ) |
Set the number of bins and species in an aero_binned_t.
| [in,out] | aero_binned | Structure to be allocated. |
| [in] | n_bin | Number of aerosol bins to allocate (typically bin_grid%n_bin). |
| [in] | n_spec | Number of aerosol species to allocate (typically aero_data%n_spec). |
Definition at line 72 of file aero_binned.F90.
| subroutine pmc_aero_binned::aero_binned_sub | ( | type(aero_binned_t), intent(inout) | aero_binned, |
| type(aero_binned_t), intent(in) | aero_binned_delta | ||
| ) |
Subtract one aero_binned_t structure from another.
Symbolically does aero_binned = aero_binned - aero_binned_delta.
| [in,out] | aero_binned | Base aero_binned_t structure that will be subtracted from. |
| [in] | aero_binned_delta | Structure to subtract from aero_binned. |
Definition at line 164 of file aero_binned.F90.
| subroutine pmc_aero_binned::aero_binned_zero | ( | type(aero_binned_t), intent(inout) | aero_binned | ) |
Set all internal data in an aero_binned_t structure to zero.
| [in,out] | aero_binned | Structure to zero. |
Definition at line 93 of file aero_binned.F90.
| subroutine pmc_aero_binned::pmc_mpi_pack_aero_binned | ( | character, dimension(:), intent(inout) | buffer, |
| integer, intent(inout) | position, | ||
| type(aero_binned_t), intent(in) | val | ||
| ) |
Pack the structure into the buffer and advance position.
See pmc_mpi for usage details.
| [in,out] | buffer | Memory buffer. |
| [in,out] | position | Current buffer position. |
| [in] | val | Structure to pack. |
Definition at line 279 of file aero_binned.F90.
| integer function pmc_aero_binned::pmc_mpi_pack_size_aero_binned | ( | type(aero_binned_t), intent(in) | val | ) |
Determine the number of bytes required to pack the structure.
See pmc_mpi for usage details.
| [in] | val | Structure to pack. |
Definition at line 263 of file aero_binned.F90.
| subroutine pmc_aero_binned::pmc_mpi_reduce_avg_aero_binned | ( | type(aero_binned_t), intent(in) | val, |
| type(aero_binned_t), intent(inout) | val_avg | ||
| ) |
Computes the average of the structure across all processes, storing the result on the root process.
| [in] | val | Per-process value to average. |
| [in,out] | val_avg | Averaged result (only valid on root process). |
Definition at line 330 of file aero_binned.F90.
| subroutine pmc_aero_binned::pmc_mpi_unpack_aero_binned | ( | character, dimension(:), intent(inout) | buffer, |
| integer, intent(inout) | position, | ||
| type(aero_binned_t), intent(inout) | val | ||
| ) |
Unpack the structure from the buffer and advance position.
See pmc_mpi for usage details.
| [in,out] | buffer | Memory buffer. |
| [in,out] | position | Current buffer position. |
| [in,out] | val | Structure to unpack into (must not be allocated). |
Definition at line 305 of file aero_binned.F90.