|
DOUG 0.2
|
Functions/Subroutines | |
| type(SpMtx) | SpMtx_exchange (A, sends, M, lgi, lgj) |
| Exchange matrix elements between all processes and store into the new matrix. | |
| subroutine | SpMtx_localize (A, A_ghost, b, M) |
| Restructure and reindex matrix for local computation. | |
| type(SpMtx) SpMtx_distribution_mod::SpMtx_exchange | ( | type(SpMtx),intent(in) | A, |
| type(indlist),dimension(:),intent(in) | sends, | ||
| type(Mesh),intent(in) | M, | ||
| integer,dimension(:),intent(in) | lgi, | ||
| integer,dimension(:),intent(in) | lgj | ||
| ) |
Exchange matrix elements between all processes and store into the new matrix.
| A | matrix, which elements are to be sent |
| sends | indices of matrix elements to send to each neighbour |
| M | mesh that contains neighbour info |
| lgi | local to global for A row indices |
| lgj | local to global for A column indices |
Definition at line 22 of file SpMtx_distribution.F90.
References calcBufferSize(), DOUG_utils::DOUG_abort(), globals::MPI_fkind, and SpMtx_class::SpMtx_newInit().
Referenced by collectRestrictValues(), and distributeRestrictValues().
| subroutine SpMtx_distribution_mod::SpMtx_localize | ( | type(SpMtx),intent(inout) | A, |
| type(SpMtx),intent(inout) | A_ghost, | ||
| float(kind=rk),dimension(:),pointer | b, | ||
| type(Mesh) | M | ||
| ) |
Restructure and reindex matrix for local computation.
Definition at line 139 of file SpMtx_distribution.F90.
References SpMtx_class::D_SpMtx_ARRNG_COLS, SpMtx_class::D_SpMtx_ARRNG_ROWS, DOUG_utils::DOUG_abort(), globals::myrank, globals::numprocs, globals::sctls, SpMtx_arrangement::SpMtx_arrange(), SpMtx_arrangement::SpMtx_build_ghost(), SpMtx_arrangement::SpMtx_Build_lggl(), SpMtx_util::SpMtx_printRaw(), and globals::stream.
Referenced by Distribution_struct_mod::Distribution_struct_NewInit(), and Distribution_assm_mod::parallelDistributeAssembledInput().
1.7.3-20110217