YAC 3.20.0
Yet Another Coupler
Loading...
Searching...
No Matches
interp_stack_config.c File Reference
Include dependency graph for interp_stack_config.c:

Go to the source code of this file.

Data Structures

struct  yac_spmap_ext_cache_entry
 
union  yac_interp_stack_config_entry
 
struct  yac_interp_stack_config
 

Functions

static void free_spmap_ext_cache_entry (struct yac_spmap_ext_cache_entry *entry)
 
struct yac_interp_stack_configyac_interp_stack_config_copy (struct yac_interp_stack_config *interp_stack)
 Create a deep copy of an interpolation stack configuration.
 
int yac_interp_stack_config_compare (void const *a_, void const *b_)
 Compare two interpolation stack configurations.
 
struct interp_method ** yac_interp_stack_config_generate (struct yac_interp_stack_config *interp_stack)
 Generate a NULL-terminated array of interpolation methods from the stack configuration.
 
size_t yac_interp_stack_config_get_pack_size (struct yac_interp_stack_config *interp_stack, MPI_Comm comm)
 Get the size required to pack the stack configuration for MPI.
 
void yac_interp_stack_config_pack (struct yac_interp_stack_config *interp_stack, void *buffer, int buffer_size, int *position, MPI_Comm comm)
 Pack the stack configuration into a buffer for MPI communication.
 
struct yac_interp_stack_configyac_interp_stack_config_unpack (void *buffer, int buffer_size, int *position, MPI_Comm comm)
 Unpack a stack configuration from a buffer (MPI communication).
 
struct yac_interp_stack_configyac_interp_stack_config_new ()
 Allocate a new empty interpolation stack configuration object.
 
void yac_interp_stack_config_delete (struct yac_interp_stack_config *interp_stack_config)
 Free an interpolation stack configuration object.
 
void yac_interp_stack_config_add (struct yac_interp_stack_config *interp_stack_config, struct yac_interp_method_config *method_config)
 Add an interpolation method configuration to the end of the stack.
 
static struct yac_paramget_method_param (struct yac_interp_method_config *method_config, char const *routine)
 
static struct yac_paramget_sub_param (struct yac_param *param, char const *name, char const *routine)
 
static struct yac_paramget_sub_param_by_index (struct yac_param *param, size_t idx, char const *name, char const *routine)
 
static size_t get_sub_count (struct yac_param *param, char const *name, char const *routine)
 
static int get_param_int (struct yac_param *param, char const *name, char const *routine)
 
static double get_param_dble (struct yac_param *param, char const *name, char const *routine)
 
static char * get_param_str_dup (struct yac_param *param, char const *name, char const *routine)
 
static struct yac_spmap_cell_area_configmake_spmap_cell_area_config (struct yac_param *cell_area_oneof_param, char const *name, char const *routine)
 
static struct yac_spmap_ext_cache_entryyac_spmap_ext_cache_entry_new (struct yac_param *root_param, char const *routine)
 
static struct yac_spmap_ext_cache_entryget_spmap_ext_cache_entry (union yac_interp_stack_config_entry *interp_stack_entry, struct yac_param *root_param, char const *routine)
 
static struct yac_interp_method_configget_entry_method_config (union yac_interp_stack_config_entry const *interp_stack_entry)
 
static struct yac_paramget_entry_param (union yac_interp_stack_config_entry const *interp_stack_entry, char const *routine)
 
static void set_sub_param_int (struct yac_param *param, char const *name, int value, char const *routine)
 
static void set_sub_param_dble (struct yac_param *param, char const *name, double value, char const *routine)
 
static void set_sub_param_str (struct yac_param *param, char const *name, char const *value, char const *routine)
 
void yac_interp_stack_config_add_average (struct yac_interp_stack_config *interp_stack_config, enum yac_interp_avg_weight_type reduction_type, int partial_coverage)
 
void yac_interp_stack_config_add_average_f2c (struct yac_interp_stack_config *interp_stack_config, int reduction_type, int partial_coverage)
 
void yac_interp_stack_config_add_ncc (struct yac_interp_stack_config *interp_stack_config, enum yac_interp_ncc_weight_type weight_type, int partial_coverage)
 
void yac_interp_stack_config_add_ncc_f2c (struct yac_interp_stack_config *interp_stack_config, int weight_type, int partial_coverage)
 
void yac_interp_stack_config_add_dnn (struct yac_interp_stack_config *interp_stack_config, enum yac_interp_dnn_weight_type type, enum yac_interp_dnn_search_distance_type search_distance_type, double search_distance, double scale)
 
void yac_interp_stack_config_add_dnn_f2c (struct yac_interp_stack_config *interp_stack_config, int type, int search_distance_type, double search_distance, double scale)
 
void yac_interp_stack_config_add_nnn (struct yac_interp_stack_config *interp_stack_config, enum yac_interp_nnn_weight_type type, size_t n, double max_search_distance, double scale)
 
void yac_interp_stack_config_add_rbf (struct yac_interp_stack_config *interp_stack_config, size_t n, double max_search_distance, double scale)
 
void yac_interp_stack_config_add_nnn_f2c (struct yac_interp_stack_config *interp_stack_config, int type, size_t n, double max_search_distance, double scale)
 
void yac_interp_stack_config_add_conservative (struct yac_interp_stack_config *interp_stack_config, int order, int enforced_conserv, int partial_coverage, enum yac_interp_method_conserv_normalisation normalisation)
 
void yac_interp_stack_config_add_conservative_f2c (struct yac_interp_stack_config *interp_stack_config, int order, int enforced_conserv, int partial_coverage, int normalisation)
 
static struct yac_spmap_cell_area_configgenerate_spmap_cell_area_config (double sphere_radius, char const *filename, char const *varname, int min_global_id, char const *type)
 
static void set_spmap_cell_area_param (struct yac_param *cell_area_param, struct yac_spmap_cell_area_config const *cell_area_config, char const *name, char const *routine)
 
static void set_spmap_config_param (struct yac_param *param, struct yac_interp_spmap_config const *config, int include_scale, char const *routine)
 
void yac_interp_stack_config_add_spmap_ext (struct yac_interp_stack_config *interp_stack_config, struct yac_interp_spmap_config *default_config, struct yac_spmap_overwrite_config **overwrite_configs)
 
void yac_interp_stack_config_add_spmap (struct yac_interp_stack_config *interp_stack_config, double spread_distance, double max_search_distance, enum yac_interp_spmap_weight_type weight_type, enum yac_interp_spmap_scale_type scale_type, double src_sphere_radius, char const *src_filename, char const *src_varname, int src_min_global_id, double tgt_sphere_radius, char const *tgt_filename, char const *tgt_varname, int tgt_min_global_id)
 
void yac_interp_stack_config_add_spmap_f2c (struct yac_interp_stack_config *interp_stack_config, double spread_distance, double max_search_distance, int weight_type, int scale_type, double src_sphere_radius, char const *src_filename, char const *src_varname, int src_min_global_id, double tgt_sphere_radius, char const *tgt_filename, char const *tgt_varname, int tgt_min_global_id)
 
void yac_interp_stack_config_add_hcsbb (struct yac_interp_stack_config *interp_stack_config)
 
static void check_string (char const *string, char const *file, int line, char const *routine, char const *variable)
 
void yac_interp_stack_config_add_user_file (struct yac_interp_stack_config *interp_stack_config, char const *filename, enum yac_interp_file_on_missing_file on_missing_file, enum yac_interp_file_on_success on_success)
 
void yac_interp_stack_config_add_user_file_f2c (struct yac_interp_stack_config *interp_stack_config, char const *filename, int on_missing_file, int on_success)
 
void yac_interp_stack_config_add_fixed (struct yac_interp_stack_config *interp_stack_config, double value)
 
void yac_interp_stack_config_add_check (struct yac_interp_stack_config *interp_stack_config, char const *constructor_key, char const *do_search_key)
 
void yac_interp_stack_config_add_creep (struct yac_interp_stack_config *interp_stack_config, int creep_distance)
 
void yac_interp_stack_config_add_user_callback (struct yac_interp_stack_config *interp_stack_config, char const *func_compute_weights_key)
 
size_t yac_interp_stack_config_get_size (struct yac_interp_stack_config *interp_stack)
 Get the number of interpolation methods in the stack.
 
struct yac_interp_method_config const * yac_interp_stack_config_get (struct yac_interp_stack_config *interp_stack, size_t interp_stack_idx)
 Get a method configuration from the stack by index.
 
