YAC 3.21.0
Yet Another Coupler
Loading...
Searching...
No Matches
proc_sphere_part.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 PROC_SPHERE_PART_H
6#define PROC_SPHERE_PART_H
7
8#include "yac_types.h"
9#include "geometry.h"
10
12
60 yac_coordinate_pointer vertex_coordinates[2], size_t * num_vertices,
61 struct proc_sphere_part_node ** proc_sphere_part,
62 yac_int **global_vertex_ids[2], int **vertex_ranks[2], MPI_Comm comm);
63
70
86 struct proc_sphere_part_node * node, yac_coordinate_pointer search_coords,
87 size_t count, int * ranks);
88
105 struct proc_sphere_part_node * node, struct bounding_circle bnd_circle,
106 int * ranks, int * rank_count);
107
138 struct proc_sphere_part_node * node, uint64_t * leaf_sizes,
139 uint64_t min_size, int * send_flags, int * recv_flags,
140 int comm_rank, int comm_size);
141
142 /* end of group yac_proc_sphere_part */
143
144#endif // PROC_SPHERE_PART_H
void yac_proc_sphere_part_get_neigh_ranks(struct proc_sphere_part_node *node, uint64_t *leaf_sizes, uint64_t min_size, int *send_flags, int *recv_flags, int comm_rank, int comm_size)
void yac_proc_sphere_part_do_bnd_circle_search(struct proc_sphere_part_node *node, struct bounding_circle bnd_circle, int *ranks, int *rank_count)
void yac_proc_sphere_part_do_point_search(struct proc_sphere_part_node *node, yac_coordinate_pointer search_coords, size_t count, int *ranks)
void yac_proc_sphere_part_node_delete(struct proc_sphere_part_node *node)
void yac_proc_sphere_part_new(yac_coordinate_pointer vertex_coordinates[2], size_t *num_vertices, struct proc_sphere_part_node **proc_sphere_part, yac_int **global_vertex_ids[2], int **vertex_ranks[2], MPI_Comm comm)
Inner node of the process sphere partition tree.
YAC_INT yac_int
Definition yac_types.h:15
double(* yac_coordinate_pointer)[3]
Definition yac_types.h:21