CAMP 1.0.0
Chemistry Across Multiple Phases
Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
camp_aero_phase_data::aero_phase_data_t Interface Reference

Aerosol phase data type. More...

Collaboration diagram for camp_aero_phase_data::aero_phase_data_t:
Collaboration graph
[legend]

Public Member Functions

procedure load (this, json, j_obj)
 Load data from an input file.
 
procedure initialize (this, chem_spec_data)
 Aerosol phase initialization.
 
procedure name (this)
 Get the name of the aerosol phase.
 
procedure size (this)
 Get the number of species in the phase.
 
procedure num_jac_elem (this)
 Get the number of Jacobian row elements needed during solving.
 
procedure get_property_set (this)
 Get property data associated with this phase.
 
procedure get_species_names (this)
 Get a list of species names in this phase.
 
procedure get_species_type (this, spec_name)
 Get a species type by name.
 
procedure pack_size (this, comm)
 Determine the number of bytes required to pack the given value.
 
procedure bin_pack (this, buffer, pos, comm)
 Packs the given value into the buffer, advancing position.
 
procedure bin_unpack (this, buffer, pos, comm)
 Unpacks the given value from the buffer, advancing position.
 
procedure print (this, file_unit)
 Print the aerosol phase data.
 
final finalize (this)
 Finalize the aerosol phase data.
 

Public Attributes

integer(kind=i_kind) num_spec = 0
 Number of species in the phase.
 
type(string_t), dimension(:), pointer spec_name => null()
 Species names. These are species that are present in the aerosol phase. These species must exist in the camp_camp_core::camp_core_t::chem_spec_data variable during initialization.
 
type(property_t), pointer property_set => null()
 Aerosol phase parameters. These will be available during initialization, but not during solving.
 
real(kind=dp), dimension(:), allocatable, public condensed_data_real
 Condensed phase data. Theses arrays will be available during solving, and should contain any information required by the functions of the aerosol phase that cannot be obtained from the camp_camp_state::camp_state_t object. (floating-point)
 
integer(kind=i_kind), dimension(:), allocatable, public condensed_data_int
 Condensed phase data. Theses arrays will be available during solving, and should contain any information required by the functions of the aerosol phase that cannot be obtained from the camp_camp_state::camp_state_t object. (integer)
 
type(chem_spec_data_t), pointer chem_spec_data
 Pointer to the set of chemical species data.
 

Private Member Functions

procedure, private ensure_size (this, num_spec)
 Ensure there is enough room in the species dataset to add a specified number of species.
 
procedure, private add (this, spec_name)
 Add a species.
 
procedure, private find (this, spec_name)
 Find a species index by name.
 

Private Attributes

character(len=:), allocatable phase_name
 Name of the aerosol phase.
 

Detailed Description

Aerosol phase data type.

Aerosol phase information.

Definition at line 78 of file aero_phase_data.F90.

Constructor & Destructor Documentation

◆ finalize()

final camp_aero_phase_data::aero_phase_data_t::finalize ( type(aero_phase_data_t), intent(inout)  this)
final

Finalize the aerosol phase data.

Parameters
[in,out]thisAerosol phase data

Definition at line 130 of file aero_phase_data.F90.

Here is the call graph for this function:

Member Function/Subroutine Documentation

◆ add()

procedure, private camp_aero_phase_data::aero_phase_data_t::add ( class(aero_phase_data_t), intent(inout)  this,
character(len=*), intent(in)  spec_name 
)
private

Add a species.

Parameters
[in,out]thisAerosol phase data
[in]spec_nameName of the species to add

Definition at line 137 of file aero_phase_data.F90.

◆ bin_pack()

procedure camp_aero_phase_data::aero_phase_data_t::bin_pack ( class(aero_phase_data_t), intent(in)  this,
character, dimension(:), intent(inout)  buffer,
integer, intent(inout)  pos,
integer, intent(in)  comm 
)

Packs the given value into the buffer, advancing position.

Parameters
[in]thisAerosol representation data
[in,out]bufferMemory buffer
[in,out]posCurrent buffer position
[in]commMPI communicator

Definition at line 124 of file aero_phase_data.F90.

◆ bin_unpack()

procedure camp_aero_phase_data::aero_phase_data_t::bin_unpack ( class(aero_phase_data_t), intent(out)  this,
character, dimension(:), intent(inout)  buffer,
integer, intent(inout)  pos,
integer, intent(in)  comm 
)

Unpacks the given value from the buffer, advancing position.

Parameters
[out]thisAerosol representation data
[in,out]bufferMemory buffer
[in,out]posCurrent buffer position
[in]commMPI communicator

Definition at line 126 of file aero_phase_data.F90.

◆ ensure_size()

procedure, private camp_aero_phase_data::aero_phase_data_t::ensure_size ( class(aero_phase_data_t), intent(inout)  this,
integer(kind=i_kind), intent(in)  num_spec 
)
private

Ensure there is enough room in the species dataset to add a specified number of species.

Parameters
[in,out]thisAerosol phase data
[in]num_specNumber of new species to ensure space for

Definition at line 135 of file aero_phase_data.F90.

◆ find()

procedure, private camp_aero_phase_data::aero_phase_data_t::find ( class(aero_phase_data_t), intent(in)  this,
character(len=*), intent(in)  spec_name 
)
private

Find a species index by name.

Parameters
[in]thisAerosol phase data
[in]spec_nameSpecies name

Definition at line 139 of file aero_phase_data.F90.