union yac_interp_stack_config_entry const * yac_interp_stack_config_get_entry (struct yac_interp_stack_config *interp_stack, size_t interp_stack_idx)
 
enum yac_interpolation_list yac_interp_stack_config_entry_get_type (union yac_interp_stack_config_entry const *interp_stack_entry)
 
void yac_interp_stack_config_entry_get_average (union yac_interp_stack_config_entry const *interp_stack_entry, enum yac_interp_avg_weight_type *reduction_type, int *partial_coverage)
 
void yac_interp_stack_config_entry_get_ncc (union yac_interp_stack_config_entry const *interp_stack_entry, enum yac_interp_ncc_weight_type *type, int *partial_coverage)
 
void yac_interp_stack_config_entry_get_dnn (union yac_interp_stack_config_entry const *interp_stack_entry, enum yac_interp_dnn_weight_type *type, enum yac_interp_dnn_search_distance_type *search_distance_type, double *search_distance, double *scale)
 
void yac_interp_stack_config_entry_get_nnn (union yac_interp_stack_config_entry const *interp_stack_entry, enum yac_interp_nnn_weight_type *type, size_t *n, double *max_search_distance, double *scale)
 
void yac_interp_stack_config_entry_get_rbf (union yac_interp_stack_config_entry const *interp_stack_entry, size_t *n, double *max_search_distance, double *scale)
 
void yac_interp_stack_config_entry_get_conservative (union yac_interp_stack_config_entry const *interp_stack_entry, int *order, int *enforced_conserv, int *partial_coverage, enum yac_interp_method_conserv_normalisation *normalisation)
 
void yac_interp_stack_config_entry_get_spmap_ext (union yac_interp_stack_config_entry const *interp_stack_entry, struct yac_interp_spmap_config const **default_config, struct yac_spmap_overwrite_config const ***overwrite_configs)
 
static void yac_interp_stack_config_entry_get_spmap_cell_area_config (struct yac_param *cell_area_oneof_param, char const *routine, char const *name, double *sphere_radius, char const **filename, char const **varname, int *min_global_id)
 
void yac_interp_stack_config_entry_get_spmap (union yac_interp_stack_config_entry const *interp_stack_entry, double *spread_distance, double *max_search_distance, enum yac_interp_spmap_weight_type *weight_type, enum yac_interp_spmap_scale_type *scale_type, double *src_sphere_radius, char const **src_filename, char const **src_varname, int *src_min_global_id, double *tgt_sphere_radius, char const **tgt_filename, char const **tgt_varname, int *tgt_min_global_id)
 
void yac_interp_stack_config_entry_get_user_file (union yac_interp_stack_config_entry const *interp_stack_entry, char const **filename, enum yac_interp_file_on_missing_file *on_missing_file, enum yac_interp_file_on_success *on_success)
 
void yac_interp_stack_config_entry_get_fixed (union yac_interp_stack_config_entry const *interp_stack_entry, double *value)
 
void yac_interp_stack_config_entry_get_check (union yac_interp_stack_config_entry const *interp_stack_entry, char const **constructor_key, char const **do_search_key)
 
void yac_interp_stack_config_entry_get_creep (union yac_interp_stack_config_entry const *interp_stack_entry, int *creep_distance)
 
void yac_interp_stack_config_entry_get_user_callback (union yac_interp_stack_config_entry const *interp_stack_entry, char const **func_compute_weights_key)
 

Function Documentation

◆ check_string()

static void check_string ( char const * string,
char const * file,
int line,
char const * routine,
char const * variable )
static

Definition at line 959 of file interp_stack_config.c.

Here is the caller graph for this function:

◆ free_spmap_ext_cache_entry()

static void free_spmap_ext_cache_entry ( struct yac_spmap_ext_cache_entry * entry)
static

Definition at line 52 of file interp_stack_config.c.

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

◆ generate_spmap_cell_area_config()

static struct yac_spmap_cell_area_config * generate_spmap_cell_area_config ( double sphere_radius,
char const * filename,
char const * varname,
int min_global_id,
char const * type )
static

Definition at line 733 of file interp_stack_config.c.

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

◆ get_entry_method_config()

static struct yac_interp_method_config * get_entry_method_config ( union yac_interp_stack_config_entry const * interp_stack_entry)
static

Definition at line 463 of file interp_stack_config.c.

Here is the caller graph for this function:

◆ get_entry_param()

static struct yac_param * get_entry_param ( union yac_interp_stack_config_entry const * interp_stack_entry,
char const * routine )
static

Definition at line 469 of file interp_stack_config.c.

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

◆ get_method_param()

static struct yac_param * get_method_param ( struct yac_interp_method_config * method_config,
char const * routine )
static

Definition at line 205 of file interp_stack_config.c.

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

◆ get_param_dble()

static double get_param_dble ( struct yac_param * param,
char const * name,
char const * routine )
static

Definition at line 263 of file interp_stack_config.c.

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

◆ get_param_int()

static int get_param_int ( struct yac_param * param,
char const * name,
char const * routine )
static

Definition at line 251 of file interp_stack_config.c.

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

◆ get_param_str_dup()

static char * get_param_str_dup ( struct yac_param * param,
char const * name,
char const * routine )
static

Definition at line 275 of file interp_stack_config.c.

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

◆ get_spmap_ext_cache_entry()

static struct yac_spmap_ext_cache_entry * get_spmap_ext_cache_entry ( union yac_interp_stack_config_entry * interp_stack_entry,
struct yac_param * root_param,
char const * routine )
static

Definition at line 450 of file interp_stack_config.c.

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

◆ get_sub_count()

static size_t get_sub_count ( struct yac_param * param,
char const * name,
char const * routine )
static

Definition at line 240 of file interp_stack_config.c.

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

◆ get_sub_param()

static struct yac_param * get_sub_param ( struct yac_param * param,
char const * name,
char const * routine )
static

Definition at line 215 of file interp_stack_config.c.

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

◆ get_sub_param_by_index()

static struct yac_param * get_sub_param_by_index ( struct yac_param * param,
size_t idx,
char const * name,
char const * routine )
static

Definition at line 227 of file interp_stack_config.c.

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

◆ make_spmap_cell_area_config()

static struct yac_spmap_cell_area_config * make_spmap_cell_area_config ( struct yac_param * cell_area_oneof_param,
char const * name,
char const * routine )
static

Definition at line 287 of file interp_stack_config.c.

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

◆ set_spmap_cell_area_param()

static void set_spmap_cell_area_param ( struct yac_param * cell_area_param,
struct yac_spmap_cell_area_config const * cell_area_config,
char const * name,
char const * routine )
static

Definition at line 755 of file interp_stack_config.c.

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

◆ set_spmap_config_param()

static void set_spmap_config_param ( struct yac_param * param,
struct yac_interp_spmap_config const * config,
int include_scale,
char const * routine )
static

Definition at line 791 of file interp_stack_config.c.

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

◆ set_sub_param_dble()

static void set_sub_param_dble ( struct yac_param * param,
char const * name,
double value,
char const * routine )
static

Definition at line 487 of file interp_stack_config.c.

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

◆ set_sub_param_int()

static void set_sub_param_int ( struct yac_param * param,
char const * name,
int value,
char const * routine )
static

Definition at line 476 of file interp_stack_config.c.

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

◆ set_sub_param_str()

static void set_sub_param_str ( struct yac_param * param,
char const * name,
char const * value,
char const * routine )
static

Definition at line 498 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_add()

void yac_interp_stack_config_add ( struct yac_interp_stack_config * interp_stack_config,
struct yac_interp_method_config * method_config )

Add an interpolation method configuration to the end of the stack.

Parameters
[in,out]interp_stack_configPointer to the stack configuration.
[in]method_configPointer to the method configuration to add.

Definition at line 191 of file interp_stack_config.c.

Here is the caller graph for this function:

◆ yac_interp_stack_config_add_average()

void yac_interp_stack_config_add_average ( struct yac_interp_stack_config * interp_stack_config,
enum yac_interp_avg_weight_type reduction_type,
int partial_coverage )

Definition at line 509 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_add_average_f2c()

void yac_interp_stack_config_add_average_f2c ( struct yac_interp_stack_config * interp_stack_config,
int reduction_type,
int partial_coverage )

Definition at line 524 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_add_check()

void yac_interp_stack_config_add_check ( struct yac_interp_stack_config * interp_stack_config,
char const * constructor_key,
char const * do_search_key )

Definition at line 1028 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_add_conservative()

