YetAnotherCoupler 3.2.0_a
Loading...
Searching...
No Matches
interp_grid_internal.h
Go to the documentation of this file.
1// Copyright (c) 2024 The YAC Authors
2//
3// SPDX-License-Identifier: BSD-3-Clause
4
5#ifndef INTERP_GRID_INTERNAL_H
6#define INTERP_GRID_INTERNAL_H
7
8#include "interp_grid.h"
10
22 struct yac_interp_grid * interp_grid, size_t src_field_idx,
23 size_t ** src_indices, size_t * count);
24
35 struct yac_interp_grid * interp_grid, size_t ** tgt_indices, size_t * count);
36
49 struct yac_interp_grid * interp_grid, size_t src_field_idx,
50 size_t * src_points, size_t count);
51
64 struct yac_interp_grid * interp_grid, enum yac_location location,
65 size_t * src_points, size_t count);
66
78 struct yac_interp_grid * interp_grid, size_t * tgt_points, size_t count);
79
94 struct yac_interp_grid * interp_grid, size_t src_field_idx,
95 yac_int * src_global_ids, size_t count, size_t * src_local_ids);
96
110 struct yac_interp_grid * interp_grid, yac_int * tgt_global_ids,
111 size_t count, size_t * tgt_local_ids);
112
119 struct yac_interp_grid * interp_grid);
120
132 struct yac_interp_grid * interp_grid, size_t * src_points, size_t count,
133 size_t src_field_idx, yac_int * src_global_ids);
134
145 struct yac_interp_grid * interp_grid, size_t * tgt_points, size_t count,
146 yac_int * tgt_global_ids);
147
162 struct yac_interp_grid * interp_grid, size_t * src_points, size_t count,
163 size_t src_field_idx, yac_coordinate_pointer src_coordinates);
164
178 struct yac_interp_grid * interp_grid, size_t * tgt_points, size_t count,
179 yac_coordinate_pointer tgt_coordinates);
180
186size_t yac_interp_grid_get_num_src_fields(struct yac_interp_grid * interp_grid);
187
195 struct yac_interp_grid * interp_grid, size_t src_field_idx);
196
205 struct yac_interp_grid * interp_grid, size_t src_field_idx);
206
220 struct yac_interp_grid * interp_grid, size_t src_field_idx);
221
234 struct yac_interp_grid * interp_grid);
235
246 struct yac_interp_grid * interp_grid, size_t src_field_idx);
247
258 struct yac_interp_grid * interp_grid, yac_coordinate_pointer search_coords,
259 size_t count, size_t * src_cells);
260
272 struct yac_interp_grid * interp_grid, yac_coordinate_pointer search_coords,
273 size_t count, size_t * src_cells);
274
284 struct yac_interp_grid * interp_grid, yac_coordinate_pointer search_coords,
285 size_t count, size_t n, size_t * src_points);
286
296 struct yac_interp_grid * interp_grid, yac_coordinate_pointer search_coords,
297 size_t count, size_t n, size_t * tgt_points);
298
310 struct yac_interp_grid * interp_grid,
312 size_t count, size_t src_field_idx, size_t ** src_cells,
313 size_t * num_src_per_bnd_circle);
314
325 struct yac_interp_grid * interp_grid,
327 size_t count, size_t ** tgt_cells, size_t * num_tgt_per_bnd_circle);
328
338 struct yac_interp_grid * interp_grid, size_t * tgt_cells, size_t count,
339 size_t ** src_cells, size_t * num_src_per_tgt);
340
350 struct yac_interp_grid * interp_grid, size_t * src_cells, size_t count,
351 size_t ** tgt_cells, size_t * num_tgt_per_src);
352
358MPI_Comm yac_interp_grid_get_MPI_Comm(struct yac_interp_grid * interp_grid);
359
368 struct yac_interp_grid * interp_grid);
369
378 struct yac_interp_grid * interp_grid);
379
398 struct yac_interp_grid * interp_grid, size_t * src_cells, size_t count,
399 size_t * neighbours);
400
419 struct yac_interp_grid * interp_grid, size_t * tgt_cells, size_t count,
420 size_t * neighbours);
421
438 struct yac_interp_grid * interp_grid,
439 size_t * src_corners, size_t count, size_t ** src_cells,
440 size_t * num_cells_per_corner);
441
459 struct yac_interp_grid * interp_grid,
460 size_t * tgt_corners, size_t count, size_t ** tgt_cells,
461 size_t * num_cells_per_corner);
462
485 struct yac_interp_grid * interp_grid, size_t * cells, size_t count,
486 size_t ** vertex_to_cell, size_t ** vertex_to_cell_offsets,
487 int ** num_cells_per_vertex);
488
506 struct yac_interp_grid * interp_grid, int to_tgt_owner,
507 size_t src_field_idx, size_t ** src_points, size_t ** tgt_points,
508 double ** weights, size_t * count);
509
522 struct yac_interp_grid * interp_grid, size_t * tgt_indices, size_t count,
523 int * owners);
524
539 struct yac_interp_grid * interp_grid, size_t * vertices, size_t count,
540 size_t ** neigh_vertices, int * num_neighs_per_vertex);
541
559 struct yac_interp_grid * interp_grid, int to_tgt_owner,
560 enum yac_location src_location, size_t ** src_points, size_t ** tgt_points,
561 double ** weights, size_t * count);
562
563#endif // INTERP_GRID_INTERNAL_H
struct bounding_circle const *const const_bounding_circle_pointer
int const *const const_int_pointer
yac_int const *const const_yac_int_pointer
void yac_interp_grid_do_points_search(struct yac_interp_grid *interp_grid, yac_coordinate_pointer search_coords, size_t count, size_t *src_cells)
void yac_interp_grid_get_tgt_cell_neighbours(struct yac_interp_grid *interp_grid, size_t *tgt_cells, size_t count, size_t *neighbours)
void yac_interp_grid_do_cell_search_tgt(struct yac_interp_grid *interp_grid, size_t *src_cells, size_t count, size_t **tgt_cells, size_t *num_tgt_per_src)
struct remote_point * yac_interp_grid_get_src_remote_points2(struct yac_interp_grid *interp_grid, enum yac_location location, size_t *src_points, size_t count)
enum yac_location yac_interp_grid_get_tgt_field_location(struct yac_interp_grid *interp_grid)
void yac_interp_grid_relocate_src_tgt_pairs(struct yac_interp_grid *interp_grid, int to_tgt_owner, size_t src_field_idx, size_t **src_points, size_t **tgt_points, double **weights, size_t *count)
size_t yac_interp_grid_get_num_src_fields(struct yac_interp_grid *interp_grid)
const_int_pointer yac_interp_grid_get_src_field_mask(struct yac_interp_grid *interp_grid, size_t src_field_idx)
void yac_interp_grid_get_aux_grid_src(struct yac_interp_grid *interp_grid, size_t *cells, size_t count, size_t **vertex_to_cell, size_t **vertex_to_cell_offsets, int **num_cells_per_vertex)
void yac_interp_grid_get_tgt_points(struct yac_interp_grid *interp_grid, size_t **tgt_indices, size_t *count)
Definition interp_grid.c:89
void yac_interp_grid_do_nnn_search_tgt(struct yac_interp_grid *interp_grid, yac_coordinate_pointer search_coords, size_t count, size_t n, size_t *tgt_points)
void yac_interp_grid_do_bnd_circle_search_tgt(struct yac_interp_grid *interp_grid, const_bounding_circle_pointer bnd_circles, size_t count, size_t **tgt_cells, size_t *num_tgt_per_bnd_circle)
void yac_interp_grid_get_src_cell_neighbours(struct yac_interp_grid *interp_grid, size_t *src_cells, size_t count, size_t *neighbours)
void yac_interp_grid_get_tgt_global_ids(struct yac_interp_grid *interp_grid, size_t *tgt_points, size_t count, yac_int *tgt_global_ids)
void yac_interp_grid_do_bnd_circle_search_src(struct yac_interp_grid *interp_grid, const_bounding_circle_pointer bnd_circles, size_t count, size_t src_field_idx, size_t **src_cells, size_t *num_src_per_bnd_circle)
const_yac_int_pointer yac_interp_grid_get_src_field_global_ids(struct yac_interp_grid *interp_grid, size_t src_field_idx)
MPI_Comm yac_interp_grid_get_MPI_Comm(struct yac_interp_grid *interp_grid)
void yac_interp_grid_get_tgt_corner_cells(struct yac_interp_grid *interp_grid, size_t *tgt_corners, size_t count, size_t **tgt_cells, size_t *num_cells_per_corner)
struct remote_point * yac_interp_grid_get_tgt_remote_points(struct yac_interp_grid *interp_grid, size_t *tgt_points, size_t count)
void yac_interp_grid_get_src_points(struct yac_interp_grid *interp_grid, size_t src_field_idx, size_t **src_indices, size_t *count)
Definition interp_grid.c:77
enum yac_location yac_interp_grid_get_src_field_location(struct yac_interp_grid *interp_grid, size_t src_field_idx)
void yac_interp_grid_get_src_coordinates(struct yac_interp_grid *interp_grid, size_t *src_points, size_t count, size_t src_field_idx, yac_coordinate_pointer src_coordinates)
struct remote_point * yac_interp_grid_get_src_remote_points(struct yac_interp_grid *interp_grid, size_t src_field_idx, size_t *src_points, size_t count)
yac_const_coordinate_pointer yac_interp_grid_get_src_field_coords(struct yac_interp_grid *interp_grid, size_t src_field_idx)
void yac_interp_grid_determine_dist_tgt_owners(struct yac_interp_grid *interp_grid, size_t *tgt_indices, size_t count, int *owners)
void yac_interp_grid_get_src_corner_cells(struct yac_interp_grid *interp_grid, size_t *src_corners, size_t count, size_t **src_cells, size_t *num_cells_per_corner)
void yac_interp_grid_do_nnn_search_src(struct yac_interp_grid *interp_grid, yac_coordinate_pointer search_coords, size_t count, size_t n, size_t *src_points)
void yac_interp_grid_get_tgt_vertex_neighbours(struct yac_interp_grid *interp_grid, size_t *vertices, size_t count, size_t **neigh_vertices, int *num_neighs_per_vertex)
void yac_interp_grid_get_tgt_coordinates(struct yac_interp_grid *interp_grid, size_t *tgt_points, size_t count, yac_coordinate_pointer tgt_coordinates)
void yac_interp_grid_do_points_search_gc(struct yac_interp_grid *interp_grid, yac_coordinate_pointer search_coords, size_t count, size_t *src_cells)
yac_const_coordinate_pointer yac_interp_grid_get_tgt_field_coords(struct yac_interp_grid *interp_grid)
struct yac_const_basic_grid_data * yac_interp_grid_get_basic_grid_data_tgt(struct yac_interp_grid *interp_grid)
void yac_interp_grid_get_src_global_ids(struct yac_interp_grid *interp_grid, size_t *src_points, size_t count, size_t src_field_idx, yac_int *src_global_ids)
void yac_interp_grid_tgt_global_to_local(struct yac_interp_grid *interp_grid, yac_int *tgt_global_ids, size_t count, size_t *tgt_local_ids)
void yac_interp_grid_do_cell_search_src(struct yac_interp_grid *interp_grid, size_t *tgt_cells, size_t count, size_t **src_cells, size_t *num_src_per_tgt)
void yac_interp_grid_relocate_src_tgt_pairs_orig(struct yac_interp_grid *interp_grid, int to_tgt_owner, enum yac_location src_location, size_t **src_points, size_t **tgt_points, double **weights, size_t *count)
void yac_interp_grid_src_global_to_local(struct yac_interp_grid *interp_grid, size_t src_field_idx, yac_int *src_global_ids, size_t count, size_t *src_local_ids)
struct yac_const_basic_grid_data * yac_interp_grid_get_basic_grid_data_src(struct yac_interp_grid *interp_grid)
yac_location
Definition location.h:12
Xt_int yac_int
Definition yac_types.h:15
double const (*const yac_const_coordinate_pointer)[3]
Definition yac_types.h:20
double(* yac_coordinate_pointer)[3]
Definition yac_types.h:19