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

Go to the source code of this file.

Data Structures

struct  interp_method_nnn
 
struct  interp_method_1nn
 
struct  interp_method_zero
 
struct  yac_interp_method_config_nnn
 Concrete implementation of yac_interp_method_config for the NNN method. More...
 

Functions

static size_t do_search_nnn (struct interp_method *method, struct yac_interp_grid *interp_grid, size_t *tgt_points, size_t count, struct yac_interp_weights *weights, int *interpolation_complete)
 
static size_t do_search_1nn (struct interp_method *method, struct yac_interp_grid *interp_grid, size_t *tgt_points, size_t count, struct yac_interp_weights *weights, int *interpolation_complete)
 
static size_t do_search_zero (struct interp_method *method, struct yac_interp_grid *interp_grid, size_t *tgt_points, size_t count, struct yac_interp_weights *weights, int *interpolation_complete)
 
static void delete_nnn (struct interp_method *method)
 
static void interp_weights_add_zero (struct yac_interp_weights *weights, struct remote_points *tgts, struct remote_point src)
 
struct interp_methodyac_interp_method_nnn_new (struct yac_interp_method_nnn_config config)
 
static void config_nnn_delete (struct yac_interp_method_config *config)
 
static struct yac_interp_method_configconfig_nnn_copy (const struct yac_interp_method_config *config)
 
static int config_nnn_compare (void const *a_, void const *b_)
 
static size_t config_nnn_get_pack_size (struct yac_interp_method_config const *config, MPI_Comm comm)
 
static void config_nnn_pack (struct yac_interp_method_config const *config, void *buffer, int buffer_size, int *position, MPI_Comm comm)
 
static enum yac_interpolation_list config_nnn_get_type ()
 
static enum yac_interpolation_list config_rbf_get_type ()
 
static struct interp_methodconfig_nnn_generate (struct yac_interp_method_config const *config)
 
static struct yac_paramconfig_nnn_get_n_param (struct yac_interp_method_config_nnn *config_nnn, int n_default)
 
static struct yac_paramconfig_nnn_get_max_search_distance_param (struct yac_interp_method_config_nnn *config_nnn, double max_search_distance_default)
 
static struct yac_paramconfig_nnn_get_scale_param (char const *name, double *scale_value, double scale_default)
 
static struct yac_paramconfig_nnn_get_param (struct yac_interp_method_config const *config)
 
static struct yac_paramconfig_rbf_get_param (struct yac_interp_method_config const *config)
 
struct yac_interp_method_configyac_interp_method_config_default_nnn_new (void)
 Creates a nearest-neighbour interpolation method configuration with default parameters.
 
struct yac_interp_method_configyac_interp_method_config_default_rbf_new (void)
 Creates a radial-basis-function interpolation method configuration with default parameters.
 
struct yac_interp_method_configyac_interp_method_config_nnn_unpack (void *buffer, int buffer_size, int *position, MPI_Comm comm)
 Unpacks a nearest-neighbor interpolation method configuration from a buffer.
 

Variables

static struct interp_method_vtable interp_method_nnn_vtable
 
static struct interp_method_vtable interp_method_1nn_vtable
 
static struct interp_method_vtable interp_method_zero_vtable
 
static struct yac_interp_method_config_vtable yac_interp_method_config_vtable_nnn
 
static struct yac_interp_method_config_vtable yac_interp_method_config_vtable_rbf
 

Function Documentation

◆ config_nnn_compare()

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

Definition at line 439 of file interp_method_nnn.c.

◆ config_nnn_copy()

static struct yac_interp_method_config * config_nnn_copy ( const struct yac_interp_method_config * config)
static

Definition at line 428 of file interp_method_nnn.c.

◆ config_nnn_delete()

static void config_nnn_delete ( struct yac_interp_method_config * config)
static

Definition at line 423 of file interp_method_nnn.c.

◆ config_nnn_generate()

static struct interp_method * config_nnn_generate ( struct yac_interp_method_config const * config)
static

Definition at line 539 of file interp_method_nnn.c.

