YetAnotherCoupler 3.5.2
Loading...
Searching...
No Matches
couple_config.c File Reference
#include "config.h"
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <math.h>
#include "couple_config.h"
#include "yac_mpi_common.h"
#include "yac.h"
#include "mtime_calendar.h"
#include "utils_common.h"
#include "config_yaml.h"
#include "dist_merge.h"
#include "mtime_datetime.h"
Include dependency graph for couple_config.c:

Go to the source code of this file.

Data Structures

struct  yac_couple_config_config_output
 
struct  yac_couple_config_grid
 
struct  yac_couple_config_field
 
struct  yac_couple_config_component
 
struct  yac_couple_config_field_couple
 
struct  yac_couple_config_couple
 
struct  yac_couple_config
 

Enumerations

enum  flag_value { FLAG_FALSE = 0 , FLAG_TRUE = 1 , FLAG_UNSET }
 

Functions

struct yac_couple_configyac_couple_config_new ()
 
static char * string_dup (char const *string)
 
static void yac_couple_config_field_free (void *field_)
 
static void yac_couple_config_component_free (void *component_)
 
static void yac_couple_config_field_couple_free (void *field_couple_)
 
static void yac_couple_config_couple_free (void *couple_)
 
static void yac_couple_config_grid_free (void *grid_)
 
static void yac_couple_config_config_output_free (void *config_output_)
 
static int yac_couple_config_grid_compare (void const *a, void const *b)
 
static int yac_couple_config_field_compare (void const *a_, void const *b_)
 
static int yac_couple_config_component_compare (void const *a_, void const *b_)
 
static int yac_couple_config_field_couple_compare (void const *a_, void const *b_)
 
static int yac_couple_config_couple_compare (void const *a_, void const *b_)
 
static int yac_couple_config_config_output_compare (void const *a, void const *b)
 
static void couple_config_sync_string (char const *string_name, char **string, MPI_Comm comm)
 
static void couple_config_sync_flag_value (char const *flag_value_name, enum flag_value *flag, MPI_Comm comm)
 
static void couple_config_sync_calendar (MPI_Comm comm)
 
static void yac_couple_config_component_merge (void *a_, void *b_, MPI_Comm comm)
 
static void yac_couple_config_grid_merge (void *a_, void *b_, MPI_Comm comm)
 
static void yac_couple_config_field_merge (void *a_, void *b_, MPI_Comm comm)
 
static void yac_couple_config_field_couple_merge (void *a_, void *b_, MPI_Comm comm)
 
static void merge_field_couples (size_t *num_field_couples, struct yac_couple_config_field_couple **field_couples, MPI_Comm comm)
 
static void yac_couple_config_couple_merge (void *a_, void *b_, MPI_Comm comm)
 
static void yac_couple_config_config_output_merge (void *a_, void *b_, MPI_Comm comm)
 
void yac_couple_config_delete (struct yac_couple_config *couple_config)
 
static size_t yac_couple_config_add_grid_ (struct yac_couple_config *couple_config, char const *name)
 
void yac_couple_config_add_grid (struct yac_couple_config *couple_config, char const *name)
 
static size_t yac_couple_config_add_component_ (struct yac_couple_config *couple_config, char const *name)
 
void yac_couple_config_add_component (struct yac_couple_config *couple_config, char const *name)
 
void yac_couple_config_component_set_metadata (struct yac_couple_config *couple_config, char const *comp_name, const char *metadata)
 
void yac_couple_config_grid_set_output_filename (struct yac_couple_config *couple_config, char const *grid_name, const char *output_filename)
 
void yac_couple_config_grid_set_metadata (struct yac_couple_config *couple_config, char const *grid_name, const char *metadata)
 
void yac_couple_config_field_set_metadata (struct yac_couple_config *couple_config, const char *comp_name, const char *grid_name, const char *field_name, const char *metadata)
 
const char * yac_couple_config_component_get_metadata (struct yac_couple_config *couple_config, const char *comp_name)
 
const char * yac_couple_config_grid_get_output_filename (struct yac_couple_config *couple_config, const char *grid_name)
 
const char * yac_couple_config_grid_get_metadata (struct yac_couple_config *couple_config, const char *grid_name)
 
const char * yac_couple_config_field_get_metadata (struct yac_couple_config *couple_config, const char *comp_name, const char *grid_name, const char *field_name)
 
static void check_component_idx (struct yac_couple_config *couple_config, size_t component_idx, char const *routine_name, int line)
 
static void check_grid_idx (struct yac_couple_config *couple_config, size_t grid_idx, char const *routine_name, int line)
 
static size_t yac_couple_config_component_add_field_ (struct yac_couple_config *couple_config, size_t comp_idx, size_t grid_idx, char const *name, char const *timestep, size_t collection_size)
 
void yac_couple_config_component_add_field (struct yac_couple_config *couple_config, const char *component_name, const char *grid_name, const char *name, char const *timestep, size_t collection_size)
 
size_t yac_couple_config_get_num_couples (struct yac_couple_config *couple_config)
 
int yac_couple_config_get_missing_definition_is_fatal (struct yac_couple_config *couple_config)
 
void yac_couple_config_set_missing_definition_is_fatal (struct yac_couple_config *couple_config, int missing_definition_is_fatal)
 
