XGCa
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Public Member Functions | Private Member Functions | Private Attributes | List of all members
PlaneFieldGatherer Class Reference

#include <plane_field_gatherer.hpp>

Collaboration diagram for PlaneFieldGatherer:
Collaboration graph
[legend]

Public Member Functions

 PlaneFieldGatherer (const DomainDecomposition< DeviceType > &pol_decomp, const Grid< DeviceType > &grid)
 
template<typename T_h , typename FT >
void gather_phi_ff_on_device (const T_h &rho_ff_h, View< FT **, CLayout, DeviceType > &phi_ff)
 
template<>
View< Field< VarType::Scalar,
PhiInterpType::Planes >
**, CLayout, HostType > & 
which_tmp ()
 
template<>
View< Field< VarType::Vector,
PhiInterpType::Planes >
**, CLayout, HostType > & 
which_tmp ()
 
template<>
View< Field< VarType::Scalar,
PhiInterpType::Planes >
*, CLayout, HostType > & 
which_tmp_full ()
 
template<>
View< Field< VarType::Vector,
PhiInterpType::Planes >
*, CLayout, HostType > & 
which_tmp_full ()
 

Private Member Functions

int choose_tmp_nphi ()
 
template<typename T , typename FT >
void allgather_to_local_ranks (View< FT *, CLayout, HostType > &tmp_full, T *destination)
 
template<typename FT >
void copy_to_tmp_full (View< FT *, CLayout, HostType > &tmp_full, const View< FT **, CLayout, HostType > &rho_ff_h)
 
template<typename FT >
void copy_to_tmp_full (View< FT *, CLayout, HostType > &tmp_full, const View< FT *, CLayout, HostType > &ff_h)
 
template<typename T_h , typename FT >
void gather_phi_ff_on_device (View< FT **, CLayout, HostType > &tmp, View< FT *, CLayout, HostType > &tmp_full, const T_h &rho_ff_h, View< FT **, CLayout, DeviceType > &phi_ff)
 
template<typename FT >
View< FT **, CLayout, HostType > & which_tmp ()
 
template<typename FT >
View< FT *, CLayout, HostType > & which_tmp_full ()
 

Private Attributes

const DomainDecomposition
< DeviceType
pol_decomp
 
const Grid< DeviceTypegrid
 
bool gather_subset
 
int nplanes
 
int plane_offset
 
int nnode
 
int node_offset
 
int tmp_nphi
 
View< Field< VarType::Scalar,
PhiInterpType::Planes >
**, CLayout, HostType
tmp_s
 
View< Field< VarType::Vector,
PhiInterpType::Planes >
**, CLayout, HostType
tmp_v
 
View< Field< VarType::Scalar,
PhiInterpType::Planes >
*, CLayout, HostType
tmp_s_full
 
View< Field< VarType::Vector,
PhiInterpType::Planes >
*, CLayout, HostType
tmp_v_full
 

Constructor & Destructor Documentation

PlaneFieldGatherer::PlaneFieldGatherer ( const DomainDecomposition< DeviceType > &  pol_decomp,
const Grid< DeviceType > &  grid 
)
inline

Member Function Documentation

template<typename T , typename FT >
void PlaneFieldGatherer::allgather_to_local_ranks ( View< FT *, CLayout, HostType > &  tmp_full,
T *  destination 
)
inlineprivate

Here is the call graph for this function:

int PlaneFieldGatherer::choose_tmp_nphi ( )
inlineprivate
template<typename FT >
void PlaneFieldGatherer::copy_to_tmp_full ( View< FT *, CLayout, HostType > &  tmp_full,
const View< FT **, CLayout, HostType > &  rho_ff_h 
)
inlineprivate

Here is the call graph for this function:

template<typename FT >
void PlaneFieldGatherer::copy_to_tmp_full ( View< FT *, CLayout, HostType > &  tmp_full,
const View< FT *, CLayout, HostType > &  ff_h 
)
inlineprivate

Here is the call graph for this function:

template<typename T_h , typename FT >
void PlaneFieldGatherer::gather_phi_ff_on_device ( View< FT **, CLayout, HostType > &  tmp,
View< FT *, CLayout, HostType > &  tmp_full,
const T_h &  rho_ff_h,
View< FT **, CLayout, DeviceType > &  phi_ff 
)
inlineprivate

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename T_h , typename FT >
void PlaneFieldGatherer::gather_phi_ff_on_device ( const T_h &  rho_ff_h,
View< FT **, CLayout, DeviceType > &  phi_ff 
)
inline
template<typename FT >
View<FT**, CLayout,HostType>& PlaneFieldGatherer::which_tmp ( )
inlineprivate
template<>
View<Field<VarType::Scalar,PhiInterpType::Planes>**, CLayout,HostType>& PlaneFieldGatherer::which_tmp ( )
inline
template<>
View<Field<VarType::Vector,PhiInterpType::Planes>**, CLayout,HostType>& PlaneFieldGatherer::which_tmp ( )
inline
template<typename FT >
View<FT*, CLayout,HostType>& PlaneFieldGatherer::which_tmp_full ( )
inlineprivate
template<>
View<Field<VarType::Scalar,PhiInterpType::Planes>*, CLayout,HostType>& PlaneFieldGatherer::which_tmp_full ( )
inline
template<>
View<Field<VarType::Vector,PhiInterpType::Planes>*, CLayout,HostType>& PlaneFieldGatherer::which_tmp_full ( )
inline

Member Data Documentation

bool PlaneFieldGatherer::gather_subset
private
const Grid<DeviceType> PlaneFieldGatherer::grid
private
int PlaneFieldGatherer::nnode
private
int PlaneFieldGatherer::node_offset
private
int PlaneFieldGatherer::nplanes
private
int PlaneFieldGatherer::plane_offset
private
const DomainDecomposition<DeviceType> PlaneFieldGatherer::pol_decomp
private
int PlaneFieldGatherer::tmp_nphi
private
View<Field<VarType::Scalar,PhiInterpType::Planes>**, CLayout,HostType> PlaneFieldGatherer::tmp_s
private
View<Field<VarType::Scalar,PhiInterpType::Planes>*, CLayout,HostType> PlaneFieldGatherer::tmp_s_full
private
View<Field<VarType::Vector,PhiInterpType::Planes>**, CLayout,HostType> PlaneFieldGatherer::tmp_v
private
View<Field<VarType::Vector,PhiInterpType::Planes>*, CLayout,HostType> PlaneFieldGatherer::tmp_v_full
private

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