YetAnotherCoupler 3.5.2
|
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) |
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 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) |
void | yac_instance_sync_def (struct yac_instance *instance) |
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_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 33 of file instance.h.
#define YAC_INSTANCE_CONFIG_OUTPUT_REF_ENDDEF "enddef" |
Definition at line 35 of file instance.h.
#define YAC_INSTANCE_CONFIG_OUTPUT_REF_SYNC "sync" |
Definition at line 34 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 1435 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 1430 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 1406 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 | 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 ) |
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] | 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 |
Definition at line 1494 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 1388 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 1356 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 1350 of file instance.c.
int yac_instance_get_comp_rank | ( | struct yac_instance * | instance, |
const char * | comp_name ) |
Definition at line 1322 of file instance.c.
int yac_instance_get_comp_size | ( | struct yac_instance * | instance, |
const char * | comp_name ) |
Definition at line 1313 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 1304 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 1373 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 1401 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 1516 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 1396 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 1331 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 1379 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 1268 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 1292 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 1258 of file instance.c.