static void check_couple_idx (struct yac_couple_config *couple_config, size_t couple_idx, char const *routine_name, int line)
 
size_t yac_couple_config_get_num_couple_fields (struct yac_couple_config *couple_config, size_t couple_idx)
 
void yac_couple_config_get_couple_component_names (struct yac_couple_config *couple_config, size_t couple_idx, char const *couple_component_names[2])
 
int yac_couple_config_component_name_is_valid (struct yac_couple_config *couple_config, char const *component_name)
 
size_t yac_couple_config_get_num_components (struct yac_couple_config *couple_config)
 
size_t yac_couple_config_get_num_grids (struct yac_couple_config *couple_config)
 
size_t yac_couple_config_get_num_fields (struct yac_couple_config *couple_config, size_t component_idx)
 
size_t yac_couple_config_get_component_idx (struct yac_couple_config *couple_config, char const *component_name)
 
size_t yac_couple_config_get_grid_idx (struct yac_couple_config *couple_config, char const *grid_name)
 
size_t yac_couple_config_get_field_idx (struct yac_couple_config *couple_config, size_t component_idx, size_t grid_idx, char const *field_name)
 
char const * yac_couple_config_get_component_name (struct yac_couple_config *couple_config, size_t component_idx)
 
static void check_field_idx (struct yac_couple_config *couple_config, size_t component_idx, size_t field_idx, char const *routine_name, int line)
 
char const * yac_couple_config_get_field_grid_name (struct yac_couple_config *couple_config, size_t component_idx, size_t field_idx)
 
char const * yac_couple_config_get_field_name (struct yac_couple_config *couple_config, size_t component_idx, size_t field_idx)
 
char const * yac_couple_config_get_field_timestep (struct yac_couple_config *couple_config, char const *component_name, char const *grid_name, char const *field_name)
 
int yac_couple_config_get_field_role (struct yac_couple_config *couple_config, char const *component_name, char const *grid_name, char const *field_name)
 
int yac_couple_config_field_is_valid (struct yac_couple_config *couple_config, size_t component_idx, size_t field_idx)
 
static void check_field_couple_idx (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx, char const *routine_name, int line)
 
struct yac_interp_stack_configyac_couple_config_get_interp_stack (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx)
 
void yac_couple_config_get_field_grid_names (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx, char const **src_grid_name, char const **tgt_grid_name)
 
void yac_couple_config_field_enable_frac_mask (struct yac_couple_config *couple_config, char const *comp_name, char const *grid_name, char const *field_name, double frac_mask_fallback_value)
 
double yac_couple_config_get_frac_mask_fallback_value (struct yac_couple_config *couple_config, char const *component_name, char const *grid_name, char const *field_name)
 
size_t yac_couple_config_get_field_collection_size (struct yac_couple_config *couple_config, char const *component_name, char const *grid_name, char const *field_name)
 
void yac_couple_config_get_field_couple_component_names (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx, char const **src_component_name, char const **tgt_component_name)
 
void yac_couple_config_get_field_names (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx, char const **src_field_name, const char **tgt_field_name)
 
int yac_couple_config_mapping_on_source (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx)
 
int yac_couple_config_get_source_lag (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx)
 
int yac_couple_config_get_target_lag (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx)
 
char const * yac_couple_config_get_coupling_period (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx)
 
char const * yac_couple_config_get_source_timestep (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx)
 
char const * yac_couple_config_get_target_timestep (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx)
 
enum yac_reduction_type yac_couple_config_get_coupling_period_operation (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx)
 
static void set_datetime (char const *type_datetime, struct _datetime **old, char const *str_new)
 
void yac_couple_config_set_datetime (struct yac_couple_config *couple_config, char const *start, char const *end)
 
char * yac_couple_config_get_start_datetime (struct yac_couple_config *couple_config)
 
char * yac_couple_config_get_end_datetime (struct yac_couple_config *couple_config)
 
char const * yac_couple_config_get_grid_name (struct yac_couple_config *couple_config, size_t grid_idx)
 
int yac_couple_config_enforce_write_weight_file (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx)
 
char const * yac_couple_config_get_weight_file_name (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx)
 
double yac_couple_config_get_scale_factor (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx)
 
double yac_couple_config_get_scale_summand (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx)
 
void yac_couple_config_get_src_mask_names (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx, char const *const **mask_names, size_t *num_mask_names)
 
char const * yac_couple_config_get_tgt_mask_name (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx)
 
char const * yac_couple_config_get_yaxt_exchanger_name (struct yac_couple_config *couple_config, size_t couple_idx, size_t field_couple_idx)
 
int yac_couple_config_contains_grid_name (struct yac_couple_config *couple_config, char const *grid_name)
 
static size_t yac_couple_config_get_string_pack_size (char const *string, MPI_Comm comm)
 
static size_t yac_couple_config_get_grid_pack_size (void *grid_, MPI_Comm comm)
 
static size_t yac_couple_config_get_field_pack_size (void *field_, MPI_Comm comm)
 
static size_t yac_couple_config_get_component_pack_size (void *component_, MPI_Comm comm)
 
static size_t yac_couple_config_get_field_couple_pack_size (void *field_couple_, MPI_Comm comm)
 
static size_t yac_couple_config_get_couple_pack_size (void *couple_, MPI_Comm comm)
 
static size_t yac_couple_config_get_config_output_pack_size (void *config_output_, MPI_Comm comm)
 