◆ get_property_set()

procedure camp_aero_phase_data::aero_phase_data_t::get_property_set ( class(aero_phase_data_t), intent(in)  this)

Get property data associated with this phase.

Returns
A pointer to the aerosol phase property set
Parameters
[in]thisAerosol phase data

Definition at line 116 of file aero_phase_data.F90.

◆ get_species_names()

procedure camp_aero_phase_data::aero_phase_data_t::get_species_names ( class(aero_phase_data_t), intent(in)  this)

Get a list of species names in this phase.

Returns
Names of species in this phase
Parameters
[in]thisAerosol phase data

Definition at line 118 of file aero_phase_data.F90.

◆ get_species_type()

procedure camp_aero_phase_data::aero_phase_data_t::get_species_type ( class(aero_phase_data_t), intent(in)  this,
character(len=*), intent(in)  spec_name 
)

Get a species type by name.

Returns
The type of a species in this phase
Parameters
[in]thisAerosol phase data
[in]spec_nameName of the species

Definition at line 120 of file aero_phase_data.F90.

◆ initialize()

procedure camp_aero_phase_data::aero_phase_data_t::initialize ( class(aero_phase_data_t), intent(inout)  this,
type(chem_spec_data_t), intent(in), target  chem_spec_data 
)

Aerosol phase initialization.

Parameters
[in,out]thisAerosol phase data
[in]chem_spec_dataChemical species data

Definition at line 108 of file aero_phase_data.F90.

◆ load()

procedure camp_aero_phase_data::aero_phase_data_t::load ( class(aero_phase_data_t), intent(inout)  this,
type(json_core), intent(in), pointer  json,
type(json_value), intent(in), pointer  j_obj 
)

Load data from an input file.

Parameters
[in,out]thisAerosol phase data
[in]jsonJSON core
[in]j_objJSON object

Definition at line 106 of file aero_phase_data.F90.

◆ name()

procedure camp_aero_phase_data::aero_phase_data_t::name ( class(aero_phase_data_t), intent(in)  this)

Get the name of the aerosol phase.

Returns
The name of the aerosol phase
Parameters
[in]thisAerosol phase data

Definition at line 110 of file aero_phase_data.F90.

◆ num_jac_elem()

procedure camp_aero_phase_data::aero_phase_data_t::num_jac_elem ( class(aero_phase_data_t), intent(in)  this)

Get the number of Jacobian row elements needed during solving.

Parameters
[in]thisAerosol phase data

Definition at line 114 of file aero_phase_data.F90.

◆ pack_size()

procedure camp_aero_phase_data::aero_phase_data_t::pack_size ( class(aero_phase_data_t), intent(in)  this,
integer, intent(in)  comm 
)

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

Parameters
[in]thisAerosol representation data
[in]commMPI communicator

Definition at line 122 of file aero_phase_data.F90.

◆ print()

procedure camp_aero_phase_data::aero_phase_data_t::print ( class(aero_phase_data_t), intent(in)  this,
integer(kind=i_kind), optional  file_unit 
)

Print the aerosol phase data.

Parameters
[in]thisAerosol phase data
file_unitFile unit for output

Definition at line 128 of file aero_phase_data.F90.

◆ size()

procedure camp_aero_phase_data::aero_phase_data_t::size ( class(aero_phase_data_t), intent(in)  this)

Get the number of species in the phase.

Parameters
[in]thisAerosol phase data

Definition at line 112 of file aero_phase_data.F90.

Member Data Documentation

◆ chem_spec_data

type(chem_spec_data_t), pointer camp_aero_phase_data::aero_phase_data_t::chem_spec_data

Pointer to the set of chemical species data.

Definition at line 103 of file aero_phase_data.F90.

◆ condensed_data_int

integer(kind=i_kind), dimension(:), allocatable, public camp_aero_phase_data::aero_phase_data_t::condensed_data_int

Condensed phase data. Theses arrays will be available during solving, and should contain any information required by the functions of the aerosol phase that cannot be obtained from the camp_camp_state::camp_state_t object. (integer)

Definition at line 101 of file aero_phase_data.F90.

◆ condensed_data_real

real(kind=dp), dimension(:), allocatable, public camp_aero_phase_data::aero_phase_data_t::condensed_data_real

Condensed phase data. Theses arrays will be available during solving, and should contain any information required by the functions of the aerosol phase that cannot be obtained from the camp_camp_state::camp_state_t object. (floating-point)

Definition at line 96 of file aero_phase_data.F90.

◆ num_spec

integer(kind=i_kind) camp_aero_phase_data::aero_phase_data_t::num_spec = 0

Number of species in the phase.

Definition at line 83 of file aero_phase_data.F90.

◆ phase_name

character(len=:), allocatable camp_aero_phase_data::aero_phase_data_t::phase_name
private

Name of the aerosol phase.

Definition at line 81 of file aero_phase_data.F90.

◆ property_set

type(property_t), pointer camp_aero_phase_data::aero_phase_data_t::property_set => null()

Aerosol phase parameters. These will be available during initialization, but not during solving.

Definition at line 91 of file aero_phase_data.F90.

◆ spec_name

type(string_t), dimension(:), pointer camp_aero_phase_data::aero_phase_data_t::spec_name => null()

Species names. These are species that are present in the aerosol phase. These species must exist in the camp_camp_core::camp_core_t::chem_spec_data variable during initialization.

Definition at line 88 of file aero_phase_data.F90.


The documentation for this interface was generated from the following file: