CAMP 1.0.0
Chemistry Across Multiple Phases
Public Member Functions | List of all members
camp_rxn_factory::rxn_factory_t Type Reference

Factory type for chemical reactions. More...

Public Member Functions

procedure create (this, type_name)
 Create a new chemical reaction by type name.
 
procedure load (this, json, j_obj)
 Create a new chemical reaction from input data.
 
procedure get_type (this, rxn)
 Get the reaction type.
 
procedure initialize_update_data (this, rxn, update_data)
 Get a new update data object.
 
procedure pack_size (this, rxn, comm)
 Determine the number of bytes required to pack a given reaction.
 
procedure bin_pack (this, rxn, buffer, pos, comm)
 Pack a given reaction to the buffer, advancing the position.
 
procedure bin_unpack (this, buffer, pos, comm)
 Unpack a reaction from the buffer, advancing the position.
 

Detailed Description

Factory type for chemical reactions.

Provides new instances of types extending rxn_data_t by name or from input file data

Definition at line 234 of file rxn_factory.F90.

Member Function/Subroutine Documentation

◆ bin_pack()

procedure camp_rxn_factory::rxn_factory_t::bin_pack ( class(rxn_factory_t), intent(in)  this,
class(rxn_data_t), intent(in)  rxn,
character, dimension(:), intent(inout)  buffer,
integer, intent(inout)  pos,
integer, intent(in)  comm 
)

Pack a given reaction to the buffer, advancing the position.

Parameters
[in]thisReaction factory
[in]rxnReaction to pack
[in,out]bufferMemory buffer
[in,out]posCurrent buffer position
[in]commMPI communicator

Definition at line 247 of file rxn_factory.F90.

◆ bin_unpack()

procedure camp_rxn_factory::rxn_factory_t::bin_unpack ( class(rxn_factory_t), intent(in)  this,
character, dimension(:), intent(inout)  buffer,
integer, intent(inout)  pos,
integer, intent(in)  comm 
)

Unpack a reaction from the buffer, advancing the position.

Returns
Unpacked reaction
Parameters
[in]thisReaction factory
[in,out]bufferMemory buffer
[in,out]posCurrent buffer position
[in]commMPI communicator

Definition at line 249 of file rxn_factory.F90.

◆ create()

procedure camp_rxn_factory::rxn_factory_t::create ( class(rxn_factory_t), intent(in)  this,
character(len=*), intent(in)  type_name 
)

Create a new chemical reaction by type name.

Returns
A chemical reaction
Parameters
[in]thisAerosol representation factory
[in]type_nameName of the chemical reaction

Definition at line 237 of file rxn_factory.F90.

◆ get_type()

procedure camp_rxn_factory::rxn_factory_t::get_type ( class(rxn_factory_t), intent(in)  this,
class(rxn_data_t), intent(in)  rxn 
)

Get the reaction type.

Parameters
[in]thisReaction factory
[in]rxnReaction to get type of

Definition at line 241 of file rxn_factory.F90.

◆ initialize_update_data()

procedure camp_rxn_factory::rxn_factory_t::initialize_update_data ( class(rxn_factory_t), intent(in)  this,
class(rxn_data_t), intent(inout)  rxn,
class(rxn_update_data_t), intent(out)  update_data 
)

Get a new update data object.

Parameters
[in]thisReaction factory
[in,out]rxnReaction to be updated
[out]update_dataUpdate data object

Definition at line 243 of file rxn_factory.F90.

◆ load()

procedure camp_rxn_factory::rxn_factory_t::load ( class(rxn_factory_t), intent(in)  this,
type(json_core), intent(in), pointer  json,
type(json_value), intent(in), pointer  j_obj 
)

Create a new chemical reaction from input data.

Returns
A chemical reaction
Parameters
[in]thisChemical reaction factory
[in]jsonJSON core
[in]j_objJSON object

Definition at line 239 of file rxn_factory.F90.

◆ pack_size()

procedure camp_rxn_factory::rxn_factory_t::pack_size ( class(rxn_factory_t this,
class(rxn_data_t), intent(in)  rxn,
integer, intent(in)  comm 
)

Determine the number of bytes required to pack a given reaction.

Parameters
thisReaction factory
[in]rxnReaction to pack
[in]commMPI communicator

Definition at line 245 of file rxn_factory.F90.


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