33#define YAC_INSTANCE_CONFIG_OUTPUT_REF_COMP "comp"
34#define YAC_INSTANCE_CONFIG_OUTPUT_REF_SYNC "sync"
35#define YAC_INSTANCE_CONFIG_OUTPUT_REF_ENDDEF "enddef"
68 struct yac_instance * instance,
const char * start_datetime,
69 const char * end_datetime );
109 struct yac_instance * instance,
char const ** comp_names,
size_t num_comps);
132 struct yac_instance * instance,
char const * field_name,
171 char const * src_comp_name,
char const * src_grid_name,
char const * src_field_name,
172 char const * tgt_comp_name,
char const * tgt_grid_name,
char const * tgt_field_name,
173 char const * coupling_period,
int time_reduction,
175 const char* weight_file_name,
int mapping_on_source,
176 double scale_factor,
double scale_summand,
size_t num_src_mask_names,
177 char const *
const * src_mask_names,
char const * tgt_mask_name,
178 char const * yaxt_exchanger_name);
221 char const ** comp_names,
size_t num_comp_names);
225 const char* comp_name);
229 const char* comp_name);
232 const char * comp_name,
const char* grid_name,
const char * field_name);
void yac_instance_delete(struct yac_instance *instance)
char * yac_instance_setup_and_emit_config(struct yac_instance *instance, struct yac_basic_grid **grids, size_t num_grids, int emit_flags)
int yac_instance_get_comp_rank(struct yac_instance *instance, const char *comp_name)
char * yac_instance_get_start_datetime(struct yac_instance *instance)
char * yac_instance_get_end_datetime(struct yac_instance *instance)
void yac_instance_def_datetime(struct yac_instance *instance, const char *start_datetime, const char *end_datetime)
void yac_instance_setup(struct yac_instance *instance, struct yac_basic_grid **grids, size_t num_grids)
void yac_instance_sync_def(struct yac_instance *instance)
struct yac_instance * yac_instance_new(MPI_Comm comm)
int yac_instance_components_are_defined(struct yac_instance *instance)
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)
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_set_couple_config(struct yac_instance *instance, struct yac_couple_config *couple_config)
void yac_instance_dummy_new(MPI_Comm comm)
void yac_instance_def_components(struct yac_instance *instance, char const **comp_names, size_t num_comps)
struct yac_couple_config * yac_instance_get_couple_config(struct yac_instance *instance)
int yac_instance_get_comp_size(struct yac_instance *instance, const char *comp_name)
MPI_Comm yac_instance_get_comps_comm(struct yac_instance *instance, char const **comp_names, size_t num_comp_names)
struct coupling_field * yac_instance_get_field(struct yac_instance *instance, const char *comp_name, const char *grid_name, const char *field_name)
struct yac_basic_grid * grid
struct yac_interp_field * interp_fields
size_t collection_size
number of vertical levels or bundles
struct yac_basic_grid ** grids