ScaLAPACKFX
|
Contains the linecomm type. More...
Data Types | |
type | linecomm |
Type for communicating a row or a column of a distributed matrix. More... | |
Public Member Functions | |
subroutine | setblock_slave_real (self, mygrid, ii, ib, locmtx) |
Sets the given block of the distributed matrix (slave, real). | |
subroutine | setblock_slave_dreal (self, mygrid, ii, ib, locmtx) |
Sets the given block of the distributed matrix (slave, dreal). | |
subroutine | setblock_slave_complex (self, mygrid, ii, ib, locmtx) |
Sets the given block of the distributed matrix (slave, complex). | |
subroutine | setblock_slave_dcomplex (self, mygrid, ii, ib, locmtx) |
Sets the given block of the distributed matrix (slave, dcomplex). | |
subroutine | setline_master_int (self, mygrid, ii, buffer, locmtx) |
Sets an entire row/column of a distributed matrix (master, int) | |
Private Member Functions | |
subroutine | init (self, mygrid, desc, rowcol, iorow, iocol) |
Initializes a linecomm instance. | |
integer function | getnrblocks (self) |
Returns the nr. of blocks along the given row or column. | |
integer function | getblocksize (self, ib) |
Returns the size of a block with the given index. | |
subroutine | getblock_master_int (self, mygrid, ii, ib, locmtx, buffer) |
Returns the given block of the distributed matrix (master, int). | |
subroutine | getblock_master_real (self, mygrid, ii, ib, locmtx, buffer) |
Returns the given block of the distributed matrix (master, real). | |
subroutine | getblock_master_dreal (self, mygrid, ii, ib, locmtx, buffer) |
Returns the given block of the distributed matrix (master, dreal). | |
subroutine | getblock_master_complex (self, mygrid, ii, ib, locmtx, buffer) |
Returns the given block of the distributed matrix (master, complex). | |
subroutine | getblock_master_dcomplex (self, mygrid, ii, ib, locmtx, buffer) |
Returns the given block of the distributed matrix (master, dcomplex). | |
subroutine | getblock_slave_int (self, mygrid, ii, ib, locmtx) |
Returns the given block of the distributed matrix (slave, int). | |
subroutine | getblock_slave_real (self, mygrid, ii, ib, locmtx) |
Returns the given block of the distributed matrix (slave, real). | |
subroutine | getblock_slave_dreal (self, mygrid, ii, ib, locmtx) |
Returns the given block of the distributed matrix (slave, dreal). | |
subroutine | getblock_slave_complex (self, mygrid, ii, ib, locmtx) |
Returns the given block of the distributed matrix (slave, complex). | |
subroutine | getblock_slave_dcomplex (self, mygrid, ii, ib, locmtx) |
Returns the given block of the distributed matrix (slave, dcomplex). | |
subroutine | getline_master_int (self, mygrid, ii, locmtx, buffer) |
Returns an entire row/column of a distributed matrix (master, int) | |
subroutine | getline_master_real (self, mygrid, ii, locmtx, buffer) |
Returns an entire row/column of a distributed matrix (master, real) | |
subroutine | getline_master_dreal (self, mygrid, ii, locmtx, buffer) |
Returns an entire row/column of a distributed matrix (master, dreal) | |
subroutine | getline_master_complex (self, mygrid, ii, locmtx, buffer) |
Returns an entire row/column of a distributed matrix (master, complex) | |
subroutine | getline_master_dcomplex (self, mygrid, ii, locmtx, buffer) |
Returns an entire row/column of a distributed matrix (master, dcomplex) | |
subroutine | getline_slave_int (self, mygrid, ii, locmtx) |
Returns the entire row/column of a distributed matrix (slave) | |
subroutine | getline_slave_real (self, mygrid, ii, locmtx) |
Returns the entire row/column of a distributed matrix (slave) | |
subroutine | getline_slave_dreal (self, mygrid, ii, locmtx) |
Returns the entire row/column of a distributed matrix (slave) | |
subroutine | getline_slave_complex (self, mygrid, ii, locmtx) |
Returns the entire row/column of a distributed matrix (slave) | |
subroutine | getline_slave_dcomplex (self, mygrid, ii, locmtx) |
Returns the entire row/column of a distributed matrix (slave) | |
subroutine | setblock_master_int (self, mygrid, ii, ib, buffer, locmtx) |
Sets the given block of the distributed matrix (master, int). | |
subroutine | setblock_master_real (self, mygrid, ii, ib, buffer, locmtx) |
Sets the given block of the distributed matrix (master, real). | |
subroutine | setblock_master_dreal (self, mygrid, ii, ib, buffer, locmtx) |
Sets the given block of the distributed matrix (master, dreal). | |
subroutine | setblock_master_complex (self, mygrid, ii, ib, buffer, locmtx) |
Sets the given block of the distributed matrix (master, complex). | |
subroutine | setblock_master_dcomplex (self, mygrid, ii, ib, buffer, locmtx) |
Sets the given block of the distributed matrix (master, dcomplex). | |
subroutine | setblock_slave_int (self, mygrid, ii, ib, locmtx) |
Sets the given block of the distributed matrix (slave, int). | |
subroutine | setline_master_real (self, mygrid, ii, buffer, locmtx) |
Sets an entire row/column of a distributed matrix (master, real) | |
subroutine | setline_master_dreal (self, mygrid, ii, buffer, locmtx) |
Sets an entire row/column of a distributed matrix (master, dreal) | |
subroutine | setline_master_complex (self, mygrid, ii, buffer, locmtx) |
Sets an entire row/column of a distributed matrix (master, complex) | |
subroutine | setline_master_dcomplex (self, mygrid, ii, buffer, locmtx) |
Sets an entire row/column of a distributed matrix (master, dcomplex) | |
subroutine | setline_slave_int (self, mygrid, ii, locmtx) |
Sets the entire row/column of a distributed matrix (slave) | |
subroutine | setline_slave_real (self, mygrid, ii, locmtx) |
Sets the entire row/column of a distributed matrix (slave) | |
subroutine | setline_slave_dreal (self, mygrid, ii, locmtx) |
Sets the entire row/column of a distributed matrix (slave) | |
subroutine | setline_slave_complex (self, mygrid, ii, locmtx) |
Sets the entire row/column of a distributed matrix (slave) | |
subroutine | setline_slave_dcomplex (self, mygrid, ii, locmtx) |
Sets the entire row/column of a distributed matrix (slave) | |
Contains the linecomm type.
|
private |
Returns the given block of the distributed matrix (master, complex).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
locmtx | Local part of the global matrix. |
buffer | Contains the given piece of the distributed matrix on exit. Its size should be greater than or equal to the BLACS block size along that dimension. The actual number of elements for a given block can be queried via the getblocksize() call. |
|
private |
Returns the given block of the distributed matrix (master, dcomplex).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
locmtx | Local part of the global matrix. |
buffer | Contains the given piece of the distributed matrix on exit. Its size should be greater than or equal to the BLACS block size along that dimension. The actual number of elements for a given block can be queried via the getblocksize() call. |
|
private |
Returns the given block of the distributed matrix (master, dreal).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
locmtx | Local part of the global matrix. |
buffer | Contains the given piece of the distributed matrix on exit. Its size should be greater than or equal to the BLACS block size along that dimension. The actual number of elements for a given block can be queried via the getblocksize() call. |
|
private |
Returns the given block of the distributed matrix (master, int).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
locmtx | Local part of the global matrix. |
buffer | Contains the given piece of the distributed matrix on exit. Its size should be greater than or equal to the BLACS block size along that dimension. The actual number of elements for a given block can be queried via the getblocksize() call. |
|
private |
Returns the given block of the distributed matrix (master, real).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
locmtx | Local part of the global matrix. |
buffer | Contains the given piece of the distributed matrix on exit. Its size should be greater than or equal to the BLACS block size along that dimension. The actual number of elements for a given block can be queried via the getblocksize() call. |
|
private |
Returns the given block of the distributed matrix (slave, complex).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
locmtx | Local part of the global matrix. |
|
private |
Returns the given block of the distributed matrix (slave, dcomplex).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
locmtx | Local part of the global matrix. |
|
private |
Returns the given block of the distributed matrix (slave, dreal).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
locmtx | Local part of the global matrix. |
|
private |
Returns the given block of the distributed matrix (slave, int).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
locmtx | Local part of the global matrix. |
|
private |
Returns the given block of the distributed matrix (slave, real).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
locmtx | Local part of the global matrix. |
|
private |
Returns the size of a block with the given index.
self | Instance. |
ib | Block index. |
|
private |
Returns an entire row/column of a distributed matrix (master, complex)
self | Instance. |
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to collect. |
locmtx | Local part of the global matrix. |
buffer | Contains the collected line on exit. Its size should be big enough to contain the result (greater or equal to the size of the distributed matrix along that direction). |
|
private |
Returns an entire row/column of a distributed matrix (master, dcomplex)
self | Instance. |
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to collect. |
locmtx | Local part of the global matrix. |
buffer | Contains the collected line on exit. Its size should be big enough to contain the result (greater or equal to the size of the distributed matrix along that direction). |
|
private |
Returns an entire row/column of a distributed matrix (master, dreal)
self | Instance. |
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to collect. |
locmtx | Local part of the global matrix. |
buffer | Contains the collected line on exit. Its size should be big enough to contain the result (greater or equal to the size of the distributed matrix along that direction). |
|
private |
Returns an entire row/column of a distributed matrix (master, int)
self | Instance. |
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to collect. |
locmtx | Local part of the global matrix. |
buffer | Contains the collected line on exit. Its size should be big enough to contain the result (greater or equal to the size of the distributed matrix along that direction). |
|
private |
Returns an entire row/column of a distributed matrix (master, real)
self | Instance. |
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to collect. |
locmtx | Local part of the global matrix. |
buffer | Contains the collected line on exit. Its size should be big enough to contain the result (greater or equal to the size of the distributed matrix along that direction). |
|
private |
Returns the entire row/column of a distributed matrix (slave)
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to collect. |
locmtx | Local part of the global matrix. |
|
private |
Returns the entire row/column of a distributed matrix (slave)
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to collect. |
locmtx | Local part of the global matrix. |
|
private |
Returns the entire row/column of a distributed matrix (slave)
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to collect. |
locmtx | Local part of the global matrix. |
|
private |
Returns the entire row/column of a distributed matrix (slave)
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to collect. |
locmtx | Local part of the global matrix. |
|
private |
Returns the entire row/column of a distributed matrix (slave)
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to collect. |
locmtx | Local part of the global matrix. |
|
private |
Returns the nr. of blocks along the given row or column.
self | Instance. |
|
private |
Initializes a linecomm instance.
self | Initialized instance on exit. |
desc | Descriptor of distributed matrix. |
rowcol | If "r" or "R", a given row of the matrix is collected, otherwise a given column. |
iorow | Row of process doing the io (default: row of master). |
iocol | Column of process doing the io (default: column of master). |
|
private |
Sets the given block of the distributed matrix (master, complex).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
buffer | Contains the given piece to be distributed. It should contain the appropriate number of elements for the given block, as returned by the getblocksize() call. Its size can be bigger than that. |
locmtx | Local part of the global matrix. |
|
private |
Sets the given block of the distributed matrix (master, dcomplex).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
buffer | Contains the given piece to be distributed. It should contain the appropriate number of elements for the given block, as returned by the getblocksize() call. Its size can be bigger than that. |
locmtx | Local part of the global matrix. |
|
private |
Sets the given block of the distributed matrix (master, dreal).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
buffer | Contains the given piece to be distributed. It should contain the appropriate number of elements for the given block, as returned by the getblocksize() call. Its size can be bigger than that. |
locmtx | Local part of the global matrix. |
|
private |
Sets the given block of the distributed matrix (master, int).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
buffer | Contains the given piece to be distributed. It should contain the appropriate number of elements for the given block, as returned by the getblocksize() call. Its size can be bigger than that. |
locmtx | Local part of the global matrix. |
|
private |
Sets the given block of the distributed matrix (master, real).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
buffer | Contains the given piece to be distributed. It should contain the appropriate number of elements for the given block, as returned by the getblocksize() call. Its size can be bigger than that. |
locmtx | Local part of the global matrix. |
subroutine linecomm_module::setblock_slave_complex | ( | class(linecomm), intent(in) | self, |
type(blacsgrid), intent(in) | mygrid, | ||
integer, intent(in) | ii, | ||
integer, intent(in) | ib, | ||
complex(sp), dimension(:,:), intent(inout), target | locmtx | ||
) |
Sets the given block of the distributed matrix (slave, complex).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
locmtx | Local part of the global matrix. |
subroutine linecomm_module::setblock_slave_dcomplex | ( | class(linecomm), intent(in) | self, |
type(blacsgrid), intent(in) | mygrid, | ||
integer, intent(in) | ii, | ||
integer, intent(in) | ib, | ||
complex(dp), dimension(:,:), intent(inout), target | locmtx | ||
) |
Sets the given block of the distributed matrix (slave, dcomplex).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
locmtx | Local part of the global matrix. |
subroutine linecomm_module::setblock_slave_dreal | ( | class(linecomm), intent(in) | self, |
type(blacsgrid), intent(in) | mygrid, | ||
integer, intent(in) | ii, | ||
integer, intent(in) | ib, | ||
real(dp), dimension(:,:), intent(inout), target | locmtx | ||
) |
Sets the given block of the distributed matrix (slave, dreal).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
locmtx | Local part of the global matrix. |
|
private |
Sets the given block of the distributed matrix (slave, int).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
locmtx | Local part of the global matrix. |
subroutine linecomm_module::setblock_slave_real | ( | class(linecomm), intent(in) | self, |
type(blacsgrid), intent(in) | mygrid, | ||
integer, intent(in) | ii, | ||
integer, intent(in) | ib, | ||
real(sp), dimension(:,:), intent(inout), target | locmtx | ||
) |
Sets the given block of the distributed matrix (slave, real).
self | Instance. |
mygrid | BLACS descriptor. |
ii | Row/Column index. |
ib | Block index within given row/column. |
locmtx | Local part of the global matrix. |
|
private |
Sets an entire row/column of a distributed matrix (master, complex)
self | Instance. |
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to set. |
buffer | Contains the line to distribute. It should contain all elements along the line. Its size can be bigger. |
locmtx | Local part of the global matrix. |
|
private |
Sets an entire row/column of a distributed matrix (master, dcomplex)
self | Instance. |
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to set. |
buffer | Contains the line to distribute. It should contain all elements along the line. Its size can be bigger. |
locmtx | Local part of the global matrix. |
|
private |
Sets an entire row/column of a distributed matrix (master, dreal)
self | Instance. |
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to set. |
buffer | Contains the line to distribute. It should contain all elements along the line. Its size can be bigger. |
locmtx | Local part of the global matrix. |
subroutine linecomm_module::setline_master_int | ( | class(linecomm), intent(in) | self, |
type(blacsgrid), intent(in) | mygrid, | ||
integer, intent(in) | ii, | ||
integer, dimension(:), intent(in) | buffer, | ||
integer, dimension(:,:), intent(inout) | locmtx | ||
) |
Sets an entire row/column of a distributed matrix (master, int)
self | Instance. |
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to set. |
buffer | Contains the line to distribute. It should contain all elements along the line. Its size can be bigger. |
locmtx | Local part of the global matrix. |
|
private |
Sets an entire row/column of a distributed matrix (master, real)
self | Instance. |
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to set. |
buffer | Contains the line to distribute. It should contain all elements along the line. Its size can be bigger. |
locmtx | Local part of the global matrix. |
|
private |
Sets the entire row/column of a distributed matrix (slave)
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to set. |
locmtx | Local part of the global matrix. |
|
private |
Sets the entire row/column of a distributed matrix (slave)
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to set. |
locmtx | Local part of the global matrix. |
|
private |
Sets the entire row/column of a distributed matrix (slave)
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to set. |
locmtx | Local part of the global matrix. |
|
private |
Sets the entire row/column of a distributed matrix (slave)
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to set. |
locmtx | Local part of the global matrix. |
|
private |
Sets the entire row/column of a distributed matrix (slave)
mygrid | BLACS descriptor |
ii | Number of the line (row or column) to set. |
locmtx | Local part of the global matrix. |