ESYS13
Revision_
|
#include "SharedComponents.h"
Go to the source code of this file.
#define Paso_Coupler_borrowLocalData | ( | _in_ | ) | (_in_)->data |
#define Paso_Coupler_borrowRemoteData | ( | _in_ | ) | (_in_)->recv_buffer |
#define Paso_Coupler_getLocalLength | ( | _in_ | ) | ( (_in_)->connector->send->local_length ) |
Referenced by Paso_Coupler_copyAll().
#define Paso_Coupler_getNumOverlapComponents | ( | _in_ | ) | ((_in_)->connector->recv->numSharedComponents) |
Referenced by Paso_SystemMatrix_getColOverlap(), and Paso_SystemMatrix_getRowOverlap().
#define Paso_Coupler_getNumOverlapValues | ( | _in_ | ) | ( Paso_Coupler_getNumOverlapComponents(_in_) * (_in_)->block_size ) |
Referenced by Paso_Coupler_fillOverlap(), and Paso_Coupler_max().
#define Paso_Coupler_getNumSharedComponents | ( | _in_ | ) | ((_in_)->connector->send->numSharedComponents) |
#define Paso_Coupler_getNumSharedValues | ( | _in_ | ) | ( Paso_Coupler_getNumSharedComponents(_in_) * (_in_)->block_size ) |
typedef struct Paso_Connector Paso_Connector |
typedef struct Paso_Coupler Paso_Coupler |
PASO_DLL_API Paso_Connector* Paso_Connector_alloc | ( | Paso_SharedComponents * | send, |
Paso_SharedComponents * | recv | ||
) |
References Esys_checkPtr(), Esys_MPIInfo_getReference(), Esys_noError(), Esys_resetError(), Esys_setError(), Paso_SharedComponents::local_length, MEMALLOC, Paso_Connector::mpi_info, Paso_SharedComponents::mpi_info, Paso_Connector_free(), Paso_SharedComponents_getReference(), Paso_Connector::recv, Paso_Connector::reference_counter, Paso_Connector::send, and SYSTEM_ERROR.
Referenced by Dudley_Mesh_createDOFMappingAndCoupling(), Finley_Mesh_createDOFMappingAndCoupling(), Paso_Connector_unroll(), Paso_Preconditioner_AMG_buildInterpolationOperator(), Paso_Preconditioner_AMG_buildInterpolationOperatorBlock(), Paso_Preconditioner_AMG_getProlongation(), Paso_Preconditioner_AMG_getRestriction(), Paso_SystemMatrix_loadMM_toCSC(), and Paso_SystemMatrix_loadMM_toCSR().
References Paso_Connector_unroll().
PASO_DLL_API void Paso_Connector_free | ( | Paso_Connector * | ) |
References Esys_MPIInfo_free(), MEMFREE, Paso_Connector::mpi_info, Paso_SharedComponents_free(), Paso_Connector::recv, Paso_Connector::reference_counter, and Paso_Connector::send.
Referenced by Dudley_Mesh_createDOFMappingAndCoupling(), Dudley_Mesh_createNodeFileMappings(), Dudley_NodeFile_freeTable(), Finley_Mesh_createDOFMappingAndCoupling(), Finley_Mesh_createNodeFileMappings(), Finley_NodeFile_freeTable(), Paso_Connector_alloc(), Paso_Connector_unroll(), Paso_Coupler_free(), Paso_Preconditioner_AMG_buildInterpolationOperator(), Paso_Preconditioner_AMG_buildInterpolationOperatorBlock(), Paso_Preconditioner_AMG_getProlongation(), Paso_Preconditioner_AMG_getRestriction(), Paso_SystemMatrix_loadMM_toCSC(), Paso_SystemMatrix_loadMM_toCSR(), Paso_SystemMatrixPattern_free(), and Paso_SystemMatrixPattern_unrollBlocks().
References Paso_Connector::reference_counter.
Referenced by Paso_Coupler_alloc(), Paso_SystemMatrixPattern_alloc(), and Paso_SystemMatrixPattern_unrollBlocks().
PASO_DLL_API Paso_Connector* Paso_Connector_unroll | ( | Paso_Connector * | in, |
index_t | block_size | ||
) |
References Esys_noError(), Paso_SharedComponents::local_length, Paso_Connector::mpi_info, Paso_SharedComponents::neighbor, Paso_SharedComponents::numNeighbors, Paso_SharedComponents::offsetInShared, Paso_Connector_alloc(), Paso_Connector_free(), 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_DLL_API Paso_Coupler* Paso_Coupler_alloc | ( | Paso_Connector * | , |
dim_t | blockSize | ||
) |
References Paso_Coupler::block_size, Paso_Coupler::connector, Paso_Coupler::data, Esys_checkPtr(), Esys_MPIInfo_getReference(), Esys_noError(), Esys_resetError(), FALSE, Paso_Coupler::in_use, MEMALLOC, Paso_Connector::mpi_info, Paso_Coupler::mpi_info, Paso_Coupler::mpi_requests, Paso_Coupler::mpi_stati, Paso_SharedComponents::numNeighbors, Paso_SharedComponents::numSharedComponents, Paso_Connector_getReference(), Paso_Coupler_free(), Paso_Connector::recv, Paso_Coupler::recv_buffer, Paso_Coupler::reference_counter, Paso_Connector::send, Paso_Coupler::send_buffer, and Esys_MPIInfo::size.
Referenced by Dudley_Assemble_CopyNodalData(), Finley_Assemble_CopyNodalData(), Paso_FCT_FluxLimiter_alloc(), Paso_FCT_Solver_alloc(), Paso_Preconditioner_AMG_CIJPCoarsening(), Paso_Preconditioner_AMG_extendB(), Paso_Preconditioner_AMG_setStrongConnections(), Paso_Preconditioner_AMG_setStrongConnections_Block(), Paso_SystemMatrix_alloc(), Paso_SystemMatrix_copyRemoteCoupleBlock(), Paso_SystemMatrix_extendedRowsForST(), Paso_SystemMatrix_fillWithGlobalCoordinates(), Paso_SystemMatrix_mergeMainAndCouple_CSR_OFFSET0(), and Paso_SystemMatrix_mergeMainAndCouple_CSR_OFFSET0_Block().
PASO_DLL_API void Paso_Coupler_copyAll | ( | const Paso_Coupler * | src, |
Paso_Coupler * | target | ||
) |
PASO_DLL_API void Paso_Coupler_fillOverlap | ( | const dim_t | n, |
double * | x, | ||
Paso_Coupler * | coupler | ||
) |
PASO_DLL_API double* Paso_Coupler_finishCollect | ( | Paso_Coupler * | self | ) |
References Paso_Coupler::connector, Esys_setError(), FALSE, Paso_Coupler::in_use, 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, Esys_MPIInfo::size, and SYSTEM_ERROR.
Referenced by Dudley_Assemble_CopyNodalData(), Finley_Assemble_CopyNodalData(), Paso_Coupler_fillOverlap(), Paso_Coupler_max(), Paso_FCT_FluxLimiter_addLimitedFluxes_Complete(), Paso_FCT_FluxLimiter_setU_tilda(), Paso_FCT_Solver_update_LCN(), Paso_FCT_Solver_updateNL(), Paso_Preconditioner_AMG_extendB(), Paso_Preconditioner_AMG_setStrongConnections(), Paso_Preconditioner_AMG_setStrongConnections_Block(), Paso_SystemMatrix_copyRemoteCoupleBlock(), Paso_SystemMatrix_extendedRowsForST(), Paso_SystemMatrix_fillWithGlobalCoordinates(), Paso_SystemMatrix_finishColCollect(), Paso_SystemMatrix_finishRowCollect(), Paso_SystemMatrix_mergeMainAndCouple_CSR_OFFSET0(), and Paso_SystemMatrix_mergeMainAndCouple_CSR_OFFSET0_Block().
PASO_DLL_API void Paso_Coupler_free | ( | Paso_Coupler * | in | ) |
References Paso_Coupler::connector, Esys_MPIInfo_free(), MEMFREE, Paso_Coupler::mpi_info, Paso_Coupler::mpi_requests, Paso_Coupler::mpi_stati, Paso_Connector_free(), Paso_Coupler::recv_buffer, Paso_Coupler::reference_counter, and Paso_Coupler::send_buffer.
Referenced by Dudley_Assemble_CopyNodalData(), Finley_Assemble_CopyNodalData(), Paso_Coupler_alloc(), Paso_FCT_FluxLimiter_free(), Paso_FCT_Solver_free(), Paso_Preconditioner_AMG_CIJPCoarsening(), Paso_Preconditioner_AMG_extendB(), Paso_Preconditioner_AMG_setStrongConnections(), Paso_Preconditioner_AMG_setStrongConnections_Block(), Paso_SystemMatrix_copyRemoteCoupleBlock(), Paso_SystemMatrix_extendedRowsForST(), Paso_SystemMatrix_fillWithGlobalCoordinates(), Paso_SystemMatrix_free(), Paso_SystemMatrix_mergeMainAndCouple_CSR_OFFSET0(), and Paso_SystemMatrix_mergeMainAndCouple_CSR_OFFSET0_Block().
References Paso_Coupler::reference_counter.
PASO_DLL_API void Paso_Coupler_max | ( | const dim_t | n, |
double * | x, | ||
Paso_Coupler * | coupler | ||
) |
PASO_DLL_API void Paso_Coupler_startCollect | ( | Paso_Coupler * | self, |
const double * | in | ||
) |
References Paso_Coupler::block_size, Esys_MPIInfo::comm, Paso_Coupler::connector, Paso_Coupler::data, Esys_setError(), Paso_Coupler::in_use, MPI_DOUBLE, Paso_Coupler::mpi_info, Paso_Coupler::mpi_requests, Esys_MPIInfo::msg_tag_counter, Paso_SharedComponents::neighbor, Paso_SharedComponents::numNeighbors, Paso_SharedComponents::numSharedComponents, Paso_SharedComponents::offsetInShared, Esys_MPIInfo::rank, Paso_Connector::recv, Paso_Coupler::recv_buffer, Paso_Connector::send, Paso_Coupler::send_buffer, Paso_SharedComponents::shared, Esys_MPIInfo::size, SYSTEM_ERROR, and TRUE.
Referenced by Dudley_Assemble_CopyNodalData(), Finley_Assemble_CopyNodalData(), Paso_Coupler_fillOverlap(), Paso_Coupler_max(), Paso_FCT_FluxLimiter_addLimitedFluxes_Start(), Paso_FCT_FluxLimiter_setU_tilda(), Paso_FCT_Solver_update_LCN(), Paso_FCT_Solver_updateNL(), Paso_Preconditioner_AMG_extendB(), Paso_Preconditioner_AMG_setStrongConnections(), Paso_Preconditioner_AMG_setStrongConnections_Block(), Paso_SystemMatrix_copyRemoteCoupleBlock(), Paso_SystemMatrix_extendedRowsForST(), Paso_SystemMatrix_fillWithGlobalCoordinates(), Paso_SystemMatrix_mergeMainAndCouple_CSR_OFFSET0(), Paso_SystemMatrix_mergeMainAndCouple_CSR_OFFSET0_Block(), Paso_SystemMatrix_startColCollect(), and Paso_SystemMatrix_startRowCollect().