The bin_grid_t structure and associated subroutines.
More...
Data Types |
type | bin_grid_t |
| 1D grid of size bins. More...
|
Functions/Subroutines |
subroutine | bin_grid_allocate (bin_grid) |
| Allocates a bin_grid.
|
subroutine | bin_grid_allocate_size (bin_grid, n_bin) |
| Allocates a bin_grid of the given size.
|
subroutine | bin_grid_deallocate (bin_grid) |
| Frees all memory.
|
subroutine | vol_to_lnr (r, f_vol, f_lnr) |
| Convert a concentration f(vol)d(vol) to f(ln(r))d(ln(r)) where vol = 4/3 pi r^3.
|
subroutine | bin_grid_make (bin_grid, n_bin, r_min, r_max) |
| Generates the bin grid given the range and number of bins.
|
integer | bin_grid_particle_in_bin (bin_grid, radius) |
| Find the bin number that contains a given particle.
|
subroutine | spec_file_read_bin_grid (file, bin_grid) |
| Read the specification for a bin_grid from a spec file and generate it.
|
integer | pmc_mpi_pack_size_bin_grid (val) |
| Determines the number of bytes required to pack the given value.
|
subroutine | pmc_mpi_pack_bin_grid (buffer, position, val) |
| Packs the given value into the buffer, advancing position.
|
subroutine | pmc_mpi_unpack_bin_grid (buffer, position, val) |
| Unpacks the given value from the buffer, advancing position.
|
subroutine | bin_grid_netcdf_dim_aero_diam (bin_grid, ncid, dimid_aero_diam) |
| Write the aero_diam dimension to the given NetCDF file if it is not already present and in any case return the associated dimid.
|
subroutine | bin_grid_output_netcdf (bin_grid, ncid) |
| Write full state.
|
subroutine | bin_grid_input_netcdf (bin_grid, ncid) |
| Read full state.
|
Detailed Description
The bin_grid_t structure and associated subroutines.
Function/Subroutine Documentation
subroutine pmc_bin_grid::bin_grid_allocate |
( |
type(bin_grid_t),intent(out) |
bin_grid | ) |
|
Allocates a bin_grid.
- Parameters:
-
subroutine pmc_bin_grid::bin_grid_allocate_size |
( |
type(bin_grid_t),intent(out) |
bin_grid, |
|
|
integer,intent(in) |
n_bin |
|
) |
| |
Allocates a bin_grid of the given size.
- Parameters:
-
bin_grid | Bin grid. |
n_bin | Number of bins. |
subroutine pmc_bin_grid::bin_grid_deallocate |
( |
type(bin_grid_t),intent(inout) |
bin_grid | ) |
|
Frees all memory.
- Parameters:
-
bin_grid | Bin_grid to free. |
subroutine pmc_bin_grid::bin_grid_input_netcdf |
( |
type(bin_grid_t),intent(inout) |
bin_grid, |
|
|
integer,intent(in) |
ncid |
|
) |
| |
Read full state.
- Parameters:
-
bin_grid | bin_grid to read. |
ncid | NetCDF file ID, in data mode. |
subroutine pmc_bin_grid::bin_grid_make |
( |
type(bin_grid_t),intent(inout) |
bin_grid, |
|
|
integer,intent(in) |
n_bin, |
|
|
real(kind=dp),intent(in) |
r_min, |
|
|
real(kind=dp),intent(in) |
r_max |
|
) |
| |
Generates the bin grid given the range and number of bins.
- Parameters:
-
bin_grid | New bin grid. |
n_bin | Number of bins. |
r_min | Minimum radius (m^3). |
r_max | Minimum radius (m^3). |
subroutine pmc_bin_grid::bin_grid_netcdf_dim_aero_diam |
( |
type(bin_grid_t),intent(in) |
bin_grid, |
|
|
integer,intent(in) |
ncid, |
|
|
integer,intent(out) |
dimid_aero_diam |
|
) |
| |
Write the aero_diam dimension to the given NetCDF file if it is not already present and in any case return the associated dimid.
- Parameters:
-
bin_grid | Bin_grid structure. |
ncid | NetCDF file ID, in data mode. |
dimid_aero_diam | Dimid of the aero_diam dimension. |
subroutine pmc_bin_grid::bin_grid_output_netcdf |
( |
type(bin_grid_t),intent(in) |
bin_grid, |
|
|
integer,intent(in) |
ncid |
|
) |
| |
Write full state.
- Parameters:
-
bin_grid | bin_grid to write. |
ncid | NetCDF file ID, in data mode. |
integer pmc_bin_grid::bin_grid_particle_in_bin |
( |
type(bin_grid_t),intent(in) |
bin_grid, |
|
|
real(kind=dp),intent(in) |
radius |
|
) |
| |
Find the bin number that contains a given particle.
This assumes logarithmically spaced bins. If a particle is below the smallest bin or above the largest bin, then it is returned as being in the smallest or largest bin, respectively.
- Parameters:
-
bin_grid | Bin_grid. |
radius | Radius of particle. |
subroutine pmc_bin_grid::pmc_mpi_pack_bin_grid |
( |
character,dimension(:),intent(inout) |
buffer, |
|
|
integer,intent(inout) |
position, |
|
|
type(bin_grid_t),intent(in) |
val |
|
) |
| |
Packs the given value into the buffer, advancing position.
- Parameters:
-
buffer | Memory buffer. |
position | Current buffer position. |
val | Value to pack. |
integer pmc_bin_grid::pmc_mpi_pack_size_bin_grid |
( |
type(bin_grid_t),intent(in) |
val | ) |
|
Determines the number of bytes required to pack the given value.
- Parameters:
-
subroutine pmc_bin_grid::pmc_mpi_unpack_bin_grid |
( |
character,dimension(:),intent(inout) |
buffer, |
|
|
integer,intent(inout) |
position, |
|
|
type(bin_grid_t),intent(inout) |
val |
|
) |
| |
Unpacks the given value from the buffer, advancing position.
- Parameters:
-
buffer | Memory buffer. |
position | Current buffer position. |
val | Value to pack. |
subroutine pmc_bin_grid::spec_file_read_bin_grid |
( |
type(spec_file_t),intent(inout) |
file, |
|
|
type(bin_grid_t),intent(inout) |
bin_grid |
|
) |
| |
Read the specification for a bin_grid from a spec file and generate it.
- Parameters:
-
file | Spec file. |
bin_grid | Bin grid. |
subroutine pmc_bin_grid::vol_to_lnr |
( |
real(kind=dp),intent(in) |
r, |
|
|
real(kind=dp),intent(in) |
f_vol, |
|
|
real(kind=dp),intent(out) |
f_lnr |
|
) |
| |
Convert a concentration f(vol)d(vol) to f(ln(r))d(ln(r)) where vol = 4/3 pi r^3.
- Parameters:
-
r | Radius (m). |
f_vol | Concentration as a function of volume. |
f_lnr | Concentration as a function of ln(r). |