pmc_aero_particle Namespace Reference

The aero_particle_t structure and associated subroutines. More...

Classes

struct  aero_particle_t
 Single aerosol particle data structure. More...

Functions

subroutine aero_particle_alloc (aero_particle, n_spec)
 Allocates memory in an aero_particle_t and initializes it to zero.
subroutine aero_particle_free (aero_particle)
 Deallocates memory associated with an aero_particle_t.
subroutine aero_particle_copy (aero_particle_from, aero_particle_to)
 Copies a particle.
subroutine aero_particle_shift (aero_particle_from, aero_particle_to)
 Shift data from one aero_particle_t to another and free the first one.
subroutine aero_particle_zero (aero_particle)
 Resets an aero_particle to be zero.
subroutine aero_particle_set_vols (aero_particle, vols)
 Sets the aerosol particle volumes.
real *8 aero_particle_mass (aero_particle, aero_data)
 Total mass of the particle (kg).
real *8 aero_particle_moles (aero_particle, aero_data)
 Total moles in the particle (1).
real *8 aero_particle_volume (aero_particle)
 Total volume of the particle (m^3).
integer aero_particle_in_bin (aero_particle, bin_grid)
 Find the bin number that contains a given particle.
real *8 aero_particle_average_solute_quantity (aero_particle, aero_data, quantity)
 Returns the volume-average of the non-water elements of quantity.
real *8 aero_particle_total_solute_quantity (aero_particle, aero_data, quantity)
 Returns the volume-total of the non-water elements of quantity.
real *8 average_water_quantity (aero_particle, aero_data, quantity)
 Returns the water element of quantity.
real *8 total_water_quantity (aero_particle, aero_data, quantity)
 Returns the volume-total of the water element of quantity.
real *8 aero_particle_water_molec_weight (aero_data)
 Returns the water molecular weight. (kg/mole).
real *8 aero_particle_solute_molec_weight (aero_particle, aero_data)
 Returns the average of the solute molecular weight (kg/mole).
real *8 aero_particle_solute_num_ions (aero_particle, aero_data)
 Returns the average of the solute ion number (1).
real *8 aero_particle_solute_solubility (aero_particle, aero_data)
 Returns the average of the solute solubilities (1).
real *8 aero_particle_water_density (aero_data)
 Returns the water density (kg/m^3).
real *8 aero_particle_solute_density (aero_particle, aero_data)
 Returns the average of the solute densities (kg/m^3).
real *8 aero_particle_water_mass (aero_particle, aero_data)
 Returns the water mass (kg).
real *8 aero_particle_solute_mass (aero_particle, aero_data)
 Returns the total solute mass (kg).
real *8 aero_particle_solute_kappa (aero_particle, aero_data)
 Returns the average of the solute kappas (1).
subroutine aero_particle_coagulate (aero_particle_1, aero_particle_2, aero_particle_new)
 Coagulate two particles together to make a new one.
subroutine inout_write_aero_particle (file, aero_particle)
 Write full state.
subroutine inout_read_aero_particle (file, aero_particle)
 Read full state.
integer pmc_mpi_pack_size_aero_particle (val)
 Determines the number of bytes required to pack the given value.
subroutine pmc_mpi_pack_aero_particle (buffer, position, val)
 Packs the given value into the buffer, advancing position.
subroutine pmc_mpi_unpack_aero_particle (buffer, position, val)
 Unpacks the given value from the buffer, advancing position.

Detailed Description

The aero_particle_t structure and associated subroutines.


Function Documentation

subroutine pmc_aero_particle::aero_particle_alloc ( type(aero_particle_t),intent(inout)  aero_particle,
integer,intent(in)  n_spec 
)

Allocates memory in an aero_particle_t and initializes it to zero.

Parameters:
aero_particle Particle to init.
n_spec Number of species.
real*8 pmc_aero_particle::aero_particle_average_solute_quantity ( type(aero_particle_t),intent(in)  aero_particle,
type(aero_data_t),intent(in)  aero_data,
real*8,dimension(:),intent(in)  quantity 
)

Returns the volume-average of the non-water elements of quantity.

