YAC 3.12.0
Yet Another Coupler
Loading...
Searching...
No Matches
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 SPHERE_PART_H
6#define SPHERE_PART_H
7
67#include "yac_types.h"
68#include "geometry.h"
69
71
73 size_t num_points, yac_const_coordinate_pointer coordinates_xyz,
74 yac_int const * ids);
75
77 size_t num_points, yac_const_coordinate_pointer coordinates_xyz,
78 yac_int const * ids, int const * mask);
79
81 struct point_sphere_part_search * search);
82
88 size_t num_points,
89 double (*coordinates_xyz)[3],
90 double * cos_angles,
91 double (**result_coordinates_xyz)[3],
92 size_t * result_coordinates_xyz_array_size,
93 size_t ** local_point_ids,
94 size_t * local_point_ids_array_size,
95 size_t * num_local_point_ids);
96
102 size_t num_points,
103 double (*coordinates_xyz)[3], size_t n,
104 double ** cos_angles,
105 size_t * cos_angles_array_size,
106 double (**result_coordinates_xyz)[3],
107 size_t * result_coordinates_xyz_array_size,
108 size_t ** local_point_ids,
109 size_t * local_point_ids_array_size,
110 size_t * num_local_point_ids);
111
118 struct point_sphere_part_search * search,
119 size_t num_bnd_circles, struct bounding_circle * bnd_circles,
120 size_t n, size_t ** local_point_ids, size_t * local_point_ids_array_size,
121 size_t * num_local_point_ids);
122
128 struct point_sphere_part_search * search,
129 size_t num_points, yac_coordinate_pointer coordinates_xyz,
130 size_t n, struct sin_cos_angle * angles);
131
134 struct bounding_circle * circles, size_t num_circles);
137 struct bnd_sphere_part_search * search, yac_coordinate_pointer coordinates_xyz,
138 size_t count, size_t ** cells, size_t * num_cells_per_coordinate);
140 struct bnd_sphere_part_search * search, struct bounding_circle * bnd_circles,
141 size_t count, size_t ** cells, size_t * num_cells_per_bnd_circle);
142
143#endif // SPHERE_PART_H
144
void yac_point_sphere_part_search_NNN_ubound(struct point_sphere_part_search *search, size_t num_points, yac_coordinate_pointer coordinates_xyz, size_t n, struct sin_cos_angle *angles)
void yac_bnd_sphere_part_search_do_bnd_circle_search(struct bnd_sphere_part_search *search, struct bounding_circle *bnd_circles, size_t count, size_t **cells, size_t *num_cells_per_bnd_circle)
void yac_point_sphere_part_search_NNN_bnd_circle(struct point_sphere_part_search *search, size_t num_bnd_circles, struct bounding_circle *bnd_circles, size_t n, size_t **local_point_ids, size_t *local_point_ids_array_size, size_t *num_local_point_ids)
struct bnd_sphere_part_search * yac_bnd_sphere_part_search_new(struct bounding_circle *circles, size_t num_circles)
void yac_delete_point_sphere_part_search(struct point_sphere_part_search *search)
struct point_sphere_part_search * yac_point_sphere_part_search_mask_new(size_t num_points, yac_const_coordinate_pointer coordinates_xyz, yac_int const *ids, int const *mask)
void yac_bnd_sphere_part_search_delete(struct bnd_sphere_part_search *search)
struct point_sphere_part_search * yac_point_sphere_part_search_new(size_t num_points, yac_const_coordinate_pointer coordinates_xyz, yac_int const *ids)
void yac_bnd_sphere_part_search_do_point_search(struct bnd_sphere_part_search *search, yac_coordinate_pointer coordinates_xyz, size_t count, size_t **cells, size_t *num_cells_per_coordinate)
void yac_point_sphere_part_search_NN(struct point_sphere_part_search *search, size_t num_points, double(*coordinates_xyz)[3], double *cos_angles, double(**result_coordinates_xyz)[3], size_t *result_coordinates_xyz_array_size, size_t **local_point_ids, size_t *local_point_ids_array_size, size_t *num_local_point_ids)
void yac_point_sphere_part_search_NNN(struct point_sphere_part_search *search, size_t num_points, double(*coordinates_xyz)[3], size_t n, double **cos_angles, size_t *cos_angles_array_size, double(**result_coordinates_xyz)[3], size_t *result_coordinates_xyz_array_size, size_t **local_point_ids, size_t *local_point_ids_array_size, size_t *num_local_point_ids)
static int mask[16]
static size_t num_points
Definition yac.c:159
double const (* yac_const_coordinate_pointer)[3]
Definition yac_types.h:20
YAC_INT yac_int
Definition yac_types.h:15
double(* yac_coordinate_pointer)[3]
Definition yac_types.h:19