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_Request * | mpi_requests
MPI_Status * | mpi_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
| ) |  |

References paso::Coupler< Scalar >::block_size, paso::Coupler< Scalar >::mpi_info, paso::Coupler< Scalar >::mpi_requests, paso::Coupler< Scalar >::mpi_stati, paso::Coupler< Scalar >::recv_buffer, escript::Scalar(), and paso::Coupler< Scalar >::send_buffer.

## ~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

Referenced by paso::Coupler< Scalar >::Coupler().

## 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

Referenced by paso::Coupler< Scalar >::Coupler().

## mpi_requests

template<typename Scalar >

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

Referenced by paso::Coupler< Scalar >::Coupler().

## mpi_stati

template<typename Scalar >

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

Referenced by paso::Coupler< Scalar >::Coupler().

## recv_buffer

template<typename Scalar >

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

Referenced by paso::Coupler< Scalar >::Coupler().

## send_buffer

template<typename Scalar >

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

Referenced by paso::Coupler< Scalar >::Coupler().

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

- Coupler.h
- Coupler.cpp