static void yac_couple_config_pack_string (char const *string, void *buffer, int buffer_size, int *position, MPI_Comm comm)
 
static void yac_couple_config_pack_grid (void *grid_, void *buffer, int buffer_size, int *position, MPI_Comm comm)
 
static void yac_couple_config_pack_field (void *field_, void *buffer, int buffer_size, int *position, MPI_Comm comm)
 
static void yac_couple_config_pack_component (void *component_, void *buffer, int buffer_size, int *position, MPI_Comm comm)
 
static void yac_couple_config_pack_field_couple (void *field_couple_, void *buffer, int buffer_size, int *position, MPI_Comm comm)
 
static void yac_couple_config_pack_couple (void *couple_, void *buffer, int buffer_size, int *position, MPI_Comm comm)
 
static void yac_couple_config_pack_config_output (void *config_output_, void *buffer, int buffer_size, int *position, MPI_Comm comm)
 
static char * yac_couple_config_unpack_string (void *buffer, int buffer_size, int *position, MPI_Comm comm)
 
static void yac_couple_config_unpack_grid (void *buffer, int buffer_size, int *position, void *grid_, MPI_Comm comm)
 
static void yac_couple_config_unpack_field (void *buffer, int buffer_size, int *position, void *field_, MPI_Comm comm)
 
static void yac_couple_config_unpack_component (void *buffer, int buffer_size, int *position, void *component_, MPI_Comm comm)
 
static void yac_couple_config_unpack_field_couple (void *buffer, int buffer_size, int *position, void *field_couple_, MPI_Comm comm)
 
static void yac_couple_config_unpack_couple (void *buffer, int buffer_size, int *position, void *couple_, MPI_Comm comm)
 
static void yac_couple_config_unpack_config_output (void *buffer, int buffer_size, int *position, void *config_output_, MPI_Comm comm)
 
void yac_couple_config_def_couple (struct yac_couple_config *couple_config, 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, 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)
 
static void couple_config_sync_datetime (char const *type_datetime, struct _datetime **datetime, MPI_Comm comm)
 
static void couple_config_sync_time (struct yac_couple_config *couple_config, MPI_Comm comm)
 
static void merge_grids (struct yac_couple_config *couple_config, MPI_Comm comm)
 
static void merge_fields (struct yac_couple_config *couple_config, size_t comp_idx, MPI_Comm comm)
 
static void merge_components (struct yac_couple_config *couple_config, MPI_Comm comm)
 
static void merge_couples (struct yac_couple_config *couple_config, MPI_Comm comm)
 
static void merge_config_output (struct yac_couple_config *couple_config, MPI_Comm comm)
 
void yac_couple_config_sync (struct yac_couple_config *couple_config, MPI_Comm comm, char const *output_ref)
 
void yac_couple_config_set_config_output_filename (struct yac_couple_config *couple_config, char const *filename, enum yac_text_filetype filetype, char const *ref, int include_definitions)
 
void yac_couple_config_get_field_source (struct yac_couple_config *couple_config, char const *tgt_component_name, char const *tgt_grid_name, char const *tgt_field_name, char const **src_component_name, char const **src_grid_name, char const **src_field_name)
 

Variables

struct yac_dist_merge_vtable dist_merge_vtable_grid
 
struct yac_dist_merge_vtable dist_merge_vtable_component
 
struct yac_dist_merge_vtable dist_merge_vtable_field
 
struct yac_dist_merge_vtable dist_merge_vtable_field_couple
 
struct yac_dist_merge_vtable dist_merge_vtable_couple
 
struct yac_dist_merge_vtable dist_merge_vtable_config_output
 

Enumeration Type Documentation

◆ flag_value

enum flag_value
Enumerator
FLAG_FALSE 
FLAG_TRUE 
FLAG_UNSET 

Definition at line 23 of file couple_config.c.

Function Documentation

◆ check_component_idx()

static void check_component_idx ( struct yac_couple_config * couple_config,
size_t component_idx,
char const * routine_name,
int line )
static

Definition at line 870 of file couple_config.c.

Here is the caller graph for this function:

◆ check_couple_idx()

static void check_couple_idx ( struct yac_couple_config * couple_config,
size_t couple_idx,
char const * routine_name,
int line )
static

Definition at line 996 of file couple_config.c.

Here is the caller graph for this function:

◆ check_field_couple_idx()

static void check_field_couple_idx ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx,
char const * routine_name,
int line )
static

Definition at line 1257 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ check_field_idx()

static void check_field_idx ( struct yac_couple_config * couple_config,
size_t component_idx,
size_t field_idx,
char const * routine_name,
int line )
static

Definition at line 1140 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ check_grid_idx()

static void check_grid_idx ( struct yac_couple_config * couple_config,
size_t grid_idx,
char const * routine_name,
int line )
static

Definition at line 879 of file couple_config.c.

Here is the caller graph for this function:

◆ couple_config_sync_calendar()

static void couple_config_sync_calendar ( MPI_Comm comm)
static

Definition at line 347 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ couple_config_sync_datetime()

static void couple_config_sync_datetime ( char const * type_datetime,
struct _datetime ** datetime,
MPI_Comm comm )
static

Definition at line 2424 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ couple_config_sync_flag_value()

