CAMP 1.0.0
Chemistry Across Multiple Phases
|
The rxn_data_t structure and associated subroutines. More...
Data Types | |
interface | initialize |
Reaction initialization. Takes species, phase and reaction parameters and packs required information into the condensed data arrays for use during the model run. More... | |
interface | internal_bin_pack |
Extending-type binary pack function (Internal use only) More... | |
interface | internal_bin_unpack |
Extending-type binary unpack function (Internal use only) More... | |
interface | internal_pack_size |
Extending-type binary pack size (internal use only) More... | |
type | rxn_data_ptr |
Pointer type for building arrays of mixed reactions. More... | |
type | rxn_data_t |
Abstract reaction data type. More... | |
type | rxn_update_data_t |
Update cookie. More... | |
Functions/Subroutines | |
subroutine | load (this, json, j_obj) |
Load reactions from an input file. | |
logical function | check_phase (this, rxn_phase) |
Check the phase of the reaction against the phase being solved for. During GAS_RXN integrations, only GAS_RXN reactions are solved. During AERO_RXN integrations, only AERO_RXN and GAS_AERO_RXN reactions are solved. During GAS_AERO_RXN integrations, all reactions are solved. | |
integer(kind=i_kind) function | pack_size (this, comm) |
Determine the size of a binary required to pack the reaction data. | |
subroutine | bin_pack (this, buffer, pos, comm) |
Pack the given value to the buffer, advancing position. | |
subroutine | bin_unpack (this, buffer, pos, comm) |
Unpack the given value from the buffer, advancing position. | |
subroutine | do_print (this, file_unit) |
Print the reaction data. | |
elemental subroutine | dereference (this) |
Dereference a pointer to a reaction. | |
elemental subroutine | ptr_finalize (this) |
Finalize a pointer to a reaction. | |
integer(kind=c_int) function | rxn_update_data_get_type (this) |
Get the update data reaction type. | |
integer(kind=c_int) function | rxn_update_data_get_cell_id (this) |
Get the grid cell id to update. | |
type(c_ptr) function | rxn_update_data_get_data (this) |
Get the update data. | |
integer(kind=i_kind) function | rxn_update_data_pack_size (this, comm) |
Determine the size of a binary required to pack the reaction data. | |
subroutine | rxn_update_data_bin_pack (this, buffer, pos, comm) |
Pack the given value to the buffer, advancing position. | |
subroutine | rxn_update_data_bin_unpack (this, buffer, pos, comm) |
Unpack the given value from the buffer, advancing position. | |
subroutine | do_rxn_update_data_print (this, file_unit) |
Print the update data. | |
Variables | |
integer(kind=i_kind), parameter, public | gas_rxn = 1 |
Gas-phase reaction. | |
integer(kind=i_kind), parameter, public | gas_aero_rxn = 2 |
Mixed-phase (gas and aerosol) reaction. | |
integer(kind=i_kind), parameter, public | aero_rxn = 3 |
Aerosol-phase reaction. | |
The rxn_data_t structure and associated subroutines.
|
private |
Pack the given value to the buffer, advancing position.
[in] | this | Reaction data |
[in,out] | buffer | Memory buffer |
[in,out] | pos | Current buffer position |
[in] | comm | MPI communicator |
Definition at line 430 of file rxn_data.F90.
|
private |
Unpack the given value from the buffer, advancing position.
[out] | this | Reaction data |
[in,out] | buffer | Memory buffer |
[in,out] | pos | Current buffer position |
[in] | comm | MPI communicator |
Definition at line 458 of file rxn_data.F90.
|
private |
Check the phase of the reaction against the phase being solved for. During GAS_RXN integrations, only GAS_RXN reactions are solved. During AERO_RXN integrations, only AERO_RXN and GAS_AERO_RXN reactions are solved. During GAS_AERO_RXN integrations, all reactions are solved.
[in] | this | Reaction data |
[in] | rxn_phase | Phase being solved |
Definition at line 392 of file rxn_data.F90.
|
private |
Dereference a pointer to a reaction.
[in,out] | this | Pointer to a reaction |
Definition at line 512 of file rxn_data.F90.
|
private |
Print the reaction data.
[in] | this | Reaction data |
file_unit | File unit for output |
Definition at line 487 of file rxn_data.F90.
|
private |
Print the update data.
[in] | this | Reaction update data |
file_unit | File unit for output |
Definition at line 680 of file rxn_data.F90.
|
private |
Load reactions from an input file.
[in,out] | this | Reaction data |
[in] | json | JSON core |
[in] | j_obj | JSON object |
Definition at line 343 of file rxn_data.F90.
|
private |
Determine the size of a binary required to pack the reaction data.
[in] | this | Reaction data |
[in] | comm | MPI communicator |
Definition at line 412 of file rxn_data.F90.
|
private |
Finalize a pointer to a reaction.
[in,out] | this | Pointer to a reaction |
Definition at line 524 of file rxn_data.F90.
|
private |
Pack the given value to the buffer, advancing position.
[in] | this | Reaction update data |
[in,out] | buffer | Memory buffer |
[in,out] | pos | Current buffer position |
[in] | comm | MPI communicator |
Definition at line 609 of file rxn_data.F90.
|
private |
Unpack the given value from the buffer, advancing position.
[out] | this | Reaction update data |
[in,out] | buffer | Memory buffer |
[in,out] | pos | Current buffer position |
[in] | comm | MPI communicator |
Definition at line 644 of file rxn_data.F90.
|
private |
Get the grid cell id to update.
[in] | this | Update data |
Definition at line 550 of file rxn_data.F90.
|
private |
Get the update data.
[in] | this | Update data |
Definition at line 564 of file rxn_data.F90.
|
private |
Get the update data reaction type.
[in] | this | Update data |
Definition at line 536 of file rxn_data.F90.
|
private |
Determine the size of a binary required to pack the reaction data.
[in] | this | Reaction update data |
[in] | comm | MPI communicator |
Definition at line 578 of file rxn_data.F90.
integer(kind=i_kind), parameter, public camp_rxn_data::aero_rxn = 3 |
Aerosol-phase reaction.
Definition at line 88 of file rxn_data.F90.
integer(kind=i_kind), parameter, public camp_rxn_data::gas_aero_rxn = 2 |
Mixed-phase (gas and aerosol) reaction.
Definition at line 86 of file rxn_data.F90.
integer(kind=i_kind), parameter, public camp_rxn_data::gas_rxn = 1 |
Gas-phase reaction.
Definition at line 84 of file rxn_data.F90.