XGC1
Public Member Functions | Public Attributes | List of all members
FieldDecomposition< Device > Class Template Reference

#include <field_decomposition.hpp>

Collaboration diagram for FieldDecomposition< Device >:
Collaboration graph
[legend]

Public Member Functions

 FieldDecomposition ()
 
 FieldDecomposition (NLReader::NamelistReader &nlr, int nplanes, int nnodes)
 
KOKKOS_INLINE_FUNCTION int find_domain_owner (int global_plane_index, int nplanes_total, int global_node_index, int nnodes_total) const
 
int all_n_nodes (int local_pid) const
 
int all_n_planes (int local_pid, int nplanes) const
 

Public Attributes

int n_ranks
 Number of ranks the field will be divided between. More...
 
int n_phi_domains
 Number of domains in the phi direction. More...
 
int n_pol_domains
 Number of domains in the poloidal plane. More...
 
int n_ghost_planes
 Number of ghost planes on each side of domain. More...
 
int n_ghost_vertices
 Number of ghost vertices on each side of domain. More...
 
int first_owned_node
 First mesh node belonging to this rank, NOT including ghost nodes. More...
 
int nnodes_owned
 Number of nodes belonging to this rank, NOT including ghost nodes. More...
 
int first_owned_plane
 First plane belonging to this rank, NOT including ghost planes. More...
 
int nplanes_owned
 Number of planes belonging to this rank, NOT including ghost planes. More...
 
int first_node
 First mesh node belonging to this rank, including ghost nodes. More...
 
int last_node
 Last node belonging to this rank, including ghost nodes. More...
 
int n_nodes
 Number of nodes belonging to this rank, including ghost nodes. More...
 
int first_plane
 First plane belonging to this rank, including ghost planes. More...
 
int last_plane
 Last plane belonging to this rank, including ghost planes. More...
 
int n_planes
 Number of planes belonging to this rank, including ghost planes. More...
 
bool use_near_field
 For better load balancing, have each rank retain the field near its global domain decomposition in addition to its secondary domain. More...
 
View< int *, CLayout, HostTypemap_from_global_intpl
 Rank in this communicator for each rank global intpl. More...
 
View< int *, CLayout, HostTypeall_first_node
 First node of each rank. More...
 
View< int *, CLayout, HostTypeall_last_node
 Last node of each rank. More...
 
View< int *, CLayout, HostTypeall_first_plane
 First plane of each rank. More...
 
View< int *, CLayout, HostTypeall_last_plane
 Last plane of each rank. More...
 

Constructor & Destructor Documentation

◆ FieldDecomposition() [1/2]

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

◆ FieldDecomposition() [2/2]

template<class Device >
FieldDecomposition< Device >::FieldDecomposition ( NLReader::NamelistReader nlr,
int  nplanes,
int  nnodes 
)
inline
Here is the call graph for this function:

Member Function Documentation

◆ all_n_nodes()

template<class Device >
int FieldDecomposition< Device >::all_n_nodes ( int  local_pid) const
inline

◆ all_n_planes()

template<class Device >
int FieldDecomposition< Device >::all_n_planes ( int  local_pid,
int  nplanes 
) const
inline
Here is the call graph for this function:

◆ find_domain_owner()

template<class Device >
KOKKOS_INLINE_FUNCTION int FieldDecomposition< Device >::find_domain_owner ( int  global_plane_index,
int  nplanes_total,
int  global_node_index,
int  nnodes_total 
) const
inline

Member Data Documentation

◆ all_first_node

template<class Device >
View<int*,CLayout,HostType> FieldDecomposition< Device >::all_first_node

First node of each rank.

◆ all_first_plane

template<class Device >
View<int*,CLayout,HostType> FieldDecomposition< Device >::all_first_plane

First plane of each rank.

◆ all_last_node

template<class Device >
View<int*,CLayout,HostType> FieldDecomposition< Device >::all_last_node

Last node of each rank.

◆ all_last_plane

template<class Device >
View<int*,CLayout,HostType> FieldDecomposition< Device >::all_last_plane

Last plane of each rank.

◆ first_node

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

First mesh node belonging to this rank, including ghost nodes.

◆ first_owned_node

template<class Device >
int FieldDecomposition< Device >::first_owned_node

First mesh node belonging to this rank, NOT including ghost nodes.

◆ first_owned_plane

template<class Device >
int FieldDecomposition< Device >::first_owned_plane

First plane belonging to this rank, NOT including ghost planes.

◆ first_plane

template<class Device >
int FieldDecomposition< Device >::first_plane

First plane belonging to this rank, including ghost planes.

◆ last_node

template<class Device >
int FieldDecomposition< Device >::last_node

Last node belonging to this rank, including ghost nodes.

◆ last_plane

template<class Device >
int FieldDecomposition< Device >::last_plane

Last plane belonging to this rank, including ghost planes.

◆ map_from_global_intpl

template<class Device >
View<int*,CLayout,HostType> FieldDecomposition< Device >::map_from_global_intpl

Rank in this communicator for each rank global intpl.

◆ n_ghost_planes

template<class Device >
int FieldDecomposition< Device >::n_ghost_planes

Number of ghost planes on each side of domain.

◆ n_ghost_vertices

template<class Device >
int FieldDecomposition< Device >::n_ghost_vertices

Number of ghost vertices on each side of domain.

◆ n_nodes

template<class Device >
int FieldDecomposition< Device >::n_nodes

Number of nodes belonging to this rank, including ghost nodes.

◆ n_phi_domains

template<class Device >
int FieldDecomposition< Device >::n_phi_domains

Number of domains in the phi direction.

◆ n_planes

template<class Device >
int FieldDecomposition< Device >::n_planes

Number of planes belonging to this rank, including ghost planes.

◆ n_pol_domains

template<class Device >
int FieldDecomposition< Device >::n_pol_domains

Number of domains in the poloidal plane.

◆ n_ranks

template<class Device >
int FieldDecomposition< Device >::n_ranks

Number of ranks the field will be divided between.

◆ nnodes_owned

template<class Device >
int FieldDecomposition< Device >::nnodes_owned

Number of nodes belonging to this rank, NOT including ghost nodes.

◆ nplanes_owned

template<class Device >
int FieldDecomposition< Device >::nplanes_owned

Number of planes belonging to this rank, NOT including ghost planes.

◆ use_near_field

template<class Device >
bool FieldDecomposition< Device >::use_near_field

For better load balancing, have each rank retain the field near its global domain decomposition in addition to its secondary domain.


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