A Module For Simplfiying Per Element Operations on Matrices.
Given a triplet list, apply this procedure to each element.
Type | Intent | Optional | Attributes | Name | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
type(TripletList_r), | intent(in) | :: | inlist | The matrix to apply the procedure to. |
||||||||||||||||||||||||||||||
type(TripletList_r), | intent(inout) | :: | outlist | The matrix where each element has had proc called on it. |
||||||||||||||||||||||||||||||
public function proc(row, column, val) result(valid)The procedure to apply to each element. Arguments
Return Value logicalSet this to false to filter an element. |
||||||||||||||||||||||||||||||||||
integer, | intent(in), | optional | :: | num_slices_in | How many process slices to do this mapping on (default is 1) |
|||||||||||||||||||||||||||||
integer, | intent(in), | optional | :: | my_slice_in | What process slice this process should compute (default is 0). |
Given a triplet list, apply this procedure to each element.
Type | Intent | Optional | Attributes | Name | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
type(TripletList_c), | intent(in) | :: | inlist | The matrix to apply the procedure to. |
||||||||||||||||||||||||||||||
type(TripletList_c), | intent(inout) | :: | outlist | The matrix where each element has had proc called on it. |
||||||||||||||||||||||||||||||
public function proc(row, column, val) result(valid)The procedure to apply to each element. Arguments
Return Value logicalSet this to false to filter an element. |
||||||||||||||||||||||||||||||||||
integer, | intent(in), | optional | :: | num_slices_in | How many process slices to do this mapping on (default is 1) |
|||||||||||||||||||||||||||||
integer, | intent(in), | optional | :: | my_slice_in | What process slice this process should compute (default is 0). |
Given a triplet list, apply this procedure to each element.
Type | Intent | Optional | Attributes | Name | |||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
type(TripletList_r), | intent(in) | :: | inlist | The matrix to apply the procedure to. |
|||||||||||||||||||||||||||||||||||||
type(TripletList_r), | intent(inout) | :: | outlist | The matrix where each element has had proc called on it. |
|||||||||||||||||||||||||||||||||||||
public function proc(row, column, val, supp_in) result(valid)The procedure to apply to each element. Arguments
Return Value logicalSet this to false to filter an element. |
|||||||||||||||||||||||||||||||||||||||||
real(kind=NTREAL), | intent(in), | DIMENSION(:) | :: | supp_in | Any supplementary data you need to pass the map can packed here. |
||||||||||||||||||||||||||||||||||||
integer, | intent(in), | optional | :: | num_slices_in | How many process slices to do this mapping on (default is 1) |
||||||||||||||||||||||||||||||||||||
integer, | intent(in), | optional | :: | my_slice_in | What process slice this process should compute (default is 0). |
Given a triplet list, apply this procedure to each element.
Type | Intent | Optional | Attributes | Name | |||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
type(TripletList_c), | intent(in) | :: | inlist | The matrix to apply the procedure to. |
|||||||||||||||||||||||||||||||||||||
type(TripletList_c), | intent(inout) | :: | outlist | The matrix where each element has had proc called on it. |
|||||||||||||||||||||||||||||||||||||
public function proc(row, column, val, supp_in) result(valid)The procedure to apply to each element. Arguments
Return Value logicalSet this to false to filter an element. |
|||||||||||||||||||||||||||||||||||||||||
complex(kind=NTCOMPLEX), | intent(in), | DIMENSION(:) | :: | supp_in | Any supplementary data you need to pass the map can packed here. |
||||||||||||||||||||||||||||||||||||
integer, | intent(in), | optional | :: | num_slices_in | How many process slices to do this mapping on (default is 1) |
||||||||||||||||||||||||||||||||||||
integer, | intent(in), | optional | :: | my_slice_in | What process slice this process should compute (default is 0). |
Given a distributed matrix, apply this procedure to each element (real).
Type | Intent | Optional | Attributes | Name | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
type(Matrix_ps), | intent(in) | :: | inmat | The matrix to apply the procedure to. |
||||||||||||||||||||||||||||||
type(Matrix_ps), | intent(inout) | :: | outmat | The matrix where each element has had proc called on it. |
||||||||||||||||||||||||||||||
public function proc(row, column, val) result(valid)The procedure to apply to each element. Arguments
Return Value logicalSet this to false to filter an element. |
Given a distributed matrix, apply this procedure to each element (complex).
Type | Intent | Optional | Attributes | Name | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
type(Matrix_ps), | intent(in) | :: | inmat | The matrix to apply the procedure to. |
||||||||||||||||||||||||||||||
type(Matrix_ps), | intent(inout) | :: | outmat | The matrix where each element has had proc called on it. |
||||||||||||||||||||||||||||||
public function proc(row, column, val) result(valid)The procedure to apply to each element. Arguments
Return Value logicalSet this to false to filter an element. |