OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
HashPairBuilderPeriodicParallel< PBase > Class Template Reference

#include <HashPairBuilderPeriodicParallel.h>

Collaboration diagram for HashPairBuilderPeriodicParallel< PBase >:

Public Types

enum  { Dim = PBase::Dim }
enum  { Dim = PBase::Dim }
typedef PBase::Position_t Position_t
typedef PBase::Position_t Position_t

Public Member Functions

 HashPairBuilderPeriodicParallel (PBase &p)
template<class Pred, class OP>
void for_each (const Pred &pred, const OP &op, Vektor< double, 3 > extend_l, Vektor< double, 3 > extend_r)
 HashPairBuilderPeriodicParallel (PBase &p)
template<class Pred, class OP>
void for_each (const Pred &pred, const OP &op, Vektor< double, 3 > extend_l, Vektor< double, 3 > extend_r)

Private Member Functions

template<class Pred>
int get_bucket_id (int i, const Pred &)
template<class Pred>
int get_bucket_id (int i, const Pred &pred)

Private Attributes

PBase & particles
Vektor< int, 3 > buckets_per_dim
Vektor< double, 3 > h_chaining
Vektor< double, 3 > rmin_m
Vektor< double, 3 > rmax_m
Vektor< double, 3 > hr_m

Detailed Description

template<class PBase>
class HashPairBuilderPeriodicParallel< PBase >

Definition at line 25 of file HashPairBuilderPeriodicParallel.h.

Member Typedef Documentation

◆ Position_t [1/2]

template<class PBase>
typedef PBase::Position_t HashPairBuilderPeriodicParallel< PBase >::Position_t

Definition at line 29 of file HashPairBuilderPeriodicParallel.h.

◆ Position_t [2/2]

template<class PBase>
typedef PBase::Position_t HashPairBuilderPeriodicParallel< PBase >::Position_t

Member Enumeration Documentation

◆ anonymous enum

template<class PBase>
anonymous enum
Enumerator
Dim 

Definition at line 13 of file HashPairBuilderPeriodicParallel_globCHaining.h.

◆ anonymous enum

template<class PBase>
anonymous enum
Enumerator
Dim 

Definition at line 28 of file HashPairBuilderPeriodicParallel.h.

Constructor & Destructor Documentation

◆ HashPairBuilderPeriodicParallel() [1/2]

template<class PBase>
HashPairBuilderPeriodicParallel< PBase >::HashPairBuilderPeriodicParallel ( PBase & p)
inline

Definition at line 31 of file HashPairBuilderPeriodicParallel.h.

References hr_m, and particles.

◆ HashPairBuilderPeriodicParallel() [2/2]

template<class PBase>
HashPairBuilderPeriodicParallel< PBase >::HashPairBuilderPeriodicParallel ( PBase & p)
inline

Definition at line 16 of file HashPairBuilderPeriodicParallel_globCHaining.h.

References particles.

Member Function Documentation

◆ for_each() [1/2]

template<class PBase>
template<class Pred, class OP>
void HashPairBuilderPeriodicParallel< PBase >::for_each ( const Pred & pred,
const OP & op,
Vektor< double, 3 > extend_l,
Vektor< double, 3 > extend_r )
inline

Definition at line 34 of file HashPairBuilderPeriodicParallel.h.

References buckets_per_dim, floor(), get_bucket_id(), h_chaining, hr_m, particles, rmax_m, and rmin_m.

Here is the call graph for this function:

◆ for_each() [2/2]

template<class PBase>
template<class Pred, class OP>
void HashPairBuilderPeriodicParallel< PBase >::for_each ( const Pred & pred,
const OP & op,
Vektor< double, 3 > extend_l,
Vektor< double, 3 > extend_r )
inline

Definition at line 19 of file HashPairBuilderPeriodicParallel_globCHaining.h.

References buckets_per_dim, endl(), floor(), get_bucket_id(), h_chaining, particles, rmax_m, and rmin_m.

Here is the call graph for this function:

◆ get_bucket_id() [1/2]

template<class PBase>
template<class Pred>
int HashPairBuilderPeriodicParallel< PBase >::get_bucket_id ( int i,
const Pred &  )
inlineprivate

Definition at line 205 of file HashPairBuilderPeriodicParallel.h.

References buckets_per_dim, h_chaining, particles, and rmin_m.

Referenced by for_each().

◆ get_bucket_id() [2/2]

template<class PBase>
template<class Pred>
int HashPairBuilderPeriodicParallel< PBase >::get_bucket_id ( int i,
const Pred & pred )
inlineprivate

Member Data Documentation

◆ buckets_per_dim

template<class PBase>
Vektor< int, 3 > HashPairBuilderPeriodicParallel< PBase >::buckets_per_dim
private

Definition at line 219 of file HashPairBuilderPeriodicParallel.h.

Referenced by for_each(), get_bucket_id(), and get_bucket_id().

◆ h_chaining

template<class PBase>
Vektor< double, 3 > HashPairBuilderPeriodicParallel< PBase >::h_chaining
private

Definition at line 220 of file HashPairBuilderPeriodicParallel.h.

Referenced by for_each(), get_bucket_id(), and get_bucket_id().

◆ hr_m

template<class PBase>
Vektor<double,3> HashPairBuilderPeriodicParallel< PBase >::hr_m
private

Definition at line 223 of file HashPairBuilderPeriodicParallel.h.

Referenced by for_each(), and HashPairBuilderPeriodicParallel().

◆ particles

template<class PBase>
PBase & HashPairBuilderPeriodicParallel< PBase >::particles
private

◆ rmax_m

template<class PBase>
Vektor< double, 3 > HashPairBuilderPeriodicParallel< PBase >::rmax_m
private

Definition at line 222 of file HashPairBuilderPeriodicParallel.h.

Referenced by for_each().

◆ rmin_m

template<class PBase>
Vektor< double, 3 > HashPairBuilderPeriodicParallel< PBase >::rmin_m
private

Definition at line 221 of file HashPairBuilderPeriodicParallel.h.

Referenced by for_each(), get_bucket_id(), and get_bucket_id().


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