Public Member Functions | |
TParFEMapper3D (int N_dim, TFESpace3D *fespace, int *rowptr, int *kcol) | |
void | ConstructDofMap_Master_Halo () |
void | ConstructDofMap () |
int | find_min (int *arr, int N, char *temp_arr) |
void | GetCommInfo (int &n_Dim, int &n_Dof, int &n_SendDof, int &n_SendDofMS, int &n_SendDofH1, int &n_SendDofH2, double *&send_Info, double *&send_InfoMS, double *&send_InfoH1, double *&send_InfoH2, double *&recv_Info, double *&recv_InfoMS, double *&recv_InfoH1, double *&recv_InfoH2, int *&n_DofSend, int *&n_DofSendMS, int *&n_DofSendH1, int *&n_DofSendH2, int *&n_DofRecv, int *&n_DofRecvMS, int *&n_DofRecvH1, int *&n_DofRecvH2, int *&Sdispl, int *&SdisplMS, int *&SdisplH1, int *&SdisplH2, int *&Rdispl, int *&RdisplMS, int *&RdisplH1, int *&RdisplH2, int *&dofSend, int *&dofSendMS, int *&dofSendH1, int *&dofSendH2, int *&dofRecv, int *&dofRecvMS, int *&dofRecvH1, int *&dofRecvH2, int &n_Slave, int &n_InterfaceS, int &n_Halo1, int &n_Halo2) |
int | GetN_Master () |
int * | GetMaster () |
char * | Get_DofMarker () |
int * | GetReorder_M () |
int * | GetReorder_I () |
int * | GetReorder_D1 () |
int * | GetReorder_D2 () |
int * | GetReorder_D3 () |
int | GetN_InterfaceM () |
int | GetN_Int_light () |
int | GetN_Dept1 () |
int | GetN_Dept2 () |
int * | Get_Local2Global () |
void | Color (int &numColors, int *&ptrColors, char type) |
int | GetN_CMaster () |
int * | GetptrCMaster () |
int | GetN_CDept1 () |
int * | GetptrCDept1 () |
int | GetN_CDept2 () |
int * | GetptrCDept2 () |
int | GetN_CInt () |
int * | GetptrCInt () |
void | Assign_GlobalDofNo () |
Protected Attributes | |
MPI_Comm | Comm |
int | N_Dim |
int | N_Dof |
int * | RowPtr |
int * | KCol |
TFESpace3D * | FESpace |
int | MaxSubDomainPerDof |
int * | Master |
int * | OwnDofs |
char * | DofMarker |
double * | Send_Info |
double * | Recv_Info |
int * | Local2Global |
int * | sdispl |
int * | rdispl |
int | N_InterfaceM |
int | N_InterfaceS |
int | N_Halo1 |
int | N_Halo2 |
int | N_Dept1 |
int | N_Dept2 |
int | N_Slave |
int | N_Halo |
int | N_Master |
int | N_Dept |
int | N_Int |
int | N_OwnDof |
int * | N_DofSend |
int * | N_DofRecv |
int * | N_DofSendMS |
int * | N_DofSendH1 |
int * | N_DofSendH2 |
int * | N_DofRecvMS |
int * | N_DofRecvH1 |
int * | N_DofRecvH2 |
int * | sdisplMS |
int * | sdisplH1 |
int * | sdisplH2 |
int * | rdisplMS |
int * | rdisplH1 |
int * | rdisplH2 |
int | N_SendDof |
int | N_SendDofMS |
int | N_SendDofH1 |
int | N_SendDofH2 |
int * | DofSend |
int * | DofSendMS |
int * | DofSendH1 |
int * | DofSendH2 |
int * | DofRecv |
int * | DofRecvMS |
int * | DofRecvH1 |
int * | DofRecvH2 |
double * | Send_InfoMS |
double * | Send_InfoH1 |
double * | Send_InfoH2 |
double * | Recv_InfoMS |
double * | Recv_InfoH1 |
double * | Recv_InfoH2 |
int * | NewGN |
int * | Reorder |
int * | Reorder_M |
int * | Reorder_I |
int * | Reorder_D1 |
int * | Reorder_D2 |
int * | Reorder_D3 |
int | N_CMaster |
int | N_CDept1 |
int | N_CDept2 |
int | N_CInt |
int * | ptrCMaster |
int * | ptrCDept1 |
int * | ptrCDept2 |
int * | ptrCInt |
void TParFEMapper3D::ConstructDofMap | ( | ) |
ARRAY CONTAINING GLOBAL DOF numbers (GLOBAL means LOCALLY GLOBAL for the subdomain)
BeginIndex: START ID IN GlobalNumbers ARRAY Cellwise
Array containing number of ranks(process ID) associated (surrounding) with each DOF (including halo DOF)
Array containing global number of all Local cells
START —> [ DofRankIndex -—— N_DofRankIndex –—— N_DependentCells ]
END —> [ Master ———— Verify]
Array containing how many DOF's need to be verified from other processors(ranks)
Array containing how many DOF's need to be verified by this rank for other processors(ranks)
Total no of DOF's that need to be verified from other ranks
Total no of DOF verified by this rank
PROTECTED VARIABLES * int *sdispl,*rdispl;
===================================== END : MASTER FOR ALL DEGREES OF FREEDOM HAS BEEN DECIDED ========================
==================================START : NOW FIRST GATHERING INFORMATION REGARDING WHICH DOF's have to be received from OTHER PROCESSORS==================
PROTECTED VARIABLES * int *N_DofSend,*N_DofRecv,*DofSend,*DofRecv;
void TParFEMapper3D::ConstructDofMap_Master_Halo | ( | ) |
ARRAY CONTAINING GLOBAL DOF numbers (GLOBAL means LOCALLY GLOBAL for the subdomain)
BeginIndex: START ID IN GlobalNumbers ARRAY Cellwise
Array containing global number of all Local cells
Master :: Array containing the rank to which the Dof belongs
DofMarker:: Array to help finding Master, Slave, Dependent, Halo
DofMarker:: ALL the Dofs are marked 'i'
Local Index Array is filled with GlobalNumbers of each cell
DofMarker::Dofs of Dependent cells are marked 'd'
MappingData for dofs to be updated across domains are stored
DofMarker::Dofs of Halo cells not a part of dependent cells are marked 'h'
Master DOF verification by other ranks
Master DOF verification by other ranks completed
Gather information about other DOFs ::
|
protected |
MPI_Comm for which the fespace communications are needed
|
protected |
array containing the dof type
|
protected |
fespace for which the communications are needed
|
protected |
array to store globalDofNo of all its dofs
|
protected |
array containing the master of the dofs
|
protected |
maximum number(possible) of subdomains among all dofs
|
protected |
Number of dimensions 2d/3d
|
protected |
row ptr and col ptr of A aatrix
|
protected |
info of number of dofs to be send/recv from other procs
|
protected |
array which carries info across procs