static void couple_config_sync_flag_value ( char const * flag_value_name,
enum flag_value * flag,
MPI_Comm comm )
static

Definition at line 323 of file couple_config.c.

Here is the caller graph for this function:

◆ couple_config_sync_string()

static void couple_config_sync_string ( char const * string_name,
char ** string,
MPI_Comm comm )
static

Definition at line 281 of file couple_config.c.

Here is the caller graph for this function:

◆ couple_config_sync_time()

static void couple_config_sync_time ( struct yac_couple_config * couple_config,
MPI_Comm comm )
static

Definition at line 2446 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ merge_components()

static void merge_components ( struct yac_couple_config * couple_config,
MPI_Comm comm )
static

Definition at line 2559 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ merge_config_output()

static void merge_config_output ( struct yac_couple_config * couple_config,
MPI_Comm comm )
static

Definition at line 2625 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ merge_couples()

static void merge_couples ( struct yac_couple_config * couple_config,
MPI_Comm comm )
static

Definition at line 2612 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ merge_field_couples()

static void merge_field_couples ( size_t * num_field_couples,
struct yac_couple_config_field_couple ** field_couples,
MPI_Comm comm )
static

Definition at line 2601 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ merge_fields()

static void merge_fields ( struct yac_couple_config * couple_config,
size_t comp_idx,
MPI_Comm comm )
static

Definition at line 2524 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ merge_grids()

static void merge_grids ( struct yac_couple_config * couple_config,
MPI_Comm comm )
static

Definition at line 2500 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ set_datetime()

static void set_datetime ( char const * type_datetime,
struct _datetime ** old,
char const * str_new )
static

Definition at line 1572 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ string_dup()

static char * string_dup ( char const * string)
static

Definition at line 145 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_add_component()

void yac_couple_config_add_component ( struct yac_couple_config * couple_config,
char const * name )
Examples
test_component_config.c, and test_couple_config.c.

Definition at line 779 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_add_component_()

static size_t yac_couple_config_add_component_ ( struct yac_couple_config * couple_config,
char const * name )
static

Definition at line 755 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_add_grid()

void yac_couple_config_add_grid ( struct yac_couple_config * couple_config,
char const * name )
Examples
test_couple_config.c.

Definition at line 749 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_add_grid_()

static size_t yac_couple_config_add_grid_ ( struct yac_couple_config * couple_config,
char const * name )
static

Definition at line 726 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_component_add_field()

void yac_couple_config_component_add_field ( struct yac_couple_config * couple_config,
const char * component_name,
const char * grid_name,
const char * name,
char const * timestep,
size_t collection_size )
Examples
test_couple_config.c.

Definition at line 948 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_component_add_field_()

static size_t yac_couple_config_component_add_field_ ( struct yac_couple_config * couple_config,
size_t comp_idx,
size_t grid_idx,
char const * name,
char const * timestep,
size_t collection_size )
static

Definition at line 888 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_component_compare()

static int yac_couple_config_component_compare ( void const * a_,
void const * b_ )
static

Definition at line 230 of file couple_config.c.

◆ yac_couple_config_component_free()

static void yac_couple_config_component_free ( void * component_)
static

Definition at line 157 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_component_get_metadata()

const char * yac_couple_config_component_get_metadata ( struct yac_couple_config * couple_config,
const char * comp_name )
Examples
test_couple_config.c.

Definition at line 839 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_component_merge()

static void yac_couple_config_component_merge ( void * a_,
void * b_,
MPI_Comm comm )
static

Definition at line 365 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_component_name_is_valid()

int yac_couple_config_component_name_is_valid ( struct yac_couple_config * couple_config,
char const * component_name )
Examples
test_couple_config.c.

Definition at line 1029 of file couple_config.c.

◆ yac_couple_config_component_set_metadata()

void yac_couple_config_component_set_metadata ( struct yac_couple_config * couple_config,
char const * comp_name,
const char * metadata )
Examples
test_couple_config.c.

Definition at line 785 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_config_output_compare()

static int yac_couple_config_config_output_compare ( void const * a,
void const * b )
static

Definition at line 270 of file couple_config.c.

◆ yac_couple_config_config_output_free()

static void yac_couple_config_config_output_free ( void * config_output_)
static

Definition at line 200 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_config_output_merge()

static void yac_couple_config_config_output_merge ( void * a_,
void * b_,
MPI_Comm comm )
static

Definition at line 673 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_contains_grid_name()

int yac_couple_config_contains_grid_name ( struct yac_couple_config * couple_config,
char const * grid_name )
Examples
test_couple_config.c.

Definition at line 1762 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_couple_compare()

static int yac_couple_config_couple_compare ( void const * a_,
void const * b_ )
static

Definition at line 258 of file couple_config.c.

◆ yac_couple_config_couple_free()

static void yac_couple_config_couple_free ( void * couple_)
static

Definition at line 181 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_couple_merge()

static void yac_couple_config_couple_merge ( void * a_,
void * b_,
MPI_Comm comm )
static

Definition at line 656 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_def_couple()

void yac_couple_config_def_couple ( struct yac_couple_config * couple_config,
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,
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 )
Examples
test_couple_config.c.

Definition at line 2286 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_delete()

void yac_couple_config_delete ( struct yac_couple_config * couple_config)
Examples
test_component_config.c, and test_couple_config.c.

Definition at line 699 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_enforce_write_weight_file()

int yac_couple_config_enforce_write_weight_file ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx )
Examples
test_couple_config.c.

Definition at line 1647 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_field_compare()

static int yac_couple_config_field_compare ( void const * a_,
void const * b_ )
static

Definition at line 218 of file couple_config.c.

◆ yac_couple_config_field_couple_compare()

static int yac_couple_config_field_couple_compare ( void const * a_,
void const * b_ )
static

Definition at line 240 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_field_couple_free()

static void yac_couple_config_field_couple_free ( void * field_couple_)
static

Definition at line 168 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_field_couple_merge()

static void yac_couple_config_field_couple_merge ( void * a_,
void * b_,
MPI_Comm comm )
static

Definition at line 551 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_field_enable_frac_mask()

void yac_couple_config_field_enable_frac_mask ( struct yac_couple_config * couple_config,
char const * comp_name,
char const * grid_name,
char const * field_name,
double frac_mask_fallback_value )
Examples
test_couple_config.c.

Definition at line 1321 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_field_free()

static void yac_couple_config_field_free ( void * field_)
static

Definition at line 149 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_field_get_metadata()

const char * yac_couple_config_field_get_metadata ( struct yac_couple_config * couple_config,
const char * comp_name,
const char * grid_name,
const char * field_name )
Examples
test_couple_config.c.

Definition at line 860 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_field_is_valid()

int yac_couple_config_field_is_valid ( struct yac_couple_config * couple_config,
size_t component_idx,
size_t field_idx )
Examples
test_couple_config.c.

Definition at line 1238 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_field_merge()

static void yac_couple_config_field_merge ( void * a_,
void * b_,
MPI_Comm comm )
static

Definition at line 402 of file couple_config.c.

◆ yac_couple_config_field_set_metadata()

void yac_couple_config_field_set_metadata ( struct yac_couple_config * couple_config,
const char * comp_name,
const char * grid_name,
const char * field_name,
const char * metadata )
Examples
test_couple_config.c.

Definition at line 826 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_component_idx()

size_t yac_couple_config_get_component_idx ( struct yac_couple_config * couple_config,
char const * component_name )
Examples
test_couple_config.c.

Definition at line 1066 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_get_component_name()

char const * yac_couple_config_get_component_name ( struct yac_couple_config * couple_config,
size_t component_idx )
Examples
test_couple_config.c.

Definition at line 1130 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_component_pack_size()

static size_t yac_couple_config_get_component_pack_size ( void * component_,
MPI_Comm comm )
static

Definition at line 1817 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_get_config_output_pack_size()

static size_t yac_couple_config_get_config_output_pack_size ( void * config_output_,
MPI_Comm comm )
static

Definition at line 1882 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_get_couple_component_names()

void yac_couple_config_get_couple_component_names ( struct yac_couple_config * couple_config,
size_t couple_idx,
char const * couple_component_names[2] )
Examples
test_couple_config.c.

Definition at line 1015 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_get_couple_pack_size()

static size_t yac_couple_config_get_couple_pack_size ( void * couple_,
MPI_Comm comm )
static

Definition at line 1870 of file couple_config.c.

◆ yac_couple_config_get_coupling_period()

char const * yac_couple_config_get_coupling_period ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx )
Examples
test_couple_config.c.

Definition at line 1500 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_coupling_period_operation()

enum yac_reduction_type yac_couple_config_get_coupling_period_operation ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx )
Examples
test_couple_config.c.

Definition at line 1557 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_end_datetime()

char * yac_couple_config_get_end_datetime ( struct yac_couple_config * couple_config)
Examples
test_couple_config.c.

Definition at line 1623 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_get_field_collection_size()

size_t yac_couple_config_get_field_collection_size ( struct yac_couple_config * couple_config,
char const * component_name,
char const * grid_name,
char const * field_name )
Examples
test_couple_config.c.

Definition at line 1386 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_field_couple_component_names()

void yac_couple_config_get_field_couple_component_names ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx,
char const ** src_component_name,
char const ** tgt_component_name )
Examples
test_couple_config.c.

Definition at line 1406 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_field_couple_pack_size()

static size_t yac_couple_config_get_field_couple_pack_size ( void * field_couple_,
MPI_Comm comm )
static

Definition at line 1827 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_get_field_grid_name()

char const * yac_couple_config_get_field_grid_name ( struct yac_couple_config * couple_config,
size_t component_idx,
size_t field_idx )
Examples
test_couple_config.c.

Definition at line 1154 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_field_grid_names()

void yac_couple_config_get_field_grid_names ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx,
char const ** src_grid_name,
char const ** tgt_grid_name )
Examples
test_couple_config.c.

Definition at line 1284 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_field_idx()

size_t yac_couple_config_get_field_idx ( struct yac_couple_config * couple_config,
size_t component_idx,
size_t grid_idx,
char const * field_name )
Examples
test_couple_config.c.

Definition at line 1101 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_field_name()

char const * yac_couple_config_get_field_name ( struct yac_couple_config * couple_config,
size_t component_idx,
size_t field_idx )
Examples
test_couple_config.c.

Definition at line 1169 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_field_names()

void yac_couple_config_get_field_names ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx,
char const ** src_field_name,
const char ** tgt_field_name )
Examples
test_couple_config.c.

Definition at line 1425 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_field_pack_size()