Here is the call graph for this function:

◆ config_nnn_get_max_search_distance_param()

static struct yac_param * config_nnn_get_max_search_distance_param ( struct yac_interp_method_config_nnn * config_nnn,
double max_search_distance_default )
static

Definition at line 563 of file interp_method_nnn.c.

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

◆ config_nnn_get_n_param()

static struct yac_param * config_nnn_get_n_param ( struct yac_interp_method_config_nnn * config_nnn,
int n_default )
static

Definition at line 546 of file interp_method_nnn.c.

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

◆ config_nnn_get_pack_size()

static size_t config_nnn_get_pack_size ( struct yac_interp_method_config const * config,
MPI_Comm comm )
static

Definition at line 470 of file interp_method_nnn.c.

◆ config_nnn_get_param()

static struct yac_param * config_nnn_get_param ( struct yac_interp_method_config const * config)
static

Definition at line 603 of file interp_method_nnn.c.

Here is the call graph for this function:

◆ config_nnn_get_scale_param()

static struct yac_param * config_nnn_get_scale_param ( char const * name,
double * scale_value,
double scale_default )
static

Definition at line 583 of file interp_method_nnn.c.

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

◆ config_nnn_get_type()

static enum yac_interpolation_list config_nnn_get_type ( )
static

Definition at line 531 of file interp_method_nnn.c.

◆ config_nnn_pack()

static void config_nnn_pack ( struct yac_interp_method_config const * config,
void * buffer,
int buffer_size,
int * position,
MPI_Comm comm )
static

Definition at line 484 of file interp_method_nnn.c.

◆ config_rbf_get_param()

static struct yac_param * config_rbf_get_param ( struct yac_interp_method_config const * config)
static

Definition at line 666 of file interp_method_nnn.c.

Here is the call graph for this function:

◆ config_rbf_get_type()

static enum yac_interpolation_list config_rbf_get_type ( )
static

Definition at line 535 of file interp_method_nnn.c.

◆ delete_nnn()

static void delete_nnn ( struct interp_method * method)
static

Definition at line 398 of file interp_method_nnn.c.

◆ do_search_1nn()

static size_t do_search_1nn ( struct interp_method * method,
struct yac_interp_grid * interp_grid,
size_t * tgt_points,
size_t count,
struct yac_interp_weights * weights,
int * interpolation_complete )
static

Definition at line 178 of file interp_method_nnn.c.

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

◆ do_search_nnn()

static size_t do_search_nnn ( struct interp_method * method,
struct yac_interp_grid * interp_grid,
size_t * tgt_points,
size_t count,
struct yac_interp_weights * weights,
int * interpolation_complete )
static

Definition at line 76 of file interp_method_nnn.c.

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

◆ do_search_zero()

static size_t do_search_zero ( struct interp_method * method,
struct yac_interp_grid * interp_grid,
size_t * tgt_points,
size_t count,
struct yac_interp_weights * weights,
int * interpolation_complete )
static

Definition at line 252 of file interp_method_nnn.c.

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

◆ interp_weights_add_zero()

static void interp_weights_add_zero ( struct yac_interp_weights * weights,
struct remote_points * tgts,
struct remote_point src )
static

Definition at line 231 of file interp_method_nnn.c.

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

◆ yac_interp_method_config_default_nnn_new()

struct yac_interp_method_config * yac_interp_method_config_default_nnn_new ( void )

Creates a nearest-neighbour interpolation method configuration with default parameters.

Returns
Pointer to the created yac_interp_method_config structure

Definition at line 727 of file interp_method_nnn.c.

◆ yac_interp_method_config_default_rbf_new()

struct yac_interp_method_config * yac_interp_method_config_default_rbf_new ( void )

Creates a radial-basis-function interpolation method configuration with default parameters.

Returns
Pointer to the created yac_interp_method_config structure

Definition at line 740 of file interp_method_nnn.c.

◆ yac_interp_method_config_nnn_unpack()

