p4est  2.8.7
p4est is a software library for parallel adaptive mesh refinement.
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
p6est_communication.h
Go to the documentation of this file.
1 /*
2  This file is part of p4est.
3  p4est is a C library to manage a collection (a forest) of multiple
4  connected adaptive quadtrees or octrees in parallel.
5 
6  Copyright (C) 2010 The University of Texas System
7  Additional copyright (C) 2011 individual authors
8  Written by Carsten Burstedde, Lucas C. Wilcox, and Tobin Isaac
9 
10  p4est is free software; you can redistribute it and/or modify
11  it under the terms of the GNU General Public License as published by
12  the Free Software Foundation; either version 2 of the License, or
13  (at your option) any later version.
14 
15  p4est is distributed in the hope that it will be useful,
16  but WITHOUT ANY WARRANTY; without even the implied warranty of
17  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  GNU General Public License for more details.
19 
20  You should have received a copy of the GNU General Public License
21  along with p4est; if not, write to the Free Software Foundation, Inc.,
22  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
23 */
24 
25 #ifndef P6EST_COMMUNICATION_H
26 #define P6EST_COMMUNICATION_H
27 
35 #include <p6est.h>
36 
37 SC_EXTERN_C_BEGIN;
38 
46  sc_MPI_Comm mpicomm);
47 
53 
57 
65  sc_MPI_Comm mpicomm);
66 
70 
76 
86  p6est_supercomm);
87 
106  p6est_supercomm,
107  sc_MPI_Group
108  group_add,
109  int add_to_beginning,
110  int **ranks_subcomm);
111 
112 SC_EXTERN_C_END;
113 
114 #endif /* !P6EST_COMMUNICATION_H */
A hybrid 2D+1D AMR extension.
int p6est_comm_parallel_env_reduce_ext(p6est_t **p6est_supercomm, sc_MPI_Group group_add, int add_to_beginning, int **ranks_subcomm)
Reduce MPI communicator to non-empty ranks and add a group of ranks that will remain in the reduced c...
void p6est_comm_parallel_env_replace(p6est_t *p6est, sc_MPI_Comm mpicomm)
Replace the current MPI communicator by the one provided as input.
void p6est_comm_parallel_env_release(p6est_t *p6est)
Release MPI communicator if it is owned by p6est.
void p6est_comm_parallel_env_get_info(p6est_t *p6est)
Retrieve parallel environment information.
int p6est_comm_parallel_env_is_null(p6est_t *p6est)
Check if the MPI communicator is valid.
void p6est_comm_parallel_env_assign(p6est_t *p6est, sc_MPI_Comm mpicomm)
Assign an MPI communicator to p6est; retrieve parallel environment.
void p6est_comm_parallel_env_duplicate(p6est_t *p6est)
Duplicate MPI communicator and replace the current one by the duplicate.
int p6est_comm_parallel_env_reduce(p6est_t **p6est_supercomm)
Reduce MPI communicator to non-empty ranks (i.e., nonzero quadrant counts).
The p6est forest datatype.
Definition: p6est.h:167