static size_t yac_couple_config_get_field_pack_size ( void * field_,
MPI_Comm comm )
static

Definition at line 1797 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_get_field_role()

int yac_couple_config_get_field_role ( struct yac_couple_config * couple_config,
char const * component_name,
char const * grid_name,
char const * field_name )
Examples
test_couple_config.c.

Definition at line 1203 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_field_source()

void yac_couple_config_get_field_source ( struct yac_couple_config * couple_config,
char const * tgt_component_name,
char const * tgt_grid_name,
char const * tgt_field_name,
char const ** src_component_name,
char const ** src_grid_name,
char const ** src_field_name )
Examples
test_couple_config.c.

Definition at line 2764 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_field_timestep()

char const * yac_couple_config_get_field_timestep ( struct yac_couple_config * couple_config,
char const * component_name,
char const * grid_name,
char const * field_name )
Examples
test_couple_config.c.

Definition at line 1183 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_frac_mask_fallback_value()

double yac_couple_config_get_frac_mask_fallback_value ( struct yac_couple_config * couple_config,
char const * component_name,
char const * grid_name,
char const * field_name )
Examples
test_couple_config.c.

Definition at line 1359 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_grid_idx()

size_t yac_couple_config_get_grid_idx ( struct yac_couple_config * couple_config,
char const * grid_name )
Examples
test_couple_config.c.

Definition at line 1084 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_get_grid_name()

char const * yac_couple_config_get_grid_name ( struct yac_couple_config * couple_config,
size_t grid_idx )
Examples
test_couple_config.c.

Definition at line 1636 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_get_grid_pack_size()

static size_t yac_couple_config_get_grid_pack_size ( void * grid_,
MPI_Comm comm )
static

Definition at line 1789 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_get_interp_stack()

struct yac_interp_stack_config * yac_couple_config_get_interp_stack ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx )
Examples
test_couple_config.c.

Definition at line 1270 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_missing_definition_is_fatal()

int yac_couple_config_get_missing_definition_is_fatal ( struct yac_couple_config * couple_config)

returns whether YAC aborts if for a defined couple at least one associated field was not defined by the user

Parameters
[in]couple_configcoupling configuration
Returns
missing_definition_is_fatal flag
Examples
test_couple_config.c.

Definition at line 966 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_get_num_components()

size_t yac_couple_config_get_num_components ( struct yac_couple_config * couple_config)
Examples
test_couple_config.c.

Definition at line 1047 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_get_num_couple_fields()

size_t yac_couple_config_get_num_couple_fields ( struct yac_couple_config * couple_config,
size_t couple_idx )
Examples
test_couple_config.c.

Definition at line 1005 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_num_couples()

size_t yac_couple_config_get_num_couples ( struct yac_couple_config * couple_config)
Examples
test_couple_config.c.

Definition at line 960 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_get_num_fields()

size_t yac_couple_config_get_num_fields ( struct yac_couple_config * couple_config,
size_t component_idx )
Examples
test_couple_config.c.

Definition at line 1059 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_num_grids()

size_t yac_couple_config_get_num_grids ( struct yac_couple_config * couple_config)
Examples
test_couple_config.c.

Definition at line 1053 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_get_scale_factor()

double yac_couple_config_get_scale_factor ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx )
Examples
test_couple_config.c.

Definition at line 1680 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_scale_summand()

double yac_couple_config_get_scale_summand ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx )
Examples
test_couple_config.c.

Definition at line 1695 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_source_lag()

int yac_couple_config_get_source_lag ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx )
Examples
test_couple_config.c.

Definition at line 1470 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_source_timestep()

char const * yac_couple_config_get_source_timestep ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx )
Examples
test_couple_config.c.

Definition at line 1515 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_src_mask_names()

void yac_couple_config_get_src_mask_names ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx,
char const *const ** mask_names,
size_t * num_mask_names )
Examples
test_couple_config.c.

Definition at line 1710 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_start_datetime()

char * yac_couple_config_get_start_datetime ( struct yac_couple_config * couple_config)
Examples
test_couple_config.c.

Definition at line 1610 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_get_string_pack_size()

static size_t yac_couple_config_get_string_pack_size ( char const * string,
MPI_Comm comm )
static

Definition at line 1772 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_get_target_lag()

int yac_couple_config_get_target_lag ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx )
Examples
test_couple_config.c.

Definition at line 1485 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_target_timestep()

char const * yac_couple_config_get_target_timestep ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx )
Examples
test_couple_config.c.

Definition at line 1540 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_tgt_mask_name()

char const * yac_couple_config_get_tgt_mask_name ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx )
Examples
test_couple_config.c.

Definition at line 1732 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_weight_file_name()

char const * yac_couple_config_get_weight_file_name ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx )
Examples
test_couple_config.c.

Definition at line 1662 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_get_yaxt_exchanger_name()

char const * yac_couple_config_get_yaxt_exchanger_name ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx )
Examples
test_couple_config.c.

Definition at line 1747 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_grid_compare()

static int yac_couple_config_grid_compare ( void const * a,
void const * b )
static

Definition at line 209 of file couple_config.c.

◆ yac_couple_config_grid_free()

static void yac_couple_config_grid_free ( void * grid_)
static

Definition at line 191 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_grid_get_metadata()