void yac_interp_stack_config_add_conservative ( struct yac_interp_stack_config * interp_stack_config,
int order,
int enforced_conserv,
int partial_coverage,
enum yac_interp_method_conserv_normalisation normalisation )

Definition at line 691 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_add_conservative_f2c()

void yac_interp_stack_config_add_conservative_f2c ( struct yac_interp_stack_config * interp_stack_config,
int order,
int enforced_conserv,
int partial_coverage,
int normalisation )

Definition at line 717 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_add_creep()

void yac_interp_stack_config_add_creep ( struct yac_interp_stack_config * interp_stack_config,
int creep_distance )

Definition at line 1054 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_add_dnn()

void yac_interp_stack_config_add_dnn ( struct yac_interp_stack_config * interp_stack_config,
enum yac_interp_dnn_weight_type type,
enum yac_interp_dnn_search_distance_type search_distance_type,
double search_distance,
double scale )

Definition at line 570 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_add_dnn_f2c()

void yac_interp_stack_config_add_dnn_f2c ( struct yac_interp_stack_config * interp_stack_config,
int type,
int search_distance_type,
double search_distance,
double scale )

Definition at line 614 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_add_fixed()

void yac_interp_stack_config_add_fixed ( struct yac_interp_stack_config * interp_stack_config,
double value )

Definition at line 1016 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_add_hcsbb()

void yac_interp_stack_config_add_hcsbb ( struct yac_interp_stack_config * interp_stack_config)

Definition at line 950 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_add_ncc()

void yac_interp_stack_config_add_ncc ( struct yac_interp_stack_config * interp_stack_config,
enum yac_interp_ncc_weight_type weight_type,
int partial_coverage )

Definition at line 540 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_add_ncc_f2c()

void yac_interp_stack_config_add_ncc_f2c ( struct yac_interp_stack_config * interp_stack_config,
int weight_type,
int partial_coverage )

Definition at line 555 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_add_nnn()

void yac_interp_stack_config_add_nnn ( struct yac_interp_stack_config * interp_stack_config,
enum yac_interp_nnn_weight_type type,
size_t n,
double max_search_distance,
double scale )

Definition at line 639 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_add_nnn_f2c()

void yac_interp_stack_config_add_nnn_f2c ( struct yac_interp_stack_config * interp_stack_config,
int type,
size_t n,
double max_search_distance,
double scale )

Definition at line 673 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_add_rbf()

void yac_interp_stack_config_add_rbf ( struct yac_interp_stack_config * interp_stack_config,
size_t n,
double max_search_distance,
double scale )

Definition at line 666 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_add_spmap()

void yac_interp_stack_config_add_spmap ( struct yac_interp_stack_config * interp_stack_config,
double spread_distance,
double max_search_distance,
enum yac_interp_spmap_weight_type weight_type,
enum yac_interp_spmap_scale_type scale_type,
double src_sphere_radius,
char const * src_filename,
char const * src_varname,
int src_min_global_id,
double tgt_sphere_radius,
char const * tgt_filename,
char const * tgt_varname,
int tgt_min_global_id )

Definition at line 879 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_add_spmap_ext()

void yac_interp_stack_config_add_spmap_ext ( struct yac_interp_stack_config * interp_stack_config,
struct yac_interp_spmap_config * default_config,
struct yac_spmap_overwrite_config ** overwrite_configs )

Definition at line 824 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_add_spmap_f2c()

void yac_interp_stack_config_add_spmap_f2c ( struct yac_interp_stack_config * interp_stack_config,
double spread_distance,
double max_search_distance,
int weight_type,
int scale_type,
double src_sphere_radius,
char const * src_filename,
char const * src_varname,
int src_min_global_id,
double tgt_sphere_radius,
char const * tgt_filename,
char const * tgt_varname,
int tgt_min_global_id )

Definition at line 915 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_add_user_callback()

void yac_interp_stack_config_add_user_callback ( struct yac_interp_stack_config * interp_stack_config,
char const * func_compute_weights_key )

Definition at line 1066 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_add_user_file()

void yac_interp_stack_config_add_user_file ( struct yac_interp_stack_config * interp_stack_config,
char const * filename,
enum yac_interp_file_on_missing_file on_missing_file,
enum yac_interp_file_on_success on_success )

Definition at line 971 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_add_user_file_f2c()

void yac_interp_stack_config_add_user_file_f2c ( struct yac_interp_stack_config * interp_stack_config,
char const * filename,
int on_missing_file,
int on_success )

