YetAnotherCoupler 3.4.0
|
#include "config.h"
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "yac_mpi_common.h"
#include "ensure_array_size.h"
#include "event.h"
#include "yac.h"
#include "mpi_handshake.h"
#include "utils_mci.h"
#include "version.h"
#include "instance.h"
#include "fields.h"
#include "couple_config.h"
#include "config_yaml.h"
#include "geometry.h"
#include "yac_mpi.h"
#include "utils_common.h"
Go to the source code of this file.
Data Structures | |
struct | user_input_data_component |
struct | user_input_data_points |
struct | user_input_data_masks |
struct | yac_ext_couple_config |
Macros | |
#define | NO_CHECK (1) |
#define | PUT_CHECK (put_mask[i][j]) |
#define | SUM += |
#define | ASSIGN = |
#define | AGGREGATE_FRAC(CHECK, EXTRA_CHECK, ACCU_OP) |
#define | AGGREATE_NOFRAC(CHECK, EXTRA_CHECK, ACCU_OP) |
#define | AGGREGATE(EXTRA_CHECK, ACCU_OP) |
#define | NO_CHECK (1) |
#define | PUT_CHECK (put_mask[i][j]) |
#define | WEIGHT_ACC_(ACC, CHECK, EXTRA_CHECK) |
#define | WEIGHT_ACC(ACC, EXTRA_CHECK) |
Enumerations | |
enum | { YAC_CONFIG_OUTPUT_SYNC_LOC_DEF_COMP_ = 0 , YAC_CONFIG_OUTPUT_SYNC_LOC_SYNC_DEF_ = 1 , YAC_CONFIG_OUTPUT_SYNC_LOC_ENDDEF_ = 2 } |
Functions | |
static int | yac_pointer_to_unique_id (void *pointer) |
static void * | yac_unique_id_to_pointer (int id, char const *id_name) |
static int | yac_lookup_pointer (void const *pointer) |
static void | yac_free_pointer_unique_lookup () |
static int | yac_add_grid (const char *grid_name, struct yac_basic_grid_data grid_data) |
static void | yac_free_grids () |
static void | yac_free_points () |
static void | yac_free_masks () |
static void | yac_free_components () |
static void | yac_free_interp_stack_configs () |
static void | check_default_instance_id (char const *routine_name) |
static void | yac_check_version (MPI_Comm comm) |
void | check_mpi_initialised (char const *routine_name) |
void | yac_cmpi_handshake (MPI_Comm comm, size_t n, char const **group_names, MPI_Comm *group_comms) |
void | yac_cmpi_handshake_f2c (MPI_Fint comm, int n, char const **group_names, MPI_Fint *group_comms) |
static int | yac_init (MPI_Comm comm) |
int | yac_cget_default_instance_id () |
void | yac_cinit_comm_instance (MPI_Comm comm, int *yac_instance_id) |
void | yac_cinit_comm_instance_f2c (MPI_Fint comm, int *yac_instance_id) |
void | yac_cinit_comm (MPI_Comm comm) |
void | yac_cinit_comm_f2c (MPI_Fint comm_f) |
void | yac_cinit_instance (int *yac_instance_id) |
void | yac_cinit (void) |
void | yac_cinit_comm_dummy (MPI_Comm comm) |
void | yac_cinit_comm_dummy_f2c (MPI_Fint comm_f) |
void | yac_cinit_dummy (void) |
int | yac_cyaml_get_emitter_flag_default_c2f () |
int | yac_cyaml_get_emitter_flag_json_c2f () |
void | yac_cread_config_yaml_instance (int yac_instance_id, const char *yaml_filename) |
void | yac_cread_config_yaml (const char *yaml_filename) |
void | yac_cread_config_json_instance (int yac_instance_id, const char *yaml_filename) |
void | yac_cread_config_json (const char *yaml_filename) |
void | yac_cset_config_output_file_instance (int yac_instance_id, const char *filename, int fileformat, int sync_location, int include_definitions) |
void | yac_cset_config_output_file (const char *filename, int filetype, int sync_location, int include_definitions) |
void | yac_cset_grid_output_file_instance (int yac_instance_id, const char *gridname, const char *filename) |
void | yac_cset_grid_output_file (const char *gridname, const char *filename) |
static void | yac_ccleanup_instance_ (int yac_instance_id) |
void | yac_ccleanup_instance (int yac_instance_id) |
void | yac_ccleanup () |
static void | cleanup () |
void | yac_cfinalize_instance (int yac_instance_id) |
void | yac_cfinalize () |
void | yac_cdef_datetime_instance (int yac_instance_id, const char *start_datetime, const char *end_datetime) |
void | yac_cdef_datetime (const char *start_datetime, const char *end_datetime) |
void | yac_cdef_calendar (int calendar) |
int | yac_cget_calendar () |
char * | yac_cget_start_datetime_instance (int yac_instance_id) |
char * | yac_cget_start_datetime (void) |
char * | yac_cget_end_datetime_instance (int yac_instance_id) |
char * | yac_cget_end_datetime (void) |
char * | yac_cget_version (void) |
static struct user_input_data_component * | get_user_input_data_component (int comp_id, char const *routine) |
void | yac_cget_comp_comm (int comp_id, MPI_Comm *comp_comm) |
void | yac_get_comp_comm_f2c (int comp_id, MPI_Fint *comp_comm_f) |
void | yac_cget_comp_size_c2py (int comp_id, int *size) |
void | yac_cget_comp_rank_c2py (int comp_id, int *rank) |
void | yac_cget_comps_comm_instance (int yac_instance_id, char const **comp_names, int num_comps, MPI_Comm *comps_comm) |
void | yac_cget_comps_comm (const char **comp_names, int num_comps, MPI_Comm *comps_comm) |
void | yac_cget_comps_comm_instance_f2c (int yac_instance_id, char const **comp_names, int num_comps, MPI_Fint *comps_comm_f) |
void | yac_cget_comps_comm_f2c (char const **comp_names, int num_comps, MPI_Fint *comps_comm_f) |
void | yac_cpredef_comp_instance (int yac_instance_id, char const *name, int *comp_id) |
void | yac_cpredef_comp (char const *name, int *comp_id) |
void | yac_cdef_comps_instance (int yac_instance_id, char const **comp_names, int num_comps, int *comp_ids) |
void | yac_cdef_comps (char const **comp_names, int num_comps, int *comp_ids) |
void | yac_cdef_comp_instance (int yac_instance_id, char const *comp_name, int *comp_id) |
void | yac_cdef_comp (char const *comp_name, int *comp_id) |
static int | user_input_data_add_points (struct yac_basic_grid *grid, enum yac_location location, yac_coordinate_pointer coordinates) |
static void | check_x_vertices (double const *x_vertices, size_t count, char const *routine_name) |
static void | check_y_vertices (double const *y_vertices, size_t count, char const *routine_name) |
static void | check_cell_to_vertex (int *cell_to_vertex, int *num_vertices_per_cell, int nbr_cells, int nbr_vertices, char const *routine_name) |
void | yac_cdef_points_reg2d (int const grid_id, int const *nbr_points, int const located, double const *x_points, double const *y_points, int *point_id) |
void | yac_cdef_points_curve2d (int const grid_id, int const *nbr_points, int const located, double const *x_points, double const *y_points, int *point_id) |
void | yac_cdef_points_unstruct (int const grid_id, int const nbr_points, int const located, double const *x_points, double const *y_points, int *point_id) |
static int | user_input_data_add_mask (struct yac_basic_grid *grid, enum yac_location location, int const *is_valid, size_t nbr_points, char const *name) |
void | yac_cdef_mask_named (int const grid_id, int const nbr_points, int const located, int const *is_valid, char const *name, int *mask_id) |
void | yac_cdef_mask (int const grid_id, int const nbr_points, int const located, int const *is_valid, int *mask_id) |
void | yac_cset_mask (int const *is_valid, int points_id) |
void | yac_cdef_field_mask (char const *name, int const comp_id, int const *point_ids, int const *mask_ids, int const num_pointsets, int collection_size, const char *timestep, int time_unit, int *field_id) |
void | yac_cdef_field (char const *name, int const comp_id, int const *point_ids, int const num_pointsets, int collection_size, const char *timestep, int time_unit, int *field_id) |
void | yac_cenable_field_frac_mask_instance (int yac_instance_id, const char *comp_name, const char *grid_name, const char *field_name, double frac_mask_fallback_value) |
void | yac_cenable_field_frac_mask (const char *comp_name, const char *grid_name, const char *field_name, double frac_mask_fallback_value) |
void | yac_cdef_component_metadata_instance (int yac_instance_id, const char *comp_name, const char *metadata) |
void | yac_cdef_component_metadata (const char *comp_name, const char *metadata) |
void | yac_cdef_grid_metadata_instance (int yac_instance_id, const char *grid_name, const char *metadata) |
void | yac_cdef_grid_metadata (const char *grid_name, const char *metadata) |
void | yac_cdef_field_metadata_instance (int yac_instance_id, const char *comp_name, const char *grid_name, const char *field_name, const char *metadata) |
void | yac_cdef_field_metadata (const char *comp_name, const char *grid_name, const char *field_name, const char *metadata) |
const char * | yac_cget_component_metadata_instance (int yac_instance_id, const char *comp_name) |
const char * | yac_cget_component_metadata (const char *comp_name) |
const char * | yac_cget_grid_metadata_instance (int yac_instance_id, const char *grid_name) |
const char * | yac_cget_grid_metadata (const char *grid_name) |
const char * | yac_cget_field_metadata_instance (int yac_instance_id, const char *comp_name, const char *grid_name, const char *field_name) |
const char * | yac_cget_field_metadata (const char *comp_name, const char *grid_name, const char *field_name) |
static void | init_ext_couple_config (struct yac_ext_couple_config *ext_couple_config) |
void | yac_cget_ext_couple_config (int *ext_couple_config_id) |
void | yac_cfree_ext_couple_config (int ext_couple_config_id) |
void | yac_cset_ext_couple_config_weight_file_ (struct yac_ext_couple_config *ext_couple_config, char const *weight_file) |
void | yac_cset_ext_couple_config_weight_file (int ext_couple_config_id, char const *weight_file) |
void | yac_cget_ext_couple_config_weight_file (int ext_couple_config_id, char const **weight_file) |
void | yac_cset_ext_couple_config_mapping_side_ (struct yac_ext_couple_config *ext_couple_config, int mapping_side) |
void | yac_cset_ext_couple_config_mapping_side (int ext_couple_config_id, int mapping_side) |
void | yac_cget_ext_couple_config_mapping_side (int ext_couple_config_id, int *mapping_side) |
void | yac_cset_ext_couple_config_scale_factor_ (struct yac_ext_couple_config *ext_couple_config, double scale_factor) |
void | yac_cset_ext_couple_config_scale_factor (int ext_couple_config_id, double scale_factor) |
void | yac_cget_ext_couple_config_scale_factor (int ext_couple_config_id, double *scale_factor) |
void | yac_cset_ext_couple_config_scale_summand_ (struct yac_ext_couple_config *ext_couple_config, double scale_summand) |
void | yac_cset_ext_couple_config_scale_summand (int ext_couple_config_id, double scale_summand) |
void | yac_cget_ext_couple_config_scale_summand (int ext_couple_config_id, double *scale_summand) |
void | yac_cset_ext_couple_config_src_mask_names_ (struct yac_ext_couple_config *ext_couple_config, size_t num_src_mask_names, char const *const *src_mask_names) |
void | yac_cset_ext_couple_config_src_mask_names (int ext_couple_config_id, size_t num_src_mask_names, char const *const *src_mask_names) |
void | yac_cget_ext_couple_config_src_mask_names (int ext_couple_config_id, size_t *num_src_mask_names, char const *const **src_mask_names) |
void | yac_cset_ext_couple_config_tgt_mask_name_ (struct yac_ext_couple_config *ext_couple_config, char const *tgt_mask_name) |
void | yac_cset_ext_couple_config_tgt_mask_name (int ext_couple_config_id, char const *tgt_mask_name) |
void | yac_cget_ext_couple_config_mask_name (int ext_couple_config_id, char const **tgt_mask_name) |
void | yac_cdef_couple_custom_instance_ (int yac_instance_id, 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_timestep, int time_unit, int time_reduction, int interp_stack_config_id, int src_lag, int tgt_lag, struct yac_ext_couple_config *ext_couple_config) |
void | yac_cdef_couple_custom_instance (int yac_instance_id, 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_timestep, int time_unit, int time_reduction, int interp_stack_config_id, int src_lag, int tgt_lag, int ext_couple_config_id) |
void | yac_cdef_couple_custom (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_timestep, int time_unit, int time_reduction, int interp_stack_config_id, int src_lag, int tgt_lag, int ext_couple_config_id) |
void | yac_cdef_couple_instance (int yac_instance_id, 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_timestep, int time_unit, int time_reduction, int interp_stack_config_id, int src_lag, int tgt_lag) |
void | yac_cdef_couple (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_timestep, int time_unit, int time_reduction, int interp_stack_config_id, int src_lag, int tgt_lag) |
void | yac_cdef_couple_instance_ (int yac_instance_id, 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_timestep, int time_unit, int time_reduction, int interp_stack_config_id, int src_lag, int tgt_lag, char const *weight_file, int mapping_side, double scale_factor, double scale_summand, int num_src_mask_names, char const *const *src_mask_names, char const *tgt_mask_name) |
void | yac_cdef_couple_ (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_timestep, int time_unit, int time_reduction, int interp_stack_config_id, int src_lag, int tgt_lag, char const *weight_file, int mapping_side, double scale_factor, double scale_summand, int num_src_mask_names, char const *const *src_mask_names, char const *tgt_mask_name) |
void | yac_ccheck_field_dimensions (int field_id, int collection_size, int num_interp_fields, int const *interp_field_sizes) |
void | yac_cget_action (int field_id, int *action) |
const char * | yac_cget_field_datetime (int field_id) |
static void | yac_cupdate_ (struct coupling_field *cpl_field, struct event *event, int is_source) |
void | yac_cupdate (int field_id) |
static double ** | get_recv_field_pointers (int const field_id, int const collection_size, double *recv_field) |
static struct yac_interpolation * | yac_cget_pre_processing (int const field_id, int collection_size, int *info, int *ierr) |
static void | yac_get (int const field_id, int collection_size, double **recv_field, int is_async, int *info, int *ierr) |
void | yac_get_ (int const field_id, int const collection_size, double *recv_field, int is_async, int *info, int *ierr) |
void | yac_cget_ (int const field_id, int const collection_size, double *recv_field, int *info, int *ierr) |
void | yac_cget_async_ (int const field_id, int const collection_size, double *recv_field, int *info, int *ierr) |
void | yac_cget (int const field_id, int collection_size, double **recv_field, int *info, int *ierr) |
void | yac_cget_async (int const field_id, int collection_size, double **recv_field, int *info, int *ierr) |
static void | get_send_field_pointers (int const field_id, int const collection_size, double *send_field, double *send_frac_mask, double ****send_field_, double ****send_frac_mask_) |
void | yac_cput_ (int const field_id, int const collection_size, double *send_field, int *info, int *ierr) |
void | yac_cput_frac_ (int const field_id, int const collection_size, double *send_field, double *send_frac_mask, int *info, int *ierr) |
static void | get_send_field_pointers_ptr_ (int const field_id, int const collection_size, double **send_field, double **send_frac_mask, double ****send_field_, double ****send_frac_mask_) |
void | yac_cput_ptr_ (int const field_id, int const collection_size, double **send_field, int *info, int *ierr) |
void | yac_cput_frac_ptr_ (int const field_id, int const collection_size, double **send_field, double **send_frac_mask, int *info, int *ierr) |
void | yac_ctest (int field_id, int *flag) |
void | yac_cwait (int field_id) |
void * | yac_get_field_put_mask_c2f (int field_id) |
void * | yac_get_field_get_mask_c2f (int field_id) |
static struct yac_interpolation * | yac_cput_pre_processing (struct coupling_field *cpl_field, unsigned put_idx, int const collection_size, double ***send_field, double ****send_field_acc_, double ***send_frac_mask, double ****send_frac_mask_acc_, int *info, int *ierr) |
void | yac_cput_frac (int const field_id, int const collection_size, double ***const send_field, double ***const send_frac_mask, int *info, int *ierr) |
void | yac_cput (int const field_id, int const collection_size, double ***const send_field, int *info, int *ierr) |
void | yac_cexchange_ (int const send_field_id, int const recv_field_id, int const collection_size, double *send_field, double *recv_field, int *send_info, int *recv_info, int *ierr) |
void | yac_cexchange_frac_ (int const send_field_id, int const recv_field_id, int const collection_size, double *send_field, double *send_frac_mask, double *recv_field, int *send_info, int *recv_info, int *ierr) |
void | yac_cexchange_ptr_ (int const send_field_id, int const recv_field_id, int const collection_size, double **send_field, double **recv_field, int *send_info, int *recv_info, int *ierr) |
void | yac_cexchange_frac_ptr_ (int const send_field_id, int const recv_field_id, int const collection_size, double **send_field, double **send_frac_mask, double **recv_field, int *send_info, int *recv_info, int *ierr) |
void | yac_cexchange_frac (int const send_field_id, int const recv_field_id, int const collection_size, double ***const send_field, double ***const send_frac_mask, double **recv_field, int *send_info, int *recv_info, int *ierr) |
void | yac_cexchange (int const send_field_id, int const recv_field_id, int const collection_size, double ***const send_field, double **recv_field, int *send_info, int *recv_info, int *ierr) |
void | yac_csync_def_instance (int yac_instance_id) |
void | yac_csync_def (void) |
void | yac_cenddef_instance (int yac_instance_id) |
void | yac_cenddef (void) |
void | yac_cenddef_and_emit_config_instance (int yac_instance_id, int emit_flags, char **config) |
void | yac_cenddef_and_emit_config (int emit_flags, char **config) |
int | yac_cget_field_id_instance (int yac_instance_id, const char *comp_name, const char *grid_name, const char *field_name) |
int | yac_cget_field_id (const char *comp_name, const char *grid_name, const char *field_name) |
int | yac_cget_nbr_comps_instance (int yac_instance_id) |
int | yac_cget_nbr_comps (void) |
int | yac_cget_nbr_grids_instance (int yac_instance_id) |
int | yac_cget_nbr_grids () |
int | yac_cget_comp_nbr_grids_instance (int yac_instance_id, const char *comp_name) |
int | yac_cget_comp_nbr_grids (const char *comp_name) |
int | yac_cget_nbr_fields_instance (int yac_instance_id, const char *comp_name, const char *grid_name) |
int | yac_cget_nbr_fields (const char *comp_name, const char *grid_name) |
void | yac_cget_comp_names_instance (int yac_instance_id, int nbr_comps, const char **comp_names) |
void | yac_cget_comp_names (int nbr_comps, const char **comp_names) |
void | yac_cget_grid_names_instance (int yac_instance_id, int nbr_grids, const char **grid_names) |
void | yac_cget_grid_names (int nbr_grids, const char **grid_names) |
void | yac_cget_comp_grid_names_instance (int yac_instance_id, const char *comp_name, int nbr_grids, const char **grid_names) |
void | yac_cget_comp_grid_names (const char *comp_name, int nbr_grids, const char **grid_names) |
void | yac_cget_field_names_instance (int yac_instance_id, const char *comp_name, const char *grid_name, int nbr_fields, const char **field_names) |
void | yac_cget_field_names (const char *comp_name, const char *grid_name, int nbr_fields, const char **field_names) |
const char * | yac_cget_component_name_from_field_id (int field_id) |
const char * | yac_cget_grid_name_from_field_id (int field_id) |
const char * | yac_cget_field_name_from_field_id (int field_id) |
const char * | yac_cget_timestep_from_field_id (int field_id) |
int | yac_cget_collection_size_from_field_id (int field_id) |
int | yac_cget_role_from_field_id (int field_id) |
const char * | yac_cget_field_timestep_instance (int yac_instance_id, const char *comp_name, const char *grid_name, const char *field_name) |
const char * | yac_cget_field_timestep (const char *comp_name, const char *grid_name, const char *field_name) |
double | yac_cget_field_frac_mask_fallback_value_instance (int yac_instance_id, const char *comp_name, const char *grid_name, const char *field_name) |
int | yac_cget_field_collection_size_instance (int yac_instance_id, const char *comp_name, const char *grid_name, const char *field_name) |
double | yac_cget_field_frac_mask_fallback_value (const char *comp_name, const char *grid_name, const char *field_name) |
int | yac_cget_field_collection_size (const char *comp_name, const char *grid_name, const char *field_name) |
int | yac_cget_field_role_instance (int yac_instance_id, const char *comp_name, const char *grid_name, const char *field_name) |
int | yac_cget_field_role (const char *comp_name, const char *grid_name, const char *field_name) |
void | yac_cdef_grid_reg2d (const char *grid_name, int nbr_vertices[2], int cyclic[2], double *x_vertices, double *y_vertices, int *grid_id) |
void | yac_cdef_grid_curve2d (const char *grid_name, int nbr_vertices[2], int cyclic[2], double *x_vertices, double *y_vertices, int *grid_id) |
void | yac_cdef_grid_unstruct (const char *grid_name, int nbr_vertices, int nbr_cells, int *num_vertices_per_cell, double *x_vertices, double *y_vertices, int *cell_to_vertex, int *grid_id) |
void | yac_cdef_grid_unstruct_ll (const char *grid_name, int nbr_vertices, int nbr_cells, int *num_vertices_per_cell, double *x_vertices, double *y_vertices, int *cell_to_vertex, int *grid_id) |
void | yac_cdef_grid_cloud (const char *grid_name, int nbr_points, double *x_points, double *y_points, int *grid_id) |
void | yac_cset_global_index (int const *global_index, int location, int grid_id) |
void | yac_cset_core_mask (int const *is_core, int location, int grid_id) |
size_t | yac_cget_grid_size (int located, int grid_id) |
void | yac_ccompute_grid_cell_areas (int grid_id, double *cell_areas) |
size_t | yac_cget_points_size (int points_id) |
void | yac_cget_interp_stack_config (int *interp_stack_config_id) |
void | yac_cfree_interp_stack_config (int interp_stack_config_id) |
void | yac_cadd_interp_stack_config_average (int interp_stack_config_id, int reduction_type, int partial_coverage) |
void | yac_cadd_interp_stack_config_ncc (int interp_stack_config_id, int weight_type, int partial_coverage) |
void | yac_cadd_interp_stack_config_nnn (int interp_stack_config_id, int type, size_t n, double max_search_distance, double scale) |
void | yac_cadd_interp_stack_config_conservative (int interp_stack_config_id, int order, int enforced_conserv, int partial_coverage, int normalisation) |
void | yac_cadd_interp_stack_config_spmap (int interp_stack_config_id, double spread_distance, double max_search_distance, int weight_type, int scale_type, double src_sphere_radius, double tgt_sphere_radius) |
void | yac_cadd_interp_stack_config_hcsbb (int interp_stack_config_id) |
void | yac_cadd_interp_stack_config_user_file (int interp_stack_config_id, char const *filename) |
void | yac_cadd_interp_stack_config_fixed (int interp_stack_config_id, double value) |
void | yac_cadd_interp_stack_config_check (int interp_stack_config_id, char const *constructor_key, char const *do_search_key) |
void | yac_cadd_interp_stack_config_creep (int interp_stack_config_id, int creep_distance) |
void | yac_cadd_interp_stack_config_user_callback (int interp_stack_config_id, char const *func_compute_weights_key) |
void | yac_cadd_compute_weights_callback (yac_func_compute_weights compute_weights_callback, void *user_data, char const *key) |
static int | yac_cget_interp_stack_config_from_string (char const *interp_stack_config, int parse_flags) |
void | yac_cget_interp_stack_config_from_string_yaml (char const *interp_stack_config, int *interp_stack_config_id) |
void | yac_cget_interp_stack_config_from_string_json (char const *interp_stack_config, int *interp_stack_config_id) |
#define AGGREATE_NOFRAC | ( | CHECK, | |
EXTRA_CHECK, | |||
ACCU_OP ) |
#define AGGREGATE | ( | EXTRA_CHECK, | |
ACCU_OP ) |
#define AGGREGATE_FRAC | ( | CHECK, | |
EXTRA_CHECK, | |||
ACCU_OP ) |
#define ASSIGN = |
#define NO_CHECK (1) |
#define NO_CHECK (1) |
#define PUT_CHECK (put_mask[i][j]) |
#define PUT_CHECK (put_mask[i][j]) |
#define SUM += |
#define WEIGHT_ACC | ( | ACC, | |
EXTRA_CHECK ) |
#define WEIGHT_ACC_ | ( | ACC, | |
CHECK, | |||
EXTRA_CHECK ) |
anonymous enum |
|
static |
|
static |
void check_mpi_initialised | ( | char const * | routine_name | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
void yac_cadd_compute_weights_callback | ( | yac_func_compute_weights | compute_weights_callback, |
void * | user_data, | ||
char const * | key ) |
registers a callback routine for the computation of weights by the interpolation method user_callback
[in] | compute_weights_callback | pointer to a weight computation routine |
[in] | user_data | data pointer that will be passed to compute_weights_callback |
[in] | key | key for identifying the callback routine |
Definition at line 3757 of file yac.c.
void yac_cadd_interp_stack_config_average | ( | int | interp_stack_config_id, |
int | reduction_type, | ||
int | partial_coverage ) |
adds average interpolation to the bottom of a interpolation stack
[in] | interp_stack_config_id | interpolation stack |
[in] | reduction_type | reduction type |
[in] | partial_coverage | allow partial coverage |
Definition at line 3585 of file yac.c.
void yac_cadd_interp_stack_config_check | ( | int | interp_stack_config_id, |
char const * | constructor_key, | ||
char const * | do_search_key ) |
adds fixed interpolation to the bottom of a interpolation stack
[in] | interp_stack_config_id | interpolation stack |
[in] | constructor_key | key provided to yac_interp_method_check_add_constructor_callback for a constructor callback routine |
[in] | do_search_key | key provided to yac_interp_method_check_add_do_search_callback for a do_search callback routine |
Definition at line 3722 of file yac.c.
void yac_cadd_interp_stack_config_conservative | ( | int | interp_stack_config_id, |
int | order, | ||
int | enforced_conserv, | ||
int | partial_coverage, | ||
int | normalisation ) |
adds conservative interpolation to the bottom of a interpolation stack
[in] | interp_stack_config_id | interpolation stack |
[in] | order | first or second order |
[in] | enforced_conserv | enforce local conservation |
[in] | partial_coverage | allow partial coverage |
[in] | normalisation | normalisation type |
Definition at line 3643 of file yac.c.
void yac_cadd_interp_stack_config_creep | ( | int | interp_stack_config_id, |
int | creep_distance ) |
void yac_cadd_interp_stack_config_fixed | ( | int | interp_stack_config_id, |
double | value ) |
void yac_cadd_interp_stack_config_hcsbb | ( | int | interp_stack_config_id | ) |
void yac_cadd_interp_stack_config_ncc | ( | int | interp_stack_config_id, |
int | weight_type, | ||
int | partial_coverage ) |
adds nearest corner cells interpolation to the bottom of a interpolation stack
[in] | interp_stack_config_id | interpolation stack |
[in] | weight_type | reduction type |
[in] | partial_coverage | allow partial coverage |
Definition at line 3604 of file yac.c.
void yac_cadd_interp_stack_config_nnn | ( | int | interp_stack_config_id, |
int | type, | ||
size_t | n, | ||
double | max_search_distance, | ||
double | scale ) |
adds n-nearest-neighbour interpolation to the bottom of a interpolation stack
[in] | interp_stack_config_id | interpolation stack |
[in] | type | reduction type |
[in] | n | number of nearest neighbour points |
[in] | max_search_distance | maximum search distance for each point |
[in] | scale | scale parameter required by some reduction types |
Definition at line 3622 of file yac.c.
void yac_cadd_interp_stack_config_spmap | ( | int | interp_stack_config_id, |
double | spread_distance, | ||
double | max_search_distance, | ||
int | weight_type, | ||
int | scale_type, | ||
double | src_sphere_radius, | ||
double | tgt_sphere_radius ) |
adds source point mapping interpolation to the bottom of a interpolation stack
[in] | interp_stack_config_id | interpolation stack |
[in] | spread_distance | spread distance (in rad) |
[in] | max_search_distance | maximum search distance (in rad) |
[in] | weight_type | reduction type |
[in] | scale_type | scaling type |
[in] | src_sphere_radius | sphere radius used for source cell area computation |
[in] | tgt_sphere_radius | sphere radius used for target cell area computation |
Definition at line 3662 of file yac.c.
void yac_cadd_interp_stack_config_user_callback | ( | int | interp_stack_config_id, |
char const * | func_compute_weights_key ) |
adds user callback interpolation to the bottom of a interpolation stack
[in] | interp_stack_config_id | interpolation stack |
[in] | func_compute_weights_key | key provided to yac_cadd_compute_weights_callback for a compute_weights callback routine |
Definition at line 3744 of file yac.c.
void yac_cadd_interp_stack_config_user_file | ( | int | interp_stack_config_id, |
char const * | filename ) |
adds user weight file interpolation to the bottom of a interpolation stack
[in] | interp_stack_config_id | interpolation stack |
[in] | filename | weight file name |
Definition at line 3701 of file yac.c.
void yac_ccheck_field_dimensions | ( | int | field_id, |
int | collection_size, | ||
int | num_pointsets, | ||
int const * | pointset_sizes ) |
Checks whether the field dimensions match with field definition and aborts if there is a mismatch
[in] | field_id | |
[in] | collection_size | collection size |
[in] | num_pointsets | number of pointsets |
[in] | pointset_sizes | size of each pointset |
Definition at line 1659 of file yac.c.
void yac_ccleanup | ( | ) |
Clean-up YAC (same as yac_cfinalize but without MPI_Finalize; see Restarting YAC)
Definition at line 589 of file yac.c.
void yac_ccleanup_instance | ( | int | yac_instance_id | ) |
Clean-up YAC (same as yac_cfinalize_instance but without MPI_Finalize; see Restarting YAC)
[in] | yac_instance_id | id of the YAC instance to be cleaned up |
Definition at line 581 of file yac.c.
|
static |
void yac_ccompute_grid_cell_areas | ( | int | grid_id, |
double * | cell_areas ) |
computes the areas of all cells in a grid (an earth radius of 1.0 is assumed)
[in] | grid_id | |
[out] | cell_areas |
Definition at line 3530 of file yac.c.
void yac_cdef_calendar | ( | int | calendar | ) |
Defines the calendar of the default instance
[in] | calendar | The calendar |
Definition at line 646 of file yac.c.
void yac_cdef_comp | ( | const char * | comp_name, |
int * | comp_id ) |
Elementary definition of the component for the default YAC instance
[in] | comp_name | name of the component |
[out] | comp_id | component Id |
yac_cpredef_comp
. Definition at line 884 of file yac.c.
void yac_cdef_comp_instance | ( | int | yac_instance_id, |
const char * | comp_name, | ||
int * | comp_id ) |
Elementary definition of the component.
[in] | yac_instance_id | id of the YAC instance |
[in] | comp_name | name of the component |
[out] | comp_id | component Id |
yac_cpredef_comp_instance
. Definition at line 878 of file yac.c.
void yac_cdef_component_metadata | ( | const char * | comp_name, |
const char * | metadata ) |
Define metadata for a component
[in] | comp_name | |
[in] | metadata |
Definition at line 1254 of file yac.c.
void yac_cdef_component_metadata_instance | ( | int | yac_instance_id, |
const char * | comp_name, | ||
const char * | metadata ) |
Define metadata for a component
[in] | yac_instance_id | |
[in] | comp_name | |
[in] | metadata |
Definition at line 1246 of file yac.c.
void yac_cdef_comps | ( | const char ** | comp_names, |
int | num_comps, | ||
int * | comp_ids ) |
Elementary definition of the components for the default YAC instance
[in] | comp_names | names of the components |
[in] | num_comps | number of components |
[out] | comp_ids | component Id's |
Definition at line 870 of file yac.c.
void yac_cdef_comps_instance | ( | int | yac_instance_id, |
const char ** | comp_names, | ||
int | num_comps, | ||
int * | comp_ids ) |
Elementary definition of the components.
[in] | yac_instance_id | id of the YAC instance |
[in] | comp_names | names of the components |
[in] | num_comps | number of components |
[out] | comp_ids | component Id's |
Definition at line 845 of file yac.c.
void yac_cdef_couple | ( | 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_timestep, | ||
int | time_unit, | ||
int | time_reduction, | ||
int | interp_stack_config_id, | ||
int | src_lag, | ||
int | tgt_lag ) |
Define couple in the default 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_timestep | time step for the coupling given in the defined timestep unit |
[in] | time_unit | unit of coupling_timestep argument |
[in] | time_reduction | type for reducing multiple timesteps |
[in] | interp_stack_config_id | id of the 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 |
Definition at line 1585 of file yac.c.
void yac_cdef_couple_ | ( | 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_timestep, | ||
int | time_unit, | ||
int | time_reduction, | ||
int | interp_stack_config_id, | ||
int | src_lag, | ||
int | tgt_lag, | ||
char const * | weight_file, | ||
int | mapping_side, | ||
double | scale_factor, | ||
double | scale_summand, | ||
int | num_src_mask_names, | ||
char const *const * | src_mask_names, | ||
char const * | tgt_mask_name ) |
void yac_cdef_couple_custom | ( | 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_timestep, | ||
int | time_unit, | ||
int | time_reduction, | ||
int | interp_stack_config_id, | ||
int | src_lag, | ||
int | tgt_lag, | ||
int | ext_couple_config_id ) |
Define couple in the default yac instance using an extended coupling configuration
[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_timestep | time step for the coupling given in the defined timestep unit |
[in] | time_unit | unit of coupling_timestep argument |
[in] | time_reduction | type for reducing multiple timesteps |
[in] | interp_stack_config_id | id of the 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] | ext_couple_config_id | extended coupling configuration |
Definition at line 1553 of file yac.c.
void yac_cdef_couple_custom_instance | ( | int | yac_instance_id, |
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_timestep, | ||
int | time_unit, | ||
int | time_reduction, | ||
int | interp_stack_config_id, | ||
int | src_lag, | ||
int | tgt_lag, | ||
int | ext_couple_config_id ) |
Define couple using an extended coupling configuration
[in] | yac_instance_id | id of the YAC instance for that the couple should be defined |
[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_timestep | time step for the coupling |
[in] | time_unit | unit of coupling_timestep argument |
[in] | time_reduction | type for reducing multiple timesteps |
[in] | interp_stack_config_id | id of the 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] | ext_couple_config_id | extended coupling configuration |
Definition at line 1538 of file yac.c.
void yac_cdef_couple_custom_instance_ | ( | int | yac_instance_id, |
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_timestep, | ||
int | time_unit, | ||
int | time_reduction, | ||
int | interp_stack_config_id, | ||
int | src_lag, | ||
int | tgt_lag, | ||
struct yac_ext_couple_config * | ext_couple_config ) |
void yac_cdef_couple_instance | ( | int | yac_instance_id, |
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_timestep, | ||
int | time_unit, | ||
int | time_reduction, | ||
int | interp_stack_config_id, | ||
int | src_lag, | ||
int | tgt_lag ) |
Define couple
[in] | yac_instance_id | id of the YAC instance for that the couple should be defined |
[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_timestep | time step for the coupling |
[in] | time_unit | unit of coupling_timestep argument |
[in] | time_reduction | type for reducing multiple timesteps |
[in] | interp_stack_config_id | id of the 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 |
Definition at line 1568 of file yac.c.
void yac_cdef_couple_instance_ | ( | int | yac_instance_id, |
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_timestep, | ||
int | time_unit, | ||
int | time_reduction, | ||
int | interp_stack_config_id, | ||
int | src_lag, | ||
int | tgt_lag, | ||
char const * | weight_file, | ||
int | mapping_side, | ||
double | scale_factor, | ||
double | scale_summand, | ||
int | num_src_mask_names, | ||
char const *const * | src_mask_names, | ||
char const * | tgt_mask_name ) |
void yac_cdef_datetime | ( | const char * | start_datetime, |
const char * | end_datetime ) |
Definition of job start and end datetime for the default YAC instance
[in] | start_datetime | calendar job start datetime |
[in] | end_datetime | calendar job end datetime |
Definition at line 638 of file yac.c.
void yac_cdef_datetime_instance | ( | int | yac_instance_id, |
const char * | start_datetime, | ||
const char * | end_datetime ) |
Definition of job start and end datetime
[in] | yac_instance_id | id of the YAC instance |
[in] | start_datetime | calendar job start datetime |
[in] | end_datetime | calendar job end datetime |
Definition at line 629 of file yac.c.
void yac_cdef_field | ( | char const * | field_name, |
int const | component_id, | ||
int const * | point_ids, | ||
int const | num_pointsets, | ||
int | collection_size, | ||
const char * | timestep, | ||
int | time_unit, | ||
int * | field_id ) |
Definition of the coupling field (using default mask, if defined)
[in] | field_name | character string providing the name of the coupling field |
[in] | component_id | component ID |
[in] | point_ids | point IDs |
[in] | num_pointsets | number of pointsets per grid |
[in] | collection_size | collection size |
[in] | timestep | timestep |
[in] | time_unit | time unit |
[out] | field_id | returned field_id which has to be used to identify coupling fields in yac_cput and yac_cget. |
Definition at line 1194 of file yac.c.
void yac_cdef_field_mask | ( | char const * | field_name, |
int const | component_id, | ||
int const * | point_ids, | ||
int const * | mask_ids, | ||
int const | num_pointsets, | ||
int | collection_size, | ||
const char * | timestep, | ||
int | time_unit, | ||
int * | field_id ) |
Definition of the coupling field
[in] | field_name | character string providing the name of the coupling field |
[in] | component_id | component ID |
[in] | point_ids | point IDs |
[in] | mask_ids | mask IDs |
[in] | num_pointsets | number of pointsets per grid |
[in] | collection_size | collection size |
[in] | timestep | timestep |
[in] | time_unit | |
[out] | field_id | returned field_id which has to be used to identify coupling fields in yac_cput and yac_cget. |
Definition at line 1121 of file yac.c.
void yac_cdef_field_metadata | ( | const char * | comp_name, |
const char * | grid_name, | ||
const char * | field_name, | ||
const char * | metadata ) |
Define metadata for a field
[in] | comp_name | |
[in] | grid_name | |
[in] | field_name | |
[in] | metadata |
Definition at line 1282 of file yac.c.
void yac_cdef_field_metadata_instance | ( | int | yac_instance_id, |
const char * | comp_name, | ||
const char * | grid_name, | ||
const char * | field_name, | ||
const char * | metadata ) |
Define metadata for a field
[in] | yac_instance_id | |
[in] | comp_name | |
[in] | grid_name | |
[in] | field_name | |
[in] | metadata |
Definition at line 1273 of file yac.c.
void yac_cdef_grid_cloud | ( | const char * | grid_name, |
int | nbr_points, | ||
double * | x_points, | ||
double * | y_points, | ||
int * | grid_id ) |
Definition of grid consisting of a cloud of points
[in] | grid_name | name of the grid |
[in] | nbr_points | number of points |
[in] | x_points | array of point longitudes, in radians |
[in] | y_points | array of point latitudes, in radians |
[out] | grid_id | id of generated grid |
Definition at line 3422 of file yac.c.
void yac_cdef_grid_curve2d | ( | const char * | grid_name, |
int | nbr_vertices[2], | ||
int | cyclic[2], | ||
double * | x_vertices, | ||
double * | y_vertices, | ||
int * | grid_id ) |
Definition of a 2d curvilinear grid
[in] | grid_name | name of the grid |
[in] | nbr_vertices | 2d array containing the number of vertices in each dimension |
[in] | cyclic | 2d array containing information about cyclic behaviour in each dimension |
[in] | x_vertices | array of vertex longitudes, in radians |
[in] | y_vertices | array of vertex latitudes, in radians |
[out] | grid_id | id of generated grid |
Definition at line 3362 of file yac.c.
void yac_cdef_grid_metadata | ( | const char * | grid_name, |
const char * | metadata ) |
Define metadata for a grid for the default YAC instance
[in] | grid_name | |
[in] | metadata |
Definition at line 1268 of file yac.c.
void yac_cdef_grid_metadata_instance | ( | int | yac_instance_id, |
const char * | grid_name, | ||
const char * | metadata ) |
Define metadata for a grid
[in] | yac_instance_id | |
[in] | grid_name | |
[in] | metadata |
Definition at line 1259 of file yac.c.
void yac_cdef_grid_reg2d | ( | const char * | grid_name, |
int | nbr_vertices[2], | ||
int | cyclic[2], | ||
double * | x_vertices, | ||
double * | y_vertices, | ||
int * | grid_id ) |
Definition of a 2d regular grid
[in] | grid_name | name of the grid |
[in] | nbr_vertices | 2d array containing the number of vertices in each dimension |
[in] | cyclic | 2d array containing information about cyclic behaviour in each dimension |
[in] | x_vertices | array of vertex longitudes, in radians |
[in] | y_vertices | array of vertex latitudes, in radians |
[out] | grid_id | id of generated grid |
Definition at line 3344 of file yac.c.
void yac_cdef_grid_unstruct | ( | const char * | grid_name, |
int | nbr_vertices, | ||
int | nbr_cells, | ||
int * | num_vertices_per_cell, | ||
double * | x_vertices, | ||
double * | y_vertices, | ||
int * | cell_to_vertex, | ||
int * | grid_id ) |
Definition of an unstructured grid
[in] | grid_name | name of the grid |
[in] | nbr_vertices | number of vertices |
[in] | nbr_cells | number of cells |
[in] | num_vertices_per_cell | array containing the number of vertices for each cell |
[in] | x_vertices | array of vertex longitudes, in radians |
[in] | y_vertices | array of vertex latitudes, in radians |
[in] | cell_to_vertex | connectivity of vertices belonging to cells (the vertex indices per cell have to be in clockwise or counterclockwise ordering) |
[out] | grid_id | id of generated grid |
Definition at line 3380 of file yac.c.
void yac_cdef_grid_unstruct_ll | ( | const char * | grid_name, |
int | nbr_vertices, | ||
int | nbr_cells, | ||
int * | num_vertices_per_cell, | ||
double * | x_vertices, | ||
double * | y_vertices, | ||
int * | cell_to_vertex, | ||
int * | grid_id ) |
Definition of an unstructured grid with lon-lat edges
[in] | grid_name | name of the grid |
[in] | nbr_vertices | number of vertices |
[in] | nbr_cells | number of cells |
[in] | num_vertices_per_cell | array containing the number of vertices for each cell |
[in] | x_vertices | array of vertex longitudes, in radians |
[in] | y_vertices | array of vertex latitudes, in radians |
[in] | cell_to_vertex | connectivity of vertices belonging to cells (the vertex indices per cell have to be in clockwise or counterclockwise ordering) |
[out] | grid_id | id of generated grid |
Definition at line 3401 of file yac.c.
void yac_cdef_mask | ( | int const | grid_id, |
int const | nbr_points, | ||
int const | location, | ||
int const * | is_valid, | ||
int * | mask_id ) |
define a mask for a grid
[in] | grid_id | grid ID |
[in] | nbr_points | number of points |
[in] | location | cell/vertex/edge |
[in] | is_valid | 0 for points that are masked out, 1 for valid points |
[out] | mask_id | returned handle to the mask struct |
Definition at line 1093 of file yac.c.
void yac_cdef_mask_named | ( | int const | grid_id, |
int const | nbr_points, | ||
int const | location, | ||
int const * | is_valid, | ||
char const * | name, | ||
int * | mask_id ) |
define a named mask for a grid
[in] | grid_id | grid ID |
[in] | nbr_points | number of points |
[in] | location | cell/vertex/edge |
[in] | is_valid | 0 for points that are masked out, 1 for valid points |
[in] | name | name of the mask |
[out] | mask_id | returned handle to the mask struct |
Definition at line 1074 of file yac.c.
void yac_cdef_points_curve2d | ( | int const | grid_id, |
int const * | nbr_points, | ||
int const | location, | ||
double const * | x_points, | ||
double const * | y_points, | ||
int * | point_id ) |
Definition of a set of points for 2D curvilinear grids.
[in] | grid_id | handle to the grid struct |
[in] | nbr_points | number of points |
[in] | location | location of points |
[in] | x_points | array of point longitudes, in radians |
[in] | y_points | array of point latitudes, in radians |
[out] | point_id | returned handle to the points struct |
Definition at line 990 of file yac.c.
void yac_cdef_points_reg2d | ( | int const | grid_id, |
int const * | nbr_points, | ||
int const | location, | ||
double const * | x_points, | ||
double const * | y_points, | ||
int * | point_id ) |
Definition of a set of points for 2D regular grids.
[in] | grid_id | handle to the grid struct |
[in] | nbr_points | number of points |
[in] | location | location of points |
[in] | x_points | array of point longitudes, in radians |
[in] | y_points | array of point latitudes, in radians |
[out] | point_id | returned handle to the points struct |
Definition at line 954 of file yac.c.
void yac_cdef_points_unstruct | ( | int const | grid_id, |
int const | nbr_points, | ||
int const | location, | ||
double const * | x_points, | ||
double const * | y_points, | ||
int * | point_id ) |
Definition of a set of points for 2D unstructured grids.
[in] | grid_id | handle to the grid struct |
[in] | nbr_points | number of points |
[in] | location | location of points |
[in] | x_points | array of point longitudes, in radians |
[in] | y_points | array of point latitudes, in radians |
[out] | point_id | returned handle to the points struct |
Definition at line 1028 of file yac.c.
void yac_cenable_field_frac_mask | ( | const char * | comp_name, |
const char * | grid_name, | ||
const char * | field_name, | ||
double | frac_mask_fallback_value ) |
Enables fractional masking for a coupling field and sets the fallback value
[in] | comp_name | |
[in] | grid_name | |
[in] | field_name | |
[in] | frac_mask_fallback_value | fractional mask fallback value |
Definition at line 1237 of file yac.c.
void yac_cenable_field_frac_mask_instance | ( | int | yac_instance_id, |
const char * | comp_name, | ||
const char * | grid_name, | ||
const char * | field_name, | ||
double | frac_mask_fallback_value ) |
Enables fractional masking for a coupling field and sets the fallback value
[in] | yac_instance_id | |
[in] | comp_name | |
[in] | grid_name | |
[in] | field_name | |
[in] | frac_mask_fallback_value | fractional mask fallback value |
Definition at line 1225 of file yac.c.
void yac_cenddef | ( | void | ) |
End of the definition phase for the default YAC instance and setup of internal data structures for coupling (communication matrices and interpolation weights)
Definition at line 2953 of file yac.c.
void yac_cenddef_and_emit_config | ( | int | emit_flags, |
char ** | config ) |
End of the definition phase for the default YAC instance, invocation of the search and setup of internal data structures for coupling (communication matrices and interpolation weights). In addition, the collected coupling configuration from all processes is emitted.
[in] | emit_flags | flags for configuring the generated coupling configuration output (YAC_YAML_EMITTER_DEFAULT or YAC_YAML_EMITTER_JSON) |
[out] | config | coupling configuration |
Definition at line 2968 of file yac.c.
void yac_cenddef_and_emit_config_instance | ( | int | yac_instance_id, |
int | emit_flags, | ||
char ** | config ) |
End of the definition phase, invocation of the search and setup of internal data structures for coupling (communication matrices and interpolation weights). In addition, the collected coupling configuration from all processes is emitted.
[in] | yac_instance_id | id of the YAC instance |
[in] | emit_flags | flags for configuring the generated coupling configuration output (YAC_YAML_EMITTER_DEFAULT or YAC_YAML_EMITTER_JSON) |
[out] | config | coupling configuration |
Definition at line 2959 of file yac.c.
void yac_cenddef_instance | ( | int | yac_instance_id | ) |
End of the definition phase, invocation of the search and setup of internal data structures for coupling (communication matrices and interpolation weights)
[in] | yac_instance_id | id of the YAC instance |
Definition at line 2946 of file yac.c.
void yac_cexchange | ( | int const | send_field_id, |
int const | recv_field_id, | ||
int const | collection_size, | ||
double ***const | send_field, | ||
double ** | recv_field, | ||
int * | send_info, | ||
int * | recv_info, | ||
int * | ierror ) |
Exchange of the coupling fields
[in] | send_field_id | - |
[in] | recv_field_id | - |
[in] | collection_size | - |
[in] | send_field | - send buffer dimensions send_field[collection_size] [nbr_fields] [nbr_points] |
[in] | recv_field | - receive buffer dimensions: recv_field[collection_size][nbr_points] |
[out] | send_info | - returned send info |
[out] | recv_info | - returned recv info |
[out] | ierror | - returned error |
Definition at line 2916 of file yac.c.
void yac_cexchange_ | ( | int const | send_field_id, |
int const | recv_field_id, | ||
int const | collection_size, | ||
double * | send_field, | ||
double * | recv_field, | ||
int * | send_info, | ||
int * | recv_info, | ||
int * | ierror ) |
Exchange of the coupling fields
[in] | send_field_id | - |
[in] | recv_field_id | - |
[in] | collection_size | - |
[in] | send_field | - send buffer (all data is stored in one contiguous part of the memory) dimensions send_field[collection_size] [nbr_fields] [nbr_points] |
[in] | recv_field | - receive buffer (all data is stored in one contiguous part of the memory) dimensions: recv_field[collection_size][nbr_points] |
[out] | send_info | - returned send info |
[out] | recv_info | - returned recv info |
[out] | ierror | - returned error |
Definition at line 2639 of file yac.c.
void yac_cexchange_frac | ( | int const | send_field_id, |
int const | recv_field_id, | ||
int const | collection_size, | ||
double ***const | send_field, | ||
double ***const | send_frac_mask, | ||
double ** | recv_field, | ||
int * | send_info, | ||
int * | recv_info, | ||
int * | ierror ) |
Exchange of the coupling fields
[in] | send_field_id | - |
[in] | recv_field_id | - |
[in] | collection_size | - |
[in] | send_field | - send buffer dimensions send_field[collection_size] [nbr_fields] [nbr_points] |
[in] | send_frac_mask | - send fractional mask dimensions send_frac_mask[collection_size] [nbr_fields] [nbr_points] |
[in] | recv_field | - receive buffer dimensions: recv_field[collection_size][nbr_points] |
[out] | send_info | - returned send info |
[out] | recv_info | - returned recv info |
[out] | ierror | - returned error |
Definition at line 2780 of file yac.c.
void yac_cexchange_frac_ | ( | int const | send_field_id, |
int const | recv_field_id, | ||
int const | collection_size, | ||
double * | send_field, | ||
double * | send_frac_mask, | ||
double * | recv_field, | ||
int * | send_info, | ||
int * | recv_info, | ||
int * | ierror ) |
Exchange of the coupling fields
[in] | send_field_id | - |
[in] | recv_field_id | - |
[in] | collection_size | - |
[in] | send_field | - send buffer (all data is stored in one contiguous part of the memory) dimensions send_field[collection_size] [nbr_fields] [nbr_points] |
[in] | send_frac_mask | - send fractional mask (all data is stored in one contiguous part of the memory) dimensions send_frac_mask[collection_size] [nbr_fields] [nbr_points] |
[in] | recv_field | - receive buffer (all data is stored in one contiguous part of the memory) dimensions: recv_field[collection_size][nbr_points] |
[out] | send_info | - returned send info |
[out] | recv_info | - returned recv info |
[out] | ierror | - returned error |
Definition at line 2672 of file yac.c.
void yac_cexchange_frac_ptr_ | ( | int const | send_field_id, |
int const | recv_field_id, | ||
int const | collection_size, | ||
double ** | send_field, | ||
double ** | send_frac_mask, | ||
double ** | recv_field, | ||
int * | send_info, | ||
int * | recv_info, | ||
int * | ierror ) |
Sending of the coupling fields
[in] | send_field_id | - |
[in] | recv_field_id | - |
[in] | collection_size | - |
[in] | send_field | - send buffer dimensions send_field[collection_size * nbr_fields] [nbr_points] |
[in] | send_frac_mask | - send buffer dimensions send_frac_mask[collection_size * nbr_fields] [nbr_points] |
[in] | recv_field | - receive buffer dimensions: recv_field[collection_size][nbr_points] |
[out] | send_info | - returned send info |
[out] | recv_info | - returned recv info |
[out] | ierror | - returned error |
Definition at line 2744 of file yac.c.
void yac_cexchange_ptr_ | ( | int const | send_field_id, |
int const | recv_field_id, | ||
int const | collection_size, | ||
double ** | send_field, |