YetAnotherCoupler 3.5.2
Loading...
Searching...
No Matches
interp_method_ncc.c File Reference
#include "config.h"
#include <string.h>
#include "interp_method_internal.h"
#include "interp_method_ncc.h"
Include dependency graph for interp_method_ncc.c:

Go to the source code of this file.

Data Structures

struct  interp_method_ncc
 

Typedefs

typedef int(* func_compute_weights) (double[3], size_t, yac_const_coordinate_pointer, int *, double *)
 

Functions

static size_t do_search_ncc (struct interp_method *method, struct yac_interp_grid *interp_grid, size_t *tgt_points, size_t count, struct yac_interp_weights *weights)
 
static void delete_ncc (struct interp_method *method)
 
static size_t get_closest_src_corner (struct yac_const_basic_grid_data *grid_data, size_t cell, double const coord[3])
 
static int compute_weights_avg_yes (double tgt_coords[3], size_t num_src, yac_const_coordinate_pointer src_coords, int *src_mask, double *weights)
 
static int compute_weights_avg_no (double tgt_coords[3], size_t num_src, yac_const_coordinate_pointer src_coords, int *src_mask, double *weights)
 
static int compute_weights_dist_yes (double tgt_coords[3], size_t num_src, yac_const_coordinate_pointer src_coords, int *src_mask, double *weights)
 
static int compute_weights_dist_no (double tgt_coords[3], size_t num_src, yac_const_coordinate_pointer src_coords, int *src_mask, double *weights)
 
static func_compute_weights select_compute_weight_routine (enum yac_interp_ncc_weight_type weight_type, int partial_coverage)
 
struct interp_methodyac_interp_method_ncc_new (enum yac_interp_ncc_weight_type weight_type, int partial_coverage)
 

Variables

static struct interp_method_vtable interp_method_ncc_vtable
 

Typedef Documentation

◆ func_compute_weights

typedef int(* func_compute_weights) (double[3], size_t, yac_const_coordinate_pointer, int *, double *)

Definition at line 21 of file interp_method_ncc.c.

Function Documentation

◆ compute_weights_avg_no()

static int compute_weights_avg_no ( double tgt_coords[3],
size_t num_src,
yac_const_coordinate_pointer src_coords,
int * src_mask,
double * weights )
static

Definition at line 289 of file interp_method_ncc.c.

Here is the caller graph for this function:

◆ compute_weights_avg_yes()

static int compute_weights_avg_yes ( double tgt_coords[3],
size_t num_src,
yac_const_coordinate_pointer src_coords,
int * src_mask,
double * weights )
static

Definition at line 263 of file interp_method_ncc.c.

Here is the caller graph for this function:

◆ compute_weights_dist_no()

static int compute_weights_dist_no ( double tgt_coords[3],
size_t num_src,
yac_const_coordinate_pointer src_coords,
int * src_mask,
double * weights )
static

Definition at line 366 of file interp_method_ncc.c.

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

◆ compute_weights_dist_yes()

static int compute_weights_dist_yes ( double tgt_coords[3],
size_t num_src,
yac_const_coordinate_pointer src_coords,
int * src_mask,
double * weights )
static

Definition at line 307 of file interp_method_ncc.c.

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

◆ delete_ncc()

static void delete_ncc ( struct interp_method * method)
static

Definition at line 435 of file interp_method_ncc.c.

◆ do_search_ncc()

static size_t do_search_ncc ( struct interp_method * method,
struct yac_interp_grid * interp_grid,
size_t * tgt_points,
size_t count,
struct yac_interp_weights * weights )
static

Definition at line 70 of file interp_method_ncc.c.

Here is the call graph for this function:

◆ get_closest_src_corner()

static size_t get_closest_src_corner ( struct yac_const_basic_grid_data * grid_data,
size_t cell,
double const coord[3] )
static

Definition at line 37 of file interp_method_ncc.c.

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

◆ select_compute_weight_routine()

static func_compute_weights select_compute_weight_routine ( enum yac_interp_ncc_weight_type weight_type,
int partial_coverage )
static

Definition at line 403 of file interp_method_ncc.c.

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

◆ yac_interp_method_ncc_new()

struct interp_method * yac_interp_method_ncc_new ( enum yac_interp_ncc_weight_type weight_type,
int partial_coverage )
Examples
test_interp_method_ncc_parallel.c.

Definition at line 422 of file interp_method_ncc.c.

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

Variable Documentation

◆ interp_method_ncc_vtable

struct interp_method_vtable interp_method_ncc_vtable
static
Initial value:
= {
.do_search = do_search_ncc,
.delete = delete_ncc}
static void delete_ncc(struct interp_method *method)
static size_t do_search_ncc(struct interp_method *method, struct yac_interp_grid *interp_grid, size_t *tgt_points, size_t count, struct yac_interp_weights *weights)

Definition at line 25 of file interp_method_ncc.c.