|
YAC 3.14.0
Yet Another Coupler
|


Go to the source code of this file.
Macros | |
| #define | YAC_INSTANCE_CONFIG_OUTPUT_REF_COMP "comp" |
| #define | YAC_INSTANCE_CONFIG_OUTPUT_REF_SYNC "sync" |
| #define | YAC_INSTANCE_CONFIG_OUTPUT_REF_ENDDEF "enddef" |
Functions | |
| struct yac_instance * | yac_instance_new (MPI_Comm comm) |
| void | yac_instance_dummy_new (MPI_Comm comm) |
| void | yac_instance_delete (struct yac_instance *instance) |
| MPI_Comm | yac_instance_get_comm (struct yac_instance *instance) |
| void | yac_instance_def_datetime (struct yac_instance *instance, const char *start_datetime, const char *end_datetime) |
| char * | yac_instance_get_start_datetime (struct yac_instance *instance) |
| char * | yac_instance_get_end_datetime (struct yac_instance *instance) |
| struct yac_couple_config * | yac_instance_get_couple_config (struct yac_instance *instance) |
| void | yac_instance_set_couple_config (struct yac_instance *instance, struct yac_couple_config *couple_config) |
| void | yac_instance_def_components (struct yac_instance *instance, char const **comp_names, size_t num_comps) |
| int | yac_instance_components_are_defined (struct yac_instance *instance) |
| struct coupling_field * | yac_instance_add_field (struct yac_instance *instance, char const *field_name, char const *comp_name, struct yac_basic_grid *grid, struct yac_interp_field *interp_fields, size_t num_interp_fields, int collection_size, char const *timestep) |
| void | yac_instance_def_couple (struct yac_instance *instance, char const *src_comp_name, char const *src_grid_name, char const *src_field_name, char const *tgt_comp_name, char const *tgt_grid_name, char const *tgt_field_name, char const *coupling_period, int time_reduction, struct yac_interp_stack_config *interp_stack_config, int src_lag, int tgt_lag, const char *weight_file_name, int weight_file_on_existing, int mapping_on_source, double scale_factor, double scale_summand, size_t num_src_mask_names, char const *const *src_mask_names, char const *tgt_mask_name, char const *yaxt_exchanger_name, struct yac_collection_selection const *collection_selection, int use_raw_exchange) |
| void | yac_instance_sync_def (struct yac_instance *instance) |
| void | yac_instance_sync_def_comps (struct yac_instance *instance, char const **comp_names, size_t num_comp_names) |
| void | yac_instance_setup (struct yac_instance *instance, struct yac_basic_grid **grids, size_t num_grids) |
| char * | yac_instance_setup_and_emit_config (struct yac_instance *instance, struct yac_basic_grid **grids, size_t num_grids, int emit_flags) |
| MPI_Comm | yac_instance_get_comps_comm (struct yac_instance *instance, char const **comp_names, size_t num_comp_names) |
| int | yac_instance_get_nbr_comps (struct yac_instance *instance) |
| int | yac_instance_get_comp_size (struct yac_instance *instance, const char *comp_name) |
| int | yac_instance_get_comp_rank (struct yac_instance *instance, const char *comp_name) |
| struct coupling_field * | yac_instance_get_field (struct yac_instance *instance, const char *comp_name, const char *grid_name, const char *field_name) |
| #define YAC_INSTANCE_CONFIG_OUTPUT_REF_COMP "comp" |
Definition at line 13 of file instance.h.
| #define YAC_INSTANCE_CONFIG_OUTPUT_REF_ENDDEF "enddef" |
Definition at line 15 of file instance.h.
| #define YAC_INSTANCE_CONFIG_OUTPUT_REF_SYNC "sync" |
Definition at line 14 of file instance.h.
| struct coupling_field * yac_instance_add_field | ( | struct yac_instance * | instance, |
| char const * | field_name, | ||
| char const * | comp_name, | ||
| struct yac_basic_grid * | grid, | ||
| struct yac_interp_field * | interp_fields, | ||
| size_t | num_interp_fields, | ||
| int | collection_size, | ||
| char const * | timestep ) |
Adds a coupling field to a YAC instance
| [in] | instance | YAC instance |
| [in] | field_name | name of the coupling field |
| [in] | comp_name | component name |
| [in] | grid | grid |
| [in] | interp_fields | interpolation fields |
| [in] | num_interp_fields | number of entries in interp_fields |
| [in] | collection_size | collection size of field |
| [in] | timestep | timestep at which put/get is called for this field in ISO 8601 format |
Definition at line 1513 of file instance.c.


| int yac_instance_components_are_defined | ( | struct yac_instance * | instance | ) |
Returns true if the components for this instance have already been defined
| [in] | instance | YAC instance |
Definition at line 1508 of file instance.c.

| void yac_instance_def_components | ( | struct yac_instance * | instance, |
| char const ** | comp_names, | ||
| size_t | num_comps ) |
Defines the components for a YAC instance
| [in] | instance | YAC instance |
| [in] | comp_names | names of components |
| [in] | num_comps | number of entries in comp_names |
Definition at line 1484 of file instance.c.


| void yac_instance_def_couple | ( | struct yac_instance * | instance, |
| char const * | src_comp_name, | ||
| char const * | src_grid_name, | ||
| char const * | src_field_name, | ||
| char const * | tgt_comp_name, | ||
| char const * | tgt_grid_name, | ||
| char const * | tgt_field_name, | ||
| char const * | coupling_period, | ||
| int | time_reduction, | ||
| struct yac_interp_stack_config * | interp_stack_config, | ||
| int | src_lag, | ||
| int | tgt_lag, | ||
| const char * | weight_file_name, | ||
| int | weight_file_on_existing, | ||
| int | mapping_on_source, | ||
| double | scale_factor, | ||
| double | scale_summand, | ||
| size_t | num_src_mask_names, | ||
| char const *const * | src_mask_names, | ||
| char const * | tgt_mask_name, | ||
| char const * | yaxt_exchanger_name, | ||
| struct yac_collection_selection const * | collection_selection, | ||
| int | use_raw_exchange ) |
Defines a couple for a YAC instance
| [in] | instance | YAC instance |
| [in] | src_comp_name | component name of the source component |
| [in] | src_grid_name | grid name of the source grid |
| [in] | src_field_name | field name of the source field |
| [in] | tgt_comp_name | component name of the target component |
| [in] | tgt_grid_name | grid name of the target grid |
| [in] | tgt_field_name | field name of the target field |
| [in] | coupling_period | time step for the coupling |
| [in] | time_reduction | type for reducing multiple timesteps ( |
| [in] | interp_stack_config | interpolation stack config to be used |
| [in] | src_lag | lag for this couple on the source component |
| [in] | tgt_lag | lag for this couple on the target component |
| [in] | weight_file_name | file name for the weights file. NULL to disable this feature |
| [in] | weight_file_on_existing | specifies how YAC is supposed to handle the case of an already existing file with the same name |
| [in] | mapping_on_source | side where the mapping is computed. Currently only source = 1 and target = 0 are allowed |
| [in] | scale_factor | scale factor |
| [in] | scale_summand | scale summand |
| [in] | num_src_mask_names | number of source field mask names ("0" if no source field mask names are provided) |
| [in] | src_mask_names | array of source field mask names ("NULL" if num_src_mask_names == 0) |
| [in] | tgt_mask_name | target field mask name ("NULL" if no target field mask name is provided) |
| [in] | yaxt_exchanger_name | yaxt exchanger method to be used for the interpoolation |
| [in] | collection_selection | collection selection for this couple |
| [in] | use_raw_exchange | enables the use of raw exchange (YAC only transfers data required for interpolation to target process, afterwards user has to apply the interpolation himself) |
Definition at line 1572 of file instance.c.


| void yac_instance_def_datetime | ( | struct yac_instance * | instance, |
| const char * | start_datetime, | ||
| const char * | end_datetime ) |
Definition of job start and end datetime
| [in] | instance | YAC instance |
| [in] | start_datetime | calendar job start datetime |
| [in] | end_datetime | calendar job end datetime |
Definition at line 1466 of file instance.c.


| void yac_instance_delete | ( | struct yac_instance * | instance | ) |
Destructor for a YAC instance
| [in] | instance | YAC instance to be deleted |
Definition at line 1427 of file instance.c.


| void yac_instance_dummy_new | ( | MPI_Comm | comm | ) |
Dummy constructor, which can be called instead of yac_instance_new.
| [in] | comm |
Definition at line 1421 of file instance.c.

| MPI_Comm yac_instance_get_comm | ( | struct yac_instance * | instance | ) |
Query routine for the MPI communicator associated with the instance.
| [in] | instance | YAC instance |
Definition at line 1444 of file instance.c.

| int yac_instance_get_comp_rank | ( | struct yac_instance * | instance, |
| const char * | comp_name ) |
Definition at line 1393 of file instance.c.


| int yac_instance_get_comp_size | ( | struct yac_instance * | instance, |
| const char * | comp_name ) |
Definition at line 1384 of file instance.c.


| MPI_Comm yac_instance_get_comps_comm | ( | struct yac_instance * | instance, |
| char const ** | comp_names, | ||
| size_t | num_comp_names ) |
returns a communicator containing all processes of the provided components
| [in] | instance | YAC instance |
| [in] | comp_names | component names |
| [in] | num_comp_names |
Definition at line 1368 of file instance.c.


| struct yac_couple_config * yac_instance_get_couple_config | ( | struct yac_instance * | instance | ) |
Get the coupling configuration data from a YAC instance
| [in] | instance | YAC instance |
Definition at line 1451 of file instance.c.

| char * yac_instance_get_end_datetime | ( | struct yac_instance * | instance | ) |
query routine for the end datetime of the job
| [in] | instance | YAC instance |
Definition at line 1479 of file instance.c.


| struct coupling_field * yac_instance_get_field | ( | struct yac_instance * | instance, |
| const char * | comp_name, | ||
| const char * | grid_name, | ||
| const char * | field_name ) |
Definition at line 1598 of file instance.c.


| int yac_instance_get_nbr_comps | ( | struct yac_instance * | instance | ) |
Definition at line 1377 of file instance.c.


| char * yac_instance_get_start_datetime | ( | struct yac_instance * | instance | ) |
query routine for the start datetime of the job
| [in] | instance | YAC instance |
Definition at line 1474 of file instance.c.


| struct yac_instance * yac_instance_new | ( | MPI_Comm | comm | ) |
Constructor for a YAC instance.
| [in] | comm | MPI communicator that contains the processes of all components that will be registered with this YAC instance |
Definition at line 1402 of file instance.c.


| void yac_instance_set_couple_config | ( | struct yac_instance * | instance, |
| struct yac_couple_config * | couple_config ) |
Sets the coupling configuration data for a YAC instance
| [in] | instance | YAC instance |
| [in] | couple_config | coupling configuration data |
Definition at line 1457 of file instance.c.

| void yac_instance_setup | ( | struct yac_instance * | instance, |
| struct yac_basic_grid ** | grids, | ||
| size_t | num_grids ) |
initiates the generation of all data structures required for interpolation
| [in] | instance | YAC instance |
| [in] | grids | all locally available basic grids |
| [in] | num_grids | number of locally available basic grids |
Definition at line 1332 of file instance.c.


| char * yac_instance_setup_and_emit_config | ( | struct yac_instance * | instance, |
| struct yac_basic_grid ** | grids, | ||
| size_t | num_grids, | ||
| int | emit_flags ) |
initiates the generation of all data structures required for interpolation
| [in] | instance | YAC instance |
| [in] | grids | all locally available basic grids |
| [in] | num_grids | number of locally available basic grids |
| [in] | emit_flags | flags for configuring the generated coupling configuration output (YAC_YAML_EMITTER_DEFAULT or YAC_YAML_EMITTER_JSON) |
Definition at line 1356 of file instance.c.


| void yac_instance_sync_def | ( | struct yac_instance * | instance | ) |
synchronizes the grid and field definitions
| [in] | instance | YAC instance |
Definition at line 1298 of file instance.c.


| void yac_instance_sync_def_comps | ( | struct yac_instance * | instance, |
| char const ** | comp_names, | ||
| size_t | num_comp_names ) |
synchronizes the grid and field definitions for provided components
| [in] | instance | YAC instance |
| [in] | comp_names | component names |
| [in] | num_comp_names | number of entries in comp_names |
comp_names. comp_names. Definition at line 1308 of file instance.c.