const char * yac_couple_config_grid_get_metadata ( struct yac_couple_config * couple_config,
const char * grid_name )
Examples
test_couple_config.c.

Definition at line 853 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_grid_get_output_filename()

const char * yac_couple_config_grid_get_output_filename ( struct yac_couple_config * couple_config,
const char * grid_name )
Examples
test_couple_config.c.

Definition at line 846 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_grid_merge()

static void yac_couple_config_grid_merge ( void * a_,
void * b_,
MPI_Comm comm )
static

Definition at line 384 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_grid_set_metadata()

void yac_couple_config_grid_set_metadata ( struct yac_couple_config * couple_config,
char const * grid_name,
const char * metadata )
Examples
test_couple_config.c.

Definition at line 815 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_grid_set_output_filename()

void yac_couple_config_grid_set_output_filename ( struct yac_couple_config * couple_config,
char const * grid_name,
const char * output_filename )
Examples
test_couple_config.c, and test_instance_parallel1.c.

Definition at line 794 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_mapping_on_source()

int yac_couple_config_mapping_on_source ( struct yac_couple_config * couple_config,
size_t couple_idx,
size_t field_couple_idx )
Examples
test_couple_config.c.

Definition at line 1455 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_new()

struct yac_couple_config * yac_couple_config_new ( )
Examples
test_component_config.c, test_couple_config.c, and test_instance_parallel1.c.

Definition at line 120 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_pack_component()

static void yac_couple_config_pack_component ( void * component_,
void * buffer,
int buffer_size,
int * position,
MPI_Comm comm )
static

Definition at line 1947 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_pack_config_output()

static void yac_couple_config_pack_config_output ( void * config_output_,
void * buffer,
int buffer_size,
int * position,
MPI_Comm comm )
static

Definition at line 2061 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_pack_couple()

static void yac_couple_config_pack_couple ( void * couple_,
void * buffer,
int buffer_size,
int * position,
MPI_Comm comm )
static

Definition at line 2040 of file couple_config.c.

◆ yac_couple_config_pack_field()

static void yac_couple_config_pack_field ( void * field_,
void * buffer,
int buffer_size,
int * position,
MPI_Comm comm )
static

Definition at line 1928 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_pack_field_couple()

static void yac_couple_config_pack_field_couple ( void * field_couple_,
void * buffer,
int buffer_size,
int * position,
MPI_Comm comm )
static

Definition at line 1957 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_pack_grid()

static void yac_couple_config_pack_grid ( void * grid_,
void * buffer,
int buffer_size,
int * position,
MPI_Comm comm )
static

Definition at line 1919 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_pack_string()

static void yac_couple_config_pack_string ( char const * string,
void * buffer,
int buffer_size,
int * position,
MPI_Comm comm )
static

Definition at line 1897 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_set_config_output_filename()

void yac_couple_config_set_config_output_filename ( struct yac_couple_config * couple_config,
char const * filename,
enum yac_text_filetype filetype,
char const * ref,
int include_definitions )

enables the writing of the synchronised coupling configuration to file by yac_couple_config_sync

Parameters
[in]couple_configcoupling configuration
[in]filenamename of the output file
[in]filetypetype of the output file
[in]refreference, which has to be provided to yac_couple_config_sync in order to select the filename
[in]include_definitionsinclude user definitions (components, grids, and fields) in the output file
Examples
test_couple_config.c.

Definition at line 2710 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_set_datetime()

void yac_couple_config_set_datetime ( struct yac_couple_config * couple_config,
char const * start,
char const * end )
Examples
test_couple_config.c.

Definition at line 1602 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_set_missing_definition_is_fatal()

void yac_couple_config_set_missing_definition_is_fatal ( struct yac_couple_config * couple_config,
int missing_definition_is_fatal )

sets whether YAC aborts if for a defined couple at least one associated field was not defined by the user

Parameters
[in]couple_configcoupling configuration
[in]missing_definition_is_fatalmissing_definition_is_fatal flag
Examples
test_couple_config.c.

Definition at line 977 of file couple_config.c.

Here is the caller graph for this function:

◆ yac_couple_config_sync()

void yac_couple_config_sync ( struct yac_couple_config * couple_config,
MPI_Comm comm,
char const * output_ref )

synchronises the coupling configuration across all processes in comm

Parameters
[in]couple_configcoupling configuration
[in]commMPI communicator
[in]output_refThe coupling configuration will be written to file after it has been synchronised between all processes, if a filename and -type have been set for the provided reference (see yac_couple_config_set_config_output_filename)
Examples
test_couple_config.c.

Definition at line 2638 of file couple_config.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_couple_config_unpack_component()

static void yac_couple_config_unpack_component ( void * buffer,
int buffer_size,
int * position,
void * component_,
MPI_Comm comm )
static

Definition at line 2134 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_unpack_config_output()

static void yac_couple_config_unpack_config_output ( void * buffer,
int buffer_size,
int * position,
void * config_output_,
MPI_Comm comm )
static

Definition at line 2266 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_unpack_couple()

static void yac_couple_config_unpack_couple ( void * buffer,
int buffer_size,
int * position,
void * couple_,
MPI_Comm comm )
static

Definition at line 2243 of file couple_config.c.

◆ yac_couple_config_unpack_field()

static void yac_couple_config_unpack_field ( void * buffer,
int buffer_size,
int * position,
void * field_,
MPI_Comm comm )
static

