escript Revision_
Public Member Functions | Public Attributes | List of all members
paso::Coupler< Scalar > Struct Template Reference

#include <Coupler.h>

Public Member Functions

 Coupler (const_Connector_ptr, dim_t blockSize, escript::JMPI mpiInfo)
 
 ~Coupler ()
 
void startCollect (const Scalar *in)
 
Scalar * finishCollect ()
 
void copyAll (Coupler_ptr< Scalar > target) const
 
void fillOverlap (dim_t n, Scalar *x)
 
void max (dim_t n, Scalar *x)
 
const Scalar * borrowLocalData () const
 
const Scalar * borrowRemoteData () const
 
dim_t getNumSharedComponents () const
 
dim_t getNumOverlapComponents () const
 
dim_t getNumSharedValues () const
 
dim_t getNumOverlapValues () const
 
dim_t getLocalLength () const
 
void max (dim_t n, real_t *x)
 
void max (dim_t n, cplx_t *x)
 

Public Attributes

const_Connector_ptr connector
 
dim_t block_size
 
bool in_use
 
Scalar * data
 
Scalar * send_buffer
 
Scalar * recv_buffer
 
MPI_Requestmpi_requests
 
MPI_Statusmpi_stati
 
escript::JMPI mpi_info
 

Constructor & Destructor Documentation

◆ Coupler()

template<typename Scalar >
paso::Coupler< Scalar >::Coupler ( const_Connector_ptr  conn,
dim_t  blockSize,
escript::JMPI  mpiInfo 
)

◆ ~Coupler()

template<typename Scalar >
paso::Coupler< Scalar >::~Coupler

Member Function Documentation

◆ borrowLocalData()

template<typename Scalar >
const Scalar * paso::Coupler< Scalar >::borrowLocalData ( ) const
inline

◆ borrowRemoteData()

template<typename Scalar >
const Scalar * paso::Coupler< Scalar >::borrowRemoteData ( ) const
inline

◆ copyAll()

template<typename Scalar >
void paso::Coupler< Scalar >::copyAll ( Coupler_ptr< Scalar >  target) const

◆ fillOverlap()

template<typename Scalar >
void paso::Coupler< Scalar >::fillOverlap ( dim_t  n,
Scalar *  x 
)

References escript::Scalar().

◆ finishCollect()

template<typename Scalar >
Scalar * paso::Coupler< Scalar >::finishCollect

◆ getLocalLength()

template<typename Scalar >
dim_t paso::Coupler< Scalar >::getLocalLength ( ) const
inline

◆ getNumOverlapComponents()

template<typename Scalar >
dim_t paso::Coupler< Scalar >::getNumOverlapComponents ( ) const
inline

◆ getNumOverlapValues()

template<typename Scalar >
dim_t paso::Coupler< Scalar >::getNumOverlapValues ( ) const
inline

◆ getNumSharedComponents()

template<typename Scalar >
dim_t paso::Coupler< Scalar >::getNumSharedComponents ( ) const
inline

◆ getNumSharedValues()

template<typename Scalar >
dim_t paso::Coupler< Scalar >::getNumSharedValues ( ) const
inline

◆ max() [1/3]

void paso::Coupler< cplx_t >::max ( dim_t  n,
cplx_t *  x 
)

◆ max() [2/3]

void paso::Coupler< real_t >::max ( dim_t  n,
real_t *  x 
)

◆ max() [3/3]

template<typename Scalar >
void paso::Coupler< Scalar >::max ( dim_t  n,
Scalar *  x 
)

◆ startCollect()

template<typename Scalar >
void paso::Coupler< Scalar >::startCollect ( const Scalar *  in)

References MPI_DOUBLE, and escript::Scalar().

Member Data Documentation

◆ block_size

template<typename Scalar >
dim_t paso::Coupler< Scalar >::block_size

◆ connector

template<typename Scalar >
const_Connector_ptr paso::Coupler< Scalar >::connector

◆ data

template<typename Scalar >
Scalar* paso::Coupler< Scalar >::data

◆ in_use

template<typename Scalar >
bool paso::Coupler< Scalar >::in_use

◆ mpi_info

template<typename Scalar >
escript::JMPI paso::Coupler< Scalar >::mpi_info

◆ mpi_requests

template<typename Scalar >
MPI_Request* paso::Coupler< Scalar >::mpi_requests

◆ mpi_stati

template<typename Scalar >
MPI_Status* paso::Coupler< Scalar >::mpi_stati

◆ recv_buffer

template<typename Scalar >
Scalar* paso::Coupler< Scalar >::recv_buffer

◆ send_buffer

template<typename Scalar >
Scalar* paso::Coupler< Scalar >::send_buffer

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