XGCa
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Public Member Functions | Public Attributes | List of all members
DomainDecomposition< Device > Class Template Reference

#include <domain_decomposition.hpp>

Public Member Functions

 DomainDecomposition (bool interplanar_only_in, int pe_per_plane_in, int plane_totalpe_in, int n_pids_in, int my_pid_in, int my_plane_pid)
 
 DomainDecomposition ()
 
void update_pol_decomp (int *gvid0_pid_in)
 

Public Attributes

bool interplanar_only
 No poloidal decomposition. More...
 
int pe_per_plane
 Processors per plane. More...
 
int plane_totalpe
 Processors per plane? More...
 
int n_pids
 Processors per plane? More...
 
int my_pid
 ID of this processor. More...
 
int my_plane_pid
 Poloidal ID of this processor. More...
 
int first_node
 First mesh node belonging to this MPI rank. More...
 
int nnodes
 Number of nodes belonging to this MPI rank. More...
 
Kokkos::View< int
*, Kokkos::LayoutRight, Device > 
gvid0_pid
 Which processors get which vertices. More...
 

Constructor & Destructor Documentation

template<class Device >
DomainDecomposition< Device >::DomainDecomposition ( bool  interplanar_only_in,
int  pe_per_plane_in,
int  plane_totalpe_in,
int  n_pids_in,
int  my_pid_in,
int  my_plane_pid_in 
)

Constructor for DomainDecomposition class

template<class Device>
DomainDecomposition< Device >::DomainDecomposition ( )
inline

Member Function Documentation

template<class Device >
void DomainDecomposition< Device >::update_pol_decomp ( int *  gvid0_pid_in)

Update the poloidal decomposition. Pretty sure that gvid0_pid is the only thing that actually needs to be updated

Parameters
[in]gvid0_pid_inNew domain decomposition breakdown

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

template<class Device>
int DomainDecomposition< Device >::first_node

First mesh node belonging to this MPI rank.

template<class Device>
Kokkos::View<int*,Kokkos::LayoutRight,Device> DomainDecomposition< Device >::gvid0_pid

Which processors get which vertices.

template<class Device>
bool DomainDecomposition< Device >::interplanar_only

No poloidal decomposition.

template<class Device>
int DomainDecomposition< Device >::my_pid

ID of this processor.

template<class Device>
int DomainDecomposition< Device >::my_plane_pid

Poloidal ID of this processor.

template<class Device>
int DomainDecomposition< Device >::n_pids

Processors per plane?

template<class Device>
int DomainDecomposition< Device >::nnodes

Number of nodes belonging to this MPI rank.

template<class Device>
int DomainDecomposition< Device >::pe_per_plane

Processors per plane.

template<class Device>
int DomainDecomposition< Device >::plane_totalpe

Processors per plane?


The documentation for this class was generated from the following files: