MADNESS 0.10.1
LevelPmap Class Reference

#include <electronicstructureapp.h>

Inheritance diagram for LevelPmap:
Collaboration diagram for LevelPmap:

Public Member Functions

 LevelPmap ()
 LevelPmap ()
 LevelPmap (World &world)
 LevelPmap (World &world)
ProcessID owner (const Key< 3 > &key) const
 Find the owner of a given key.
ProcessID owner (const Key< 3 > &key) const
 Maps key to processor.
Public Member Functions inherited from madness::WorldDCPmapInterface< Key< 3 > >
virtual ~WorldDCPmapInterface ()
void deregister_callback (ptrT ptr)
 Deregisters object for receipt of redistribute callbacks.
virtual DistributionType distribution_type () const
 by default the map is distributed
std::size_t global_size (World &world) const
 Counts global number of entries in all containers associated with this process map.
std::size_t local_size () const
 Counts local number of entries in all containers associated with this process map.
virtual void print () const
void print_data_sizes (World &world, const std::string msg="") const
 Prints size info to std::cout.
void redistribute (World &world, const std::shared_ptr< WorldDCPmapInterface< Key< 3 > > > &newpmap)
 Invoking this switches all registered objects from this process map to the new one.
void register_callback (ptrT ptr)
 Registers object for receipt of redistribute callbacks.
virtual ProcessID single_owner () const

Private Attributes

const int nproc

Additional Inherited Members

Public Types inherited from madness::WorldDCPmapInterface< Key< 3 > >
typedef WorldDCRedistributeInterface< Key< 3 > > * ptrT

Constructor & Destructor Documentation

◆ LevelPmap() [1/4]

LevelPmap::LevelPmap ( )
inline

References nproc.

◆ LevelPmap() [2/4]

LevelPmap::LevelPmap ( World & world)
inline

References nproc.

◆ LevelPmap() [3/4]

LevelPmap::LevelPmap ( )
inline

References nproc.

◆ LevelPmap() [4/4]

LevelPmap::LevelPmap ( World & world)
inline

References nproc.

Member Function Documentation

◆ owner() [1/2]

ProcessID LevelPmap::owner ( const Key< 3 > & key) const
inlinevirtual

◆ owner() [2/2]

ProcessID LevelPmap::owner ( const Key< 3 > & key) const
inlinevirtual

Maps key to processor.

Parameters
[in]keyKey for container
Returns
Processor that logically owns the key

Implements madness::WorldDCPmapInterface< Key< 3 > >.

References madness::Key< NDIM >::hash(), madness::Key< NDIM >::level(), and nproc.

Member Data Documentation

◆ nproc

const int LevelPmap::nproc
private

Referenced by LevelPmap(), LevelPmap(), and owner().


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