Definition at line 2109 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_unpack_field_couple()

static void yac_couple_config_unpack_field_couple ( void * buffer,
int buffer_size,
int * position,
void * field_couple_,
MPI_Comm comm )
static

Definition at line 2148 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_unpack_grid()

static void yac_couple_config_unpack_grid ( void * buffer,
int buffer_size,
int * position,
void * grid_,
MPI_Comm comm )
static

Definition at line 2096 of file couple_config.c.

Here is the call graph for this function:

◆ yac_couple_config_unpack_string()

static char * yac_couple_config_unpack_string ( void * buffer,
int buffer_size,
int * position,
MPI_Comm comm )
static

Definition at line 2078 of file couple_config.c.

Here is the caller graph for this function:

Variable Documentation

◆ dist_merge_vtable_component

struct yac_dist_merge_vtable dist_merge_vtable_component
Initial value:
=
static void yac_couple_config_component_merge(void *a_, void *b_, MPI_Comm comm)
static int yac_couple_config_component_compare(void const *a_, void const *b_)
static size_t yac_couple_config_get_component_pack_size(void *component_, MPI_Comm comm)
static void yac_couple_config_unpack_component(void *buffer, int buffer_size, int *position, void *component_, MPI_Comm comm)
static void yac_couple_config_component_free(void *component_)
static void yac_couple_config_pack_component(void *component_, void *buffer, int buffer_size, int *position, MPI_Comm comm)

Definition at line 2464 of file couple_config.c.

◆ dist_merge_vtable_config_output

struct yac_dist_merge_vtable dist_merge_vtable_config_output
Initial value:
=
static void yac_couple_config_config_output_free(void *config_output_)
static void yac_couple_config_unpack_config_output(void *buffer, int buffer_size, int *position, void *config_output_, MPI_Comm comm)
static size_t yac_couple_config_get_config_output_pack_size(void *config_output_, MPI_Comm comm)
static void yac_couple_config_pack_config_output(void *config_output_, void *buffer, int buffer_size, int *position, MPI_Comm comm)
static void yac_couple_config_config_output_merge(void *a_, void *b_, MPI_Comm comm)
static int yac_couple_config_config_output_compare(void const *a, void const *b)

Definition at line 2492 of file couple_config.c.

◆ dist_merge_vtable_couple

struct yac_dist_merge_vtable dist_merge_vtable_couple
Initial value:
=
static void yac_couple_config_couple_free(void *couple_)
static size_t yac_couple_config_get_couple_pack_size(void *couple_, MPI_Comm comm)
static void yac_couple_config_couple_merge(void *a_, void *b_, MPI_Comm comm)
static int yac_couple_config_couple_compare(void const *a_, void const *b_)
static void yac_couple_config_unpack_couple(void *buffer, int buffer_size, int *position, void *couple_, MPI_Comm comm)
static void yac_couple_config_pack_couple(void *couple_, void *buffer, int buffer_size, int *position, MPI_Comm comm)

Definition at line 2485 of file couple_config.c.

◆ dist_merge_vtable_field

struct yac_dist_merge_vtable dist_merge_vtable_field
Initial value:
=
static void yac_couple_config_unpack_field(void *buffer, int buffer_size, int *position, void *field_, MPI_Comm comm)
static void yac_couple_config_pack_field(void *field_, void *buffer, int buffer_size, int *position, MPI_Comm comm)
static size_t yac_couple_config_get_field_pack_size(void *field_, MPI_Comm comm)
static int yac_couple_config_field_compare(void const *a_, void const *b_)
static void yac_couple_config_field_free(void *field_)
static void yac_couple_config_field_merge(void *a_, void *b_, MPI_Comm comm)

Definition at line 2471 of file couple_config.c.

◆ dist_merge_vtable_field_couple

struct yac_dist_merge_vtable dist_merge_vtable_field_couple
Initial value:
=
static void yac_couple_config_field_couple_free(void *field_couple_)
static size_t yac_couple_config_get_field_couple_pack_size(void *field_couple_, MPI_Comm comm)
static void yac_couple_config_pack_field_couple(void *field_couple_, void *buffer, int buffer_size, int *position, MPI_Comm comm)
static void yac_couple_config_unpack_field_couple(void *buffer, int buffer_size, int *position, void *field_couple_, MPI_Comm comm)
static void yac_couple_config_field_couple_merge(void *a_, void *b_, MPI_Comm comm)
static int yac_couple_config_field_couple_compare(void const *a_, void const *b_)

Definition at line 2478 of file couple_config.c.

◆ dist_merge_vtable_grid

struct yac_dist_merge_vtable dist_merge_vtable_grid
Initial value:
=
static void yac_couple_config_grid_merge(void *a_, void *b_, MPI_Comm comm)
static int yac_couple_config_grid_compare(void const *a, void const *b)
static size_t yac_couple_config_get_grid_pack_size(void *grid_, MPI_Comm comm)
static void yac_couple_config_unpack_grid(void *buffer, int buffer_size, int *position, void *grid_, MPI_Comm comm)
static void yac_couple_config_pack_grid(void *grid_, void *buffer, int buffer_size, int *position, MPI_Comm comm)
static void yac_couple_config_grid_free(void *grid_)

Definition at line 2457 of file couple_config.c.