DomainListHandler(integer domainListSize)
Constructor.
integer * d_relevantDomainListLevels
keyType * d_sortedDomainListKeys
device sorted domain list keys
integer * d_domainListIndices
device domain list indices
integer * d_domainListLevels
device domain list levels
integer domainListSize
length/size of domain list
keyType * d_domainListKeys
device domain list key
integer * d_relevantDomainListIndices
device relevant domain list indices
integer * d_relevantDomainListProcess
DomainList * d_domainList
device instance of DomainList class
integer * d_domainListIndex
device domain list index
integer * d_domainListCounter
device domain list counter
integer * d_relevantDomainListOriginalIndex
SubDomainKeyTreeHandler()
Constructor.
integer * d_numProcesses
device MPI number of processes
SubDomainKeyTree * d_subDomainKeyTree
device instance of class SubDomainKeyTree
~SubDomainKeyTreeHandler()
Destructor.
SubDomainKeyTree * h_subDomainKeyTree
host instance of class SubDomainKeyTree
void reset()
Resetting member variables.
integer * h_procParticleCounter
host counter for particles in dependence of MPI process belonging
integer h_numProcesses
host MPI number of processes
integer * d_procParticleCounter
host counter for particles in dependence of MPI process belonging
void copy(To::Target target=To::device, bool range=true, bool counter=true)
Copy (parts of the) SubDomainKeyTree instance(s) between host and device.
SubDomainKeyTree class handling rank, number of processes and ranges.
CUDA_CALLABLE_MEMBER void set(integer rank, integer numProcesses, keyType *range, integer *procParticleCounter)
Setter.
void set(DomainList *domainList, integer *domainListIndices, integer *domainListLevels, integer *domainListIndex, integer *domainListCounter, keyType *domainListKeys, keyType *sortedDomainListKeys, integer *relevantDomainListIndices, integer *relevantDomainListLevels, integer *relevantDomainListProcess)
Wrapper for DomainListNS::Kernel::set().
void setBorders(DomainList *domainList, real *borders, integer *relevantDomainListOriginalIndex)
void set(SubDomainKeyTree *subDomainKeyTree, integer rank, integer numProcesses, keyType *range, integer *procParticleCounter)
Wrapper for SubDomainKeyTreeNS::Kernel::set().
void copy(T *h_var, T *d_var, std::size_t count=1, To::Target copyTo=To::device)
Copy between host and device and vice-versa.