The sub_model_factory_t type and associated subroutines.
More...
|
class(sub_model_data_t) function, pointer | create (this, type_name) |
| Create a new sub-model by type name.
|
|
class(sub_model_data_t) function, pointer | load (this, json, j_obj) |
| Load a sub-model based on its type.
|
|
integer(kind=i_kind) function | get_type (this, sub_model) |
| Get the sub-model type as a constant.
|
|
subroutine | initialize_update_data (this, sub_model, update_data) |
| Initialize an update data object.
|
|
integer(kind=i_kind) function | pack_size (this, sub_model, comm) |
| Determine the size of a binary required to pack a sub-model.
|
|
subroutine | bin_pack (this, sub_model, buffer, pos, comm) |
| Pack the given value to the buffer, advancing position.
|
|
class(sub_model_data_t) function, pointer | bin_unpack (this, buffer, pos, comm) |
| Unpack the given value to the buffer, advancing position.
|
|
The sub_model_factory_t type and associated subroutines.
◆ bin_pack()
subroutine camp_sub_model_factory::bin_pack |
( |
class(sub_model_factory_t), intent(in) |
this, |
|
|
class(sub_model_data_t), intent(in) |
sub_model, |
|
|
character, dimension(:), intent(inout) |
buffer, |
|
|
integer, intent(inout) |
pos, |
|
|
integer, intent(in) |
comm |
|
) |
| |
|
private |
Pack the given value to the buffer, advancing position.
- Parameters
-
[in] | this | Sub-model factory |
[in] | sub_model | Sub-model to pack |
[in,out] | buffer | Memory buffer |
[in,out] | pos | Current buffer position |
[in] | comm | MPI communicator |
Definition at line 204 of file sub_model_factory.F90.
◆ bin_unpack()
class(sub_model_data_t) function, pointer camp_sub_model_factory::bin_unpack |
( |
class(sub_model_factory_t), intent(in) |
this, |
|
|
character, dimension(:), intent(inout) |
buffer, |
|
|
integer, intent(inout) |
pos, |
|
|
integer, intent(in) |
comm |
|
) |
| |
|
private |
Unpack the given value to the buffer, advancing position.
- Returns
- Unpacked sub-model
- Parameters
-
[in] | this | Sub-model factory |
[in,out] | buffer | Memory buffer |
[in,out] | pos | Current buffer position |
[in] | comm | MPI communicator |
Definition at line 242 of file sub_model_factory.F90.
◆ create()
Create a new sub-model by type name.
- Returns
- A new sub-model
- Parameters
-
[in] | this | Sub-model factory |
[in] | type_name | Type of the sub-model |
Definition at line 70 of file sub_model_factory.F90.
◆ get_type()
Get the sub-model type as a constant.
- Parameters
-
[in] | this | Sub-model factory |
[in] | sub_model | Sub-model to get type of |
Definition at line 144 of file sub_model_factory.F90.
◆ initialize_update_data()
Initialize an update data object.
- Parameters
-
[in] | this | Sub-model factory |
[in,out] | sub_model | Sub-model to be updated |
[out] | update_data | Update data object |
Definition at line 168 of file sub_model_factory.F90.
◆ load()
class(sub_model_data_t) function, pointer camp_sub_model_factory::load |
( |
class(sub_model_factory_t), intent(in) |
this, |
|
|
type(json_core), intent(in), pointer |
json, |
|
|
type(json_value), intent(in), pointer |
j_obj |
|
) |
| |
|
private |
Load a sub-model based on its type.
- Returns
- A new sub-model
- Parameters
-
[in] | this | Sub-model factory |
[in] | json | JSON core |
[in] | j_obj | JSON object |
Definition at line 98 of file sub_model_factory.F90.
◆ pack_size()
Determine the size of a binary required to pack a sub-model.
- Parameters
-
| this | Sub-model factory |
[in] | sub_model | Sub-model to pack |
[in] | comm | MPI communicator |
Definition at line 187 of file sub_model_factory.F90.
◆ sub_model_pdfite
integer(kind=i_kind), parameter, public camp_sub_model_factory::sub_model_pdfite = 3 |
◆ sub_model_unifac
integer(kind=i_kind), parameter, public camp_sub_model_factory::sub_model_unifac = 1 |
Identifiers for sub-models - used by binary packing/unpacking functions.
Definition at line 39 of file sub_model_factory.F90.
◆ sub_model_zsr_aerosol_water
integer(kind=i_kind), parameter, public camp_sub_model_factory::sub_model_zsr_aerosol_water = 2 |