25 #ifndef P8EST_LNODES_H
26 #define P8EST_LNODES_H
33 typedef int16_t p8est_lnodes_code_t;
124 p8est_lnodes_code_t *face_code;
204 p8est_lnodes_decode (p8est_lnodes_code_t face_code,
int hanging_face[6],
205 int hanging_edge[12])
207 P4EST_ASSERT (face_code >= 0);
211 int16_t c = face_code & 0x0007;
215 int16_t work = face_code >> 3;
217 memset (hanging_face, -1, 6 *
sizeof (
int));
218 memset (hanging_edge, -1, 12 *
sizeof (
int));
221 for (i = 0; i < 3; ++i) {
225 for (j = 0; j < 4; j++) {
232 for (i = 0; i < 3; ++i) {
235 hanging_edge[e] = (hanging_edge[e] == -1) ? 0 : 2;
236 hanging_edge[e] += (int) (cwork & 0x0001);
266 int partition_for_coarsening);
273 int nodes_per_volume,
276 int nodes_per_corner,
278 partition_for_coarsening);
353 void p8est_lnodes_share_owned (
sc_array_t * node_data,
395 p8est_lnodes_rank_array_index_int (
sc_array_t * array,
int it)
398 P4EST_ASSERT (it >= 0 && (
size_t) it < array->elem_count);
408 p8est_lnodes_rank_array_index (
sc_array_t * array,
size_t it)
411 P4EST_ASSERT (it < array->elem_count);
423 P4EST_ASSERT (lidx >= 0 && lidx < lnodes->num_local_nodes);
425 return (lidx < owned) ? lnodes->global_offset + lidx :
426 lnodes->nonlocal_nodes[lidx - owned];
int32_t p4est_locidx_t
Typedef for processor-local indexing of quadrants and nodes.
Definition: p4est_base.h:106
int64_t p4est_gloidx_t
Typedef for globally unique indexing of quadrants.
Definition: p4est_base.h:118
The top-level 3D p8est interface.
const int p8est_corner_faces[8][3]
Store the face numbers 0..5 for each tree corner.
const int p8est_face_edges[6][4]
Store the edge numbers 0..12 for each tree face.
const int p8est_corner_face_corners[8][6]
Store the face corner numbers for the faces touching a tree corner.
const int p8est_corner_edges[8][3]
Store the edge numbers 0..11 for each tree corner.
passing quadrants and data to neighboring processes
sc3_MPI_Comm_t sc_MPI_Comm
The p4est forest datatype.
Definition: p4est.h:136
quadrants that neighbor the local domain
Definition: p8est_ghost.h:41
p8est_lnodes_buffer_t handles the communication of data associated with nodes.
Definition: p8est_lnodes.h:319
The structure stored in the sharers array.
Definition: p8est_lnodes.h:141
Store a parallel numbering of Lobatto points of a given degree > 0.
Definition: p8est_lnodes.h:113
The p8est forest datatype.
Definition: p8est.h:132