ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
Namespaces | Functions
func_transfer.cpp File Reference
#include "./hcontainer_funcs.h"
#include "./transfer.h"
#include <mpi.h>
Include dependency graph for func_transfer.cpp:

Namespaces

namespace  hamilt
 

Functions

template<typename TR >
void hamilt::transferSerial2Parallels (const hamilt::HContainer< TR > &hR_s, hamilt::HContainer< TR > *hR_p, const int serial_rank)
 transfer the HContainer from serial object to parallel object
 
template<typename TR >
void hamilt::transferParallels2Serial (const hamilt::HContainer< TR > &hR_p, hamilt::HContainer< TR > *hR_s, const int serial_rank)
 transfer the HContainer from parallel object to serial object
 
template<typename TR >
void hamilt::transferSerials2Parallels (const hamilt::HContainer< TR > &hR_s, hamilt::HContainer< TR > *hR_p)
 transfer the HContainer from all serial objects to all parallel objects
 
template<typename TR >
void hamilt::transferParallels2Serials (const hamilt::HContainer< TR > &hR_p, hamilt::HContainer< TR > *hR_s)
 transfer the HContainer from all serial objects to all parallel objects
 
template<typename TR >
void hamilt::gatherParallels (const hamilt::HContainer< TR > &hR_p, hamilt::HContainer< TR > *hR_s, const int serial_rank)
 gather the HContainer from all parallel objects to target serial object the serial object should be empty before gather
 
template void hamilt::transferSerial2Parallels (const hamilt::HContainer< double > &hR_s, hamilt::HContainer< double > *hR_p, const int serial_rank)
 
template void hamilt::transferSerial2Parallels (const hamilt::HContainer< std::complex< double > > &hR_s, hamilt::HContainer< std::complex< double > > *hR_p, const int serial_rank)
 
template void hamilt::transferParallels2Serial (const hamilt::HContainer< double > &hR_p, hamilt::HContainer< double > *hR_s, const int serial_rank)
 
template void hamilt::transferParallels2Serial (const hamilt::HContainer< std::complex< double > > &hR_p, hamilt::HContainer< std::complex< double > > *hR_s, const int serial_rank)
 
template void hamilt::transferSerials2Parallels (const hamilt::HContainer< double > &hR_s, hamilt::HContainer< double > *hR_p)
 
template void hamilt::transferSerials2Parallels (const hamilt::HContainer< std::complex< double > > &hR_s, hamilt::HContainer< std::complex< double > > *hR_p)
 
template void hamilt::transferParallels2Serials (const hamilt::HContainer< double > &hR_p, hamilt::HContainer< double > *hR_s)
 
template void hamilt::transferParallels2Serials (const hamilt::HContainer< std::complex< double > > &hR_p, hamilt::HContainer< std::complex< double > > *hR_s)
 
template void hamilt::gatherParallels (const hamilt::HContainer< double > &hR_p, hamilt::HContainer< double > *hR_s, const int serial_rank)
 
template void hamilt::gatherParallels (const hamilt::HContainer< std::complex< double > > &hR_p, hamilt::HContainer< std::complex< double > > *hR_s, const int serial_rank)