struct yac_interp_method_config * yac_interp_method_config_nnn_unpack ( void * buffer,
int buffer_size,
int * position,
MPI_Comm comm )

Unpacks a nearest-neighbor interpolation method configuration from a buffer.

Parameters
[in]bufferBuffer containing the packed configuration data
[in]buffer_sizeSize of the buffer
[in,out]positionCurrent position in the buffer (will be updated)
[in]commMPI communicator for parallel unpacking
Returns
Pointer to the unpacked yac_interp_method_config structure

Definition at line 754 of file interp_method_nnn.c.

◆ yac_interp_method_nnn_new()

struct interp_method * yac_interp_method_nnn_new ( struct yac_interp_method_nnn_config config)

Definition at line 316 of file interp_method_nnn.c.

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

Variable Documentation

◆ interp_method_1nn_vtable

struct interp_method_vtable interp_method_1nn_vtable
static
Initial value:
= {
.do_search = do_search_1nn,
.delete = delete_nnn}
static void delete_nnn(struct interp_method *method)
static size_t do_search_1nn(struct interp_method *method, struct yac_interp_grid *interp_grid, size_t *tgt_points, size_t count, struct yac_interp_weights *weights, int *interpolation_complete)

Definition at line 46 of file interp_method_nnn.c.

◆ interp_method_nnn_vtable

struct interp_method_vtable interp_method_nnn_vtable
static
Initial value:
= {
.do_search = do_search_nnn,
.delete = delete_nnn}
static size_t do_search_nnn(struct interp_method *method, struct yac_interp_grid *interp_grid, size_t *tgt_points, size_t count, struct yac_interp_weights *weights, int *interpolation_complete)

Definition at line 43 of file interp_method_nnn.c.

◆ interp_method_zero_vtable

struct interp_method_vtable interp_method_zero_vtable
static
Initial value:
= {
.do_search = do_search_zero,
.delete = delete_nnn}
static size_t do_search_zero(struct interp_method *method, struct yac_interp_grid *interp_grid, size_t *tgt_points, size_t count, struct yac_interp_weights *weights, int *interpolation_complete)

Definition at line 49 of file interp_method_nnn.c.

◆ yac_interp_method_config_vtable_nnn

struct yac_interp_method_config_vtable yac_interp_method_config_vtable_nnn
static
Initial value:
= {
.delete = config_nnn_delete,
.copy = config_nnn_copy,
.compare = config_nnn_compare,
.get_pack_size = config_nnn_get_pack_size,
.pack = config_nnn_pack,
.get_type = config_nnn_get_type,
.generate = config_nnn_generate,
.get_param = config_nnn_get_param
}
static void config_nnn_delete(struct yac_interp_method_config *config)
static struct yac_param * config_nnn_get_param(struct yac_interp_method_config const *config)
static struct yac_interp_method_config * config_nnn_copy(const struct yac_interp_method_config *config)
static enum yac_interpolation_list config_nnn_get_type()
static struct interp_method * config_nnn_generate(struct yac_interp_method_config const *config)
static void config_nnn_pack(struct yac_interp_method_config const *config, void *buffer, int buffer_size, int *position, MPI_Comm comm)
static int config_nnn_compare(void const *a_, void const *b_)
static size_t config_nnn_get_pack_size(struct yac_interp_method_config const *config, MPI_Comm comm)

Definition at line 655 of file interp_method_nnn.c.

◆ yac_interp_method_config_vtable_rbf

struct yac_interp_method_config_vtable yac_interp_method_config_vtable_rbf
static
Initial value:
= {
.delete = config_nnn_delete,
.copy = config_nnn_copy,
.compare = config_nnn_compare,
.get_pack_size = config_nnn_get_pack_size,
.pack = config_nnn_pack,
.get_type = config_rbf_get_type,
.generate = config_nnn_generate,
.get_param = config_rbf_get_param
}
static enum yac_interpolation_list config_rbf_get_type()
static struct yac_param * config_rbf_get_param(struct yac_interp_method_config const *config)

Definition at line 716 of file interp_method_nnn.c.