FrontISTR  5.7.1
Large-scale structural analysis program with finit element method
hecmw_couple_info.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2019 FrontISTR Commons
3  * This software is released under the MIT License, see LICENSE.txt
4  *****************************************************************************/
5 
6 #ifndef INC_HECMW_COUPLE_INFO
7 #define INC_HECMW_COUPLE_INFO
8 
9 #include "hecmw_config.h"
10 #include "hecmw_couple_struct.h"
11 
12 extern void HECMW_couple_free_comm(struct hecmw_couple_comm *comm);
13 extern void HECMW_couple_free_couple_info(void);
14 extern int HECMW_couple_comm_init(void);
15 
16 extern char *HECMW_couple_get_unit_id(const char *boundary_id,
17  int unit_specifier, char *buf,
18  int bufsize);
19 extern int HECMW_couple_is_member(const char *boundary_id);
20 extern int HECMW_couple_is_unit_member(const char *boundary_id,
21  int unit_specifier);
22 extern int HECMW_couple_is_unit_member_u(const char *unit_id);
23 extern int HECMW_couple_is_root(const char *boundary_id);
24 extern int HECMW_couple_is_unit_root(const char *boundary_id,
25  int unit_specifier);
26 extern int HECMW_couple_is_unit_root_u(const char *unit_id);
27 extern int HECMW_intercomm_get_size(const char *boundary_id);
28 extern int HECMW_intracomm_get_size(const char *boundary_id,
29  int unit_specifier);
30 extern int HECMW_intracomm_get_size_u(const char *unit_id);
31 extern int HECMW_intercomm_get_rank(const char *boundary_id);
32 extern int HECMW_intracomm_get_rank(const char *boundary_id,
33  int unit_specifier);
34 extern int HECMW_intracomm_get_rank_u(const char *unit_id);
35 extern HECMW_Comm HECMW_intercomm_get_comm(const char *boundary_id);
36 extern HECMW_Comm HECMW_intracomm_get_comm(const char *boundary_id,
37  int unit_specifier);
38 extern HECMW_Comm HECMW_intracomm_get_comm_u(const char *unit_id);
39 extern HECMW_Group HECMW_intercomm_get_group(const char *boundary_id);
40 extern HECMW_Group HECMW_intracomm_get_group(const char *boundary_id,
41  int unit_specifier);
42 extern HECMW_Group HECMW_intracomm_get_group_u(const char *unit_id);
44  const char *boundary_id, int unit_specifier);
46  const char *unit_id);
48  const char *boundary_id);
49 
50 #endif /* INC_HECMW_COUPLE_INFO */
MPI_Group HECMW_Group
Definition: hecmw_config.h:32
MPI_Comm HECMW_Comm
Definition: hecmw_config.h:30
struct hecmw_couple_comm * HECMW_couple_get_intracomm_u(const char *unit_id)
int HECMW_couple_is_member(const char *boundary_id)
void HECMW_couple_free_couple_info(void)
int HECMW_intracomm_get_size(const char *boundary_id, int unit_specifier)
int HECMW_couple_is_unit_member(const char *boundary_id, int unit_specifier)
HECMW_Group HECMW_intercomm_get_group(const char *boundary_id)
int HECMW_intracomm_get_size_u(const char *unit_id)
int HECMW_couple_is_unit_root_u(const char *unit_id)
int HECMW_couple_is_unit_root(const char *boundary_id, int unit_specifier)
HECMW_Group HECMW_intracomm_get_group_u(const char *unit_id)
HECMW_Comm HECMW_intercomm_get_comm(const char *boundary_id)
HECMW_Comm HECMW_intracomm_get_comm_u(const char *unit_id)
char * HECMW_couple_get_unit_id(const char *boundary_id, int unit_specifier, char *buf, int bufsize)
int HECMW_intracomm_get_rank_u(const char *unit_id)
int HECMW_couple_is_root(const char *boundary_id)
int HECMW_couple_comm_init(void)
int HECMW_intercomm_get_size(const char *boundary_id)
int HECMW_intracomm_get_rank(const char *boundary_id, int unit_specifier)
int HECMW_intercomm_get_rank(const char *boundary_id)
HECMW_Group HECMW_intracomm_get_group(const char *boundary_id, int unit_specifier)
void HECMW_couple_free_comm(struct hecmw_couple_comm *comm)
int HECMW_couple_is_unit_member_u(const char *unit_id)
struct hecmw_couple_comm * HECMW_couple_get_intracomm(const char *boundary_id, int unit_specifier)
HECMW_Comm HECMW_intracomm_get_comm(const char *boundary_id, int unit_specifier)
struct hecmw_couple_comm * HECMW_couple_get_intercomm(const char *boundary_id)