Parameters:
aero_particle Aerosol particle.
aero_data Aerosol data.
quantity Quantity to average.
subroutine pmc_aero_particle::aero_particle_coagulate ( type(aero_particle_t),intent(in)  aero_particle_1,
type(aero_particle_t),intent(in)  aero_particle_2,
type(aero_particle_t),intent(inout)  aero_particle_new 
)

Coagulate two particles together to make a new one.

Parameters:
aero_particle_1 First particle.
aero_particle_2 Second particle.
aero_particle_new Result particle.
subroutine pmc_aero_particle::aero_particle_copy ( type(aero_particle_t),intent(in)  aero_particle_from,
type(aero_particle_t),intent(inout)  aero_particle_to 
)

Copies a particle.

Parameters:
aero_particle_from Reference particle.
aero_particle_to Destination particle (already alloced on entry).
subroutine pmc_aero_particle::aero_particle_free ( type(aero_particle_t),intent(inout)  aero_particle  ) 

Deallocates memory associated with an aero_particle_t.

Parameters:
aero_particle Particle to free.
integer pmc_aero_particle::aero_particle_in_bin ( type(aero_particle_t),intent(in)  aero_particle,
type(bin_grid_t),intent(in)  bin_grid 
)

Find the bin number that contains a given particle.

Parameters:
aero_particle Particle.
bin_grid Bin_grid.
real*8 pmc_aero_particle::aero_particle_mass ( type(aero_particle_t),intent(in)  aero_particle,
type(aero_data_t),intent(in)  aero_data 
)

Total mass of the particle (kg).

Parameters:
aero_particle Particle.
aero_data Aerosol data.
real*8 pmc_aero_particle::aero_particle_moles ( type(aero_particle_t),intent(in)  aero_particle,
type(aero_data_t),intent(in)  aero_data 
)

Total moles in the particle (1).

Parameters:
aero_particle Particle.
aero_data Aerosol data.
subroutine pmc_aero_particle::aero_particle_set_vols ( type(aero_particle_t),intent(inout)  aero_particle,
real*8,dimension(size(aero_particle%vol),intent(in)  vols 
)

Sets the aerosol particle volumes.

Parameters:
aero_particle Particle.
vols New volumes.
subroutine pmc_aero_particle::aero_particle_shift ( type(aero_particle_t),intent(inout)  aero_particle_from,
type(aero_particle_t),intent(inout)  aero_particle_to 
)

Shift data from one aero_particle_t to another and free the first one.

This is roughly equivalent to aero_particle_copy(from, to) followed by aero_particle_free(from), but faster and with different memory allocation requirements.

Parameters:
aero_particle_from Reference particle (will be deallocated on return).
aero_particle_to Destination particle (not allocated on entry).
real*8 pmc_aero_particle::aero_particle_solute_density ( type(aero_particle_t),intent(in)  aero_particle,
type(aero_data_t),intent(in)  aero_data 
)

Returns the average of the solute densities (kg/m^3).

Parameters:
aero_particle Aerosol particle.
aero_data Aerosol data.
real*8 pmc_aero_particle::aero_particle_solute_kappa ( type(aero_particle_t),intent(in)  aero_particle,
type(aero_data_t),intent(in)  aero_data 
)

Returns the average of the solute kappas (1).

Parameters:
aero_particle Aerosol particle.
aero_data Aerosol data.
real*8 pmc_aero_particle::aero_particle_solute_mass ( type(aero_particle_t),intent(in)  aero_particle,
type(aero_data_t),intent(in)  aero_data 
)

Returns the total solute mass (kg).

Parameters:
aero_particle Aerosol particle.
aero_data Aerosol data.
real*8 pmc_aero_particle::aero_particle_solute_molec_weight ( type(aero_particle_t),intent(in)  aero_particle,
type(aero_data_t),intent(in)  aero_data 
)

Returns the average of the solute molecular weight (kg/mole).

Parameters:
aero_particle Aerosol particle.
aero_data Aerosol data.
real*8 pmc_aero_particle::aero_particle_solute_num_ions ( type(aero_particle_t),intent(in)  aero_particle,
type(aero_data_t),intent(in)  aero_data 
)

Returns the average of the solute ion number (1).

Parameters:
aero_particle Aerosol particle.
aero_data Aerosol data.
real*8 pmc_aero_particle::aero_particle_solute_solubility ( type(aero_particle_t),intent(in)  aero_particle,
type(aero_data_t),intent(in)  aero_data 
)

Returns the average of the solute solubilities (1).

Parameters:
aero_particle Aerosol particle.
aero_data Aerosol data.
real*8 pmc_aero_particle::aero_particle_total_solute_quantity ( type(aero_particle_t),intent(in)  aero_particle,
type(aero_data_t),intent(in)  aero_data,
real*8,dimension(:),intent(in)  quantity 
)

Returns the volume-total of the non-water elements of quantity.

Parameters:
aero_particle Aerosol particle.
aero_data Aerosol data.
quantity Quantity to total.
real*8 pmc_aero_particle::aero_particle_volume ( type(aero_particle_t),intent(in)  aero_particle  ) 

Total volume of the particle (m^3).

Parameters:
aero_particle Particle.
real*8 pmc_aero_particle::aero_particle_water_density ( type(aero_data_t),intent(in)  aero_data  ) 

Returns the water density (kg/m^3).

Parameters:
aero_data Aerosol data.
real*8 pmc_aero_particle::aero_particle_water_mass ( type(aero_particle_t),intent(in)  aero_particle,
type(aero_data_t),intent(in)  aero_data 
)

Returns the water mass (kg).

Parameters:
aero_particle Aerosol particle.
aero_data Aerosol data.
real*8 pmc_aero_particle::aero_particle_water_molec_weight ( type(aero_data_t),intent(in)  aero_data  ) 

Returns the water molecular weight. (kg/mole).

Parameters:
aero_data Aerosol data.
subroutine pmc_aero_particle::aero_particle_zero ( type(aero_particle_t),intent(inout)  aero_particle  ) 

Resets an aero_particle to be zero.

Parameters:
aero_particle Particle to zero.
real*8 pmc_aero_particle::average_water_quantity ( type(aero_particle_t),intent(in)  aero_particle,
type(aero_data_t),intent(in)  aero_data,
real*8,dimension(:),intent(in)  quantity 
)

Returns the water element of quantity.

Parameters:
aero_particle Aerosol particle.
aero_data Aerosol data.
quantity Quantity to average.
subroutine pmc_aero_particle::inout_read_aero_particle ( type(inout_file_t),intent(inout)  file,
type(aero_particle_t),intent(out)  aero_particle 
)

Read full state.

Parameters:
file File to write to.
aero_particle Aero_particle to read.
subroutine pmc_aero_particle::inout_write_aero_particle ( type(inout_file_t),intent(inout)  file,
type(aero_particle_t),intent(in)  aero_particle 
)

Write full state.

Parameters:
file File to write to.
aero_particle Aero_particle to write.
subroutine pmc_aero_particle::pmc_mpi_pack_aero_particle ( character,dimension(:),intent(inout)  buffer,
integer,intent(inout)  position,
type(aero_particle_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_aero_particle::pmc_mpi_pack_size_aero_particle ( type(aero_particle_t),intent(in)  val  ) 

Determines the number of bytes required to pack the given value.

Parameters:
val Value to pack.
subroutine pmc_aero_particle::pmc_mpi_unpack_aero_particle ( character,dimension(:),intent(inout)  buffer,
integer,intent(inout)  position,
type(aero_particle_t),intent(out)  val 
)

Unpacks the given value from the buffer, advancing position.

Parameters:
buffer Memory buffer.
position Current buffer position.
val Value to pack.
real*8 pmc_aero_particle::total_water_quantity ( type(aero_particle_t),intent(in)  aero_particle,
type(aero_data_t),intent(in)  aero_data,
real*8,dimension(:),intent(in)  quantity 
)

Returns the volume-total of the water element of quantity.

Parameters:
aero_particle Aerosol particle.
aero_data Aerosol data.
quantity Quantity to total.

Generated on 29 Mar 2010 for PartMC by  doxygen 1.6.1