Definition at line 994 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_compare()

int yac_interp_stack_config_compare ( void const * a,
void const * b )

Compare two interpolation stack configurations.

Parameters
[in]aPointer to the first object.
[in]bPointer to the second object.
Returns
0 if equal, -1 if a < b, 1 if a > b.

Definition at line 79 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_copy()

struct yac_interp_stack_config * yac_interp_stack_config_copy ( struct yac_interp_stack_config * interp_stack)

Create a deep copy of an interpolation stack configuration.

Parameters
[in]interp_stackPointer to the object to copy.
Returns
Pointer to the copied object.

Definition at line 63 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_delete()

void yac_interp_stack_config_delete ( struct yac_interp_stack_config * interp_stack_config)

Free an interpolation stack configuration object.

Parameters
[in,out]interp_stack_configPointer to the object to delete.

Definition at line 179 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_entry_get_average()

void yac_interp_stack_config_entry_get_average ( union yac_interp_stack_config_entry const * interp_stack_entry,
enum yac_interp_avg_weight_type * reduction_type,
int * partial_coverage )

Definition at line 1119 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_entry_get_check()

void yac_interp_stack_config_entry_get_check ( union yac_interp_stack_config_entry const * interp_stack_entry,
char const ** constructor_key,
char const ** do_search_key )

Definition at line 1520 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_entry_get_conservative()

void yac_interp_stack_config_entry_get_conservative ( union yac_interp_stack_config_entry const * interp_stack_entry,
int * order,
int * enforced_conserv,
int * partial_coverage,
enum yac_interp_method_conserv_normalisation * normalisation )

Definition at line 1309 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_entry_get_creep()

void yac_interp_stack_config_entry_get_creep ( union yac_interp_stack_config_entry const * interp_stack_entry,
int * creep_distance )

Definition at line 1545 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_entry_get_dnn()

void yac_interp_stack_config_entry_get_dnn ( union yac_interp_stack_config_entry const * interp_stack_entry,
enum yac_interp_dnn_weight_type * type,
enum yac_interp_dnn_search_distance_type * search_distance_type,
double * search_distance,
double * scale )

Definition at line 1168 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_entry_get_fixed()

void yac_interp_stack_config_entry_get_fixed ( union yac_interp_stack_config_entry const * interp_stack_entry,
double * value )

Definition at line 1500 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_entry_get_ncc()

void yac_interp_stack_config_entry_get_ncc ( union yac_interp_stack_config_entry const * interp_stack_entry,
enum yac_interp_ncc_weight_type * type,
int * partial_coverage )

Definition at line 1144 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_entry_get_nnn()

void yac_interp_stack_config_entry_get_nnn ( union yac_interp_stack_config_entry const * interp_stack_entry,
enum yac_interp_nnn_weight_type * type,
size_t * n,
double * max_search_distance,
double * scale )

Definition at line 1239 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_entry_get_rbf()

void yac_interp_stack_config_entry_get_rbf ( union yac_interp_stack_config_entry const * interp_stack_entry,
size_t * n,
double * max_search_distance,
double * scale )

Definition at line 1282 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_entry_get_spmap()

void yac_interp_stack_config_entry_get_spmap ( union yac_interp_stack_config_entry const * interp_stack_entry,
double * spread_distance,
double * max_search_distance,
enum yac_interp_spmap_weight_type * weight_type,
enum yac_interp_spmap_scale_type * scale_type,
double * src_sphere_radius,
char const ** src_filename,
char const ** src_varname,
int * src_min_global_id,
double * tgt_sphere_radius,
char const ** tgt_filename,
char const ** tgt_varname,
int * tgt_min_global_id )

Definition at line 1414 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_entry_get_spmap_cell_area_config()

static void yac_interp_stack_config_entry_get_spmap_cell_area_config ( struct yac_param * cell_area_oneof_param,
char const * routine,
char const * name,
double * sphere_radius,
char const ** filename,
char const ** varname,
int * min_global_id )
static

Definition at line 1381 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_entry_get_spmap_ext()

void yac_interp_stack_config_entry_get_spmap_ext ( union yac_interp_stack_config_entry const * interp_stack_entry,
struct yac_interp_spmap_config const ** default_config,
struct yac_spmap_overwrite_config const *** overwrite_configs )

Definition at line 1342 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_entry_get_type()

enum yac_interpolation_list yac_interp_stack_config_entry_get_type ( union yac_interp_stack_config_entry const * interp_stack_entry)

Definition at line 1111 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_entry_get_user_callback()

void yac_interp_stack_config_entry_get_user_callback ( union yac_interp_stack_config_entry const * interp_stack_entry,
char const ** func_compute_weights_key )

Definition at line 1566 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_entry_get_user_file()

void yac_interp_stack_config_entry_get_user_file ( union yac_interp_stack_config_entry const * interp_stack_entry,
char const ** filename,
enum yac_interp_file_on_missing_file * on_missing_file,
enum yac_interp_file_on_success * on_success )

Definition at line 1470 of file interp_stack_config.c.

Here is the call graph for this function:

◆ yac_interp_stack_config_generate()

struct interp_method ** yac_interp_stack_config_generate ( struct yac_interp_stack_config * interp_stack)

Generate a NULL-terminated array of interpolation methods from the stack configuration.

Parameters
[in]interp_stackPointer to the stack configuration.
Returns
Array of interp_method pointers.

Definition at line 98 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_get()

struct yac_interp_method_config const * yac_interp_stack_config_get ( struct yac_interp_stack_config * interp_stack,
size_t interp_stack_idx )

Get a method configuration from the stack by index.

Parameters
[in]interp_stackPointer to the stack configuration.
[in]interp_stack_idxIndex of the method configuration.
Returns
Pointer to the method configuration (const).

Definition at line 1090 of file interp_stack_config.c.

Here is the caller graph for this function:

◆ yac_interp_stack_config_get_entry()

union yac_interp_stack_config_entry const * yac_interp_stack_config_get_entry ( struct yac_interp_stack_config * interp_stack,
size_t interp_stack_idx )

Definition at line 1101 of file interp_stack_config.c.

◆ yac_interp_stack_config_get_pack_size()

size_t yac_interp_stack_config_get_pack_size ( struct yac_interp_stack_config * interp_stack,
MPI_Comm comm )

Get the size required to pack the stack configuration for MPI.

Parameters
[in]interp_stackPointer to the stack configuration.
[in]commMPI communicator.
Returns
Size in bytes.

Definition at line 113 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_get_size()

size_t yac_interp_stack_config_get_size ( struct yac_interp_stack_config * interp_stack)

Get the number of interpolation methods in the stack.

Parameters
[in]interp_stackPointer to the stack configuration.
Returns
Number of methods in the stack.

Definition at line 1084 of file interp_stack_config.c.

Here is the caller graph for this function:

◆ yac_interp_stack_config_new()

struct yac_interp_stack_config * yac_interp_stack_config_new ( )

Allocate a new empty interpolation stack configuration object.

Returns
Pointer to a new yac_interp_stack_config object.

Definition at line 169 of file interp_stack_config.c.

Here is the caller graph for this function:

◆ yac_interp_stack_config_pack()

void yac_interp_stack_config_pack ( struct yac_interp_stack_config * interp_stack,
void * buffer,
int buffer_size,
int * position,
MPI_Comm comm )

Pack the stack configuration into a buffer for MPI communication.

Parameters
[in]interp_stackPointer to the stack configuration.
[in,out]bufferBuffer to pack into.
[in]buffer_sizeSize of the buffer.
[in,out]positionPosition in the buffer (updated).
[in]commMPI communicator.

Definition at line 128 of file interp_stack_config.c.

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

◆ yac_interp_stack_config_unpack()

struct yac_interp_stack_config * yac_interp_stack_config_unpack ( void * buffer,
int buffer_size,
int * position,
MPI_Comm comm )

Unpack a stack configuration from a buffer (MPI communication).

Parameters
[in]bufferBuffer to unpack from.
[in]buffer_sizeSize of the buffer.
[in,out]positionPosition in the buffer (updated).
[in]commMPI communicator.
Returns
Pointer to the unpacked stack configuration.

Definition at line 144 of file interp_stack_config.c.

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

◆ yac_spmap_ext_cache_entry_new()

static struct yac_spmap_ext_cache_entry * yac_spmap_ext_cache_entry_new ( struct yac_param * root_param,
char const * routine )
static

Definition at line 349 of file interp_stack_config.c.

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