|
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. | |
| subroutine | ptr_finalize (this) |
| Finalize a pointer to a reaction. | |
| subroutine | ptr_finalize_array (this) |
| Finalize an array of pointers to reactions. | |
| 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 434 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 462 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 396 of file rxn_data.F90.
|
private |
Dereference a pointer to a reaction.
| [in,out] | this | Pointer to a reaction |
Definition at line 516 of file rxn_data.F90.
|
private |
Print the reaction data.
| [in] | this | Reaction data |
| file_unit | File unit for output |
Definition at line 491 of file rxn_data.F90.
|
private |
Print the update data.
| [in] | this | Reaction update data |
| file_unit | File unit for output |
Definition at line 700 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 347 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 416 of file rxn_data.F90.


|
private |
Finalize a pointer to a reaction.
| [in,out] | this | Pointer to a reaction |
Definition at line 528 of file rxn_data.F90.
|
private |
Finalize an array of pointers to reactions.
| [in,out] | this | Pointer to a reaction |
Definition at line 540 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 629 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 664 of file rxn_data.F90.

|
private |
Get the grid cell id to update.
| [in] | this | Update data |
Definition at line 570 of file rxn_data.F90.
|
private |
Get the update data.
| [in] | this | Update data |
Definition at line 584 of file rxn_data.F90.
|
private |
Get the update data reaction type.
| [in] | this | Update data |
Definition at line 556 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 598 of file rxn_data.F90.

| integer(kind=i_kind), parameter, public camp_rxn_data::aero_rxn = 3 |
Aerosol-phase reaction.
Definition at line 89 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 87 of file rxn_data.F90.
| integer(kind=i_kind), parameter, public camp_rxn_data::gas_rxn = 1 |
Gas-phase reaction.
Definition at line 85 of file rxn_data.F90.