#include "SharedComponents.h"
Go to the source code of this file.
Classes | |
struct | Paso_Connector |
struct | Paso_Coupler |
Defines | |
#define | Paso_Coupler_borrowLocalData(_in_) (_in_)->data |
#define | Paso_Coupler_borrowRemoteData(_in_) (_in_)->recv_buffer |
Functions | |
Paso_Connector * | Paso_Connector_alloc (Paso_SharedComponents *send, Paso_SharedComponents *recv) |
Paso_Connector * | Paso_Connector_getReference (Paso_Connector *) |
Paso_Connector * | Paso_Connector_unroll (Paso_Connector *in, index_t block_size) |
Paso_Connector * | Paso_Connector_copy (Paso_Connector *in) |
void | Paso_Connector_free (Paso_Connector *) |
Paso_Coupler * | Paso_Coupler_alloc (Paso_Connector *, dim_t blockSize) |
Paso_Coupler * | Paso_Coupler_getReference (Paso_Coupler *) |
void | Paso_Coupler_startCollect (Paso_Coupler *self, const double *in) |
double * | Paso_Coupler_finishCollect (Paso_Coupler *self) |
void | Paso_Coupler_free (Paso_Coupler *in) |
void | Paso_Coupler_copyAll (const Paso_Coupler *src, Paso_Coupler *target) |
dim_t | Paso_Coupler_getLocalLength (const Paso_Coupler *in) |
#define Paso_Coupler_borrowLocalData | ( | _in_ | ) | (_in_)->data |
#define Paso_Coupler_borrowRemoteData | ( | _in_ | ) | (_in_)->recv_buffer |
Paso_Connector* Paso_Connector_alloc | ( | Paso_SharedComponents * | send, | |
Paso_SharedComponents * | recv | |||
) |
References Paso_SharedComponents::local_length, MEMALLOC, Paso_Connector::mpi_info, Paso_SharedComponents::mpi_info, Paso_checkPtr(), Paso_Connector_free(), Paso_MPIInfo_getReference(), Paso_noError(), Paso_resetError(), Paso_setError(), Paso_SharedComponents_getReference(), Paso_Connector::recv, Paso_Connector::reference_counter, Paso_Connector::send, and SYSTEM_ERROR.
Referenced by Mesh_createDOFMappingAndCoupling(), Paso_Connector_unroll(), Paso_SystemMatrix_loadMM_toCSC(), and Paso_SystemMatrix_loadMM_toCSR().
Paso_Connector* Paso_Connector_copy | ( | Paso_Connector * | in | ) |
References Paso_Connector_unroll().
void Paso_Connector_free | ( | Paso_Connector * | ) |
References MEMFREE, Paso_Connector::mpi_info, Paso_MPIInfo_free(), Paso_SharedComponents_free(), Paso_Connector::recv, Paso_Connector::reference_counter, and Paso_Connector::send.
Referenced by Finley_Mesh_createNodeFileMappings(), Finley_NodeFile_freeTable(), Mesh_createDOFMappingAndCoupling(), Paso_Connector_alloc(), Paso_Connector_unroll(), Paso_Coupler_free(), Paso_SystemMatrix_loadMM_toCSC(), Paso_SystemMatrix_loadMM_toCSR(), Paso_SystemMatrixPattern_free(), and Paso_SystemMatrixPattern_unrollBlocks().
Paso_Connector* Paso_Connector_getReference | ( | Paso_Connector * | ) |
References Paso_Connector::reference_counter.
Referenced by Paso_Coupler_alloc(), Paso_SystemMatrixPattern_alloc(), and Paso_SystemMatrixPattern_unrollBlocks().
Paso_Connector* Paso_Connector_unroll | ( | Paso_Connector * | in, | |
index_t | block_size | |||
) |
References Paso_SharedComponents::local_length, Paso_Connector::mpi_info, Paso_SharedComponents::neighbor, Paso_SharedComponents::numNeighbors, Paso_SharedComponents::offsetInShared, Paso_Connector_alloc(), Paso_Connector_free(), Paso_noError(), Paso_SharedComponents_alloc(), Paso_SharedComponents_free(), Paso_SharedComponents_getReference(), Paso_Connector::recv, Paso_Connector::send, and Paso_SharedComponents::shared.
Referenced by Paso_Connector_copy(), and Paso_SystemMatrixPattern_unrollBlocks().
Paso_Coupler* Paso_Coupler_alloc | ( | Paso_Connector * | , | |
dim_t | blockSize | |||
) |
References Paso_Coupler::block_size, Paso_Coupler::connector, Paso_Coupler::data, MEMALLOC, Paso_Coupler::mpi_info, Paso_Connector::mpi_info, Paso_Coupler::mpi_requests, Paso_Coupler::mpi_stati, Paso_SharedComponents::numNeighbors, Paso_SharedComponents::numSharedComponents, Paso_checkPtr(), Paso_Connector_getReference(), Paso_Coupler_free(), Paso_MPIInfo_getReference(), Paso_noError(), Paso_resetError(), Paso_Connector::recv, Paso_Coupler::recv_buffer, Paso_Coupler::reference_counter, Paso_Connector::send, Paso_Coupler::send_buffer, and Paso_MPIInfo::size.
Referenced by Finley_Assemble_CopyNodalData(), Paso_FCTransportProblem_alloc(), Paso_SolverFCT_solve(), and Paso_SystemMatrix_alloc().
void Paso_Coupler_copyAll | ( | const Paso_Coupler * | src, | |
Paso_Coupler * | target | |||
) |
double* Paso_Coupler_finishCollect | ( | Paso_Coupler * | self | ) |
References Paso_Coupler::connector, Paso_Coupler::mpi_info, Paso_Coupler::mpi_requests, Paso_Coupler::mpi_stati, Paso_SharedComponents::numNeighbors, Paso_Connector::recv, Paso_Coupler::recv_buffer, Paso_Connector::send, and Paso_MPIInfo::size.
Referenced by Finley_Assemble_CopyNodalData(), Paso_FCT_setUp(), Paso_FCT_setUpRightHandSide(), Paso_SystemMatrix_finishColCollect(), and Paso_SystemMatrix_finishRowCollect().
void Paso_Coupler_free | ( | Paso_Coupler * | in | ) |
References Paso_Coupler::connector, MEMFREE, Paso_Coupler::mpi_info, Paso_Coupler::mpi_requests, Paso_Coupler::mpi_stati, Paso_Connector_free(), Paso_MPIInfo_free(), Paso_Coupler::recv_buffer, Paso_Coupler::reference_counter, and Paso_Coupler::send_buffer.
Referenced by Finley_Assemble_CopyNodalData(), Paso_Coupler_alloc(), Paso_FCTransportProblem_free(), Paso_SolverFCT_solve(), and Paso_SystemMatrix_free().
dim_t Paso_Coupler_getLocalLength | ( | const Paso_Coupler * | in | ) |
References Paso_Coupler::connector, Paso_SharedComponents::local_length, and Paso_Connector::send.
Referenced by Paso_Coupler_copyAll().
Paso_Coupler* Paso_Coupler_getReference | ( | Paso_Coupler * | ) |
References Paso_Coupler::reference_counter.
void Paso_Coupler_startCollect | ( | Paso_Coupler * | self, | |
const double * | in | |||
) |
References Paso_Coupler::block_size, Paso_MPIInfo::comm, Paso_Coupler::connector, Paso_Coupler::data, MPI_DOUBLE, Paso_Coupler::mpi_info, Paso_Coupler::mpi_requests, Paso_MPIInfo::msg_tag_counter, Paso_SharedComponents::neighbor, Paso_SharedComponents::numNeighbors, Paso_SharedComponents::numSharedComponents, Paso_SharedComponents::offsetInShared, Paso_MPIInfo::rank, Paso_Connector::recv, Paso_Coupler::recv_buffer, Paso_Connector::send, Paso_Coupler::send_buffer, Paso_SharedComponents::shared, and Paso_MPIInfo::size.
Referenced by Finley_Assemble_CopyNodalData(), Paso_FCT_setUp(), Paso_FCT_setUpRightHandSide(), Paso_SystemMatrix_startColCollect(), and Paso_SystemMatrix_startRowCollect().