MapTripletList Interface

public interface MapTripletList

Contents


Module Procedures

private subroutine MapTripletList_r(inlist, outlist, proc, num_slices_in, my_slice_in)

Given a triplet list, apply this procedure to each element.

Arguments

Type IntentOptional AttributesName
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
Type IntentOptional AttributesName
integer, intent(inout) :: row

The row value of an element.

integer, intent(inout) :: column

The column value of an element.

real(kind=NTREAL), intent(inout) :: val

The actual value of an element.

Return Value logical

Set 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).

private subroutine MapTripletList_c(inlist, outlist, proc, num_slices_in, my_slice_in)

Given a triplet list, apply this procedure to each element.

Arguments

Type IntentOptional AttributesName
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
Type IntentOptional AttributesName
integer, intent(inout) :: row

The row value of an element.

integer, intent(inout) :: column

The column value of an element.

complex(kind=NTCOMPLEX), intent(inout) :: val

The actual value of an element.

Return Value logical

Set 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).

private subroutine MapTripletListArray_r(inlist, outlist, proc, supp_in, num_slices_in, my_slice_in)

Given a triplet list, apply this procedure to each element.

Arguments

Type IntentOptional AttributesName
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
Type IntentOptional AttributesName
integer, intent(inout) :: row

The row value of an element.

integer, intent(inout) :: column

The column value of an element.

real(kind=NTREAL), intent(inout) :: val

The actual value of an element.

real(kind=NTREAL), intent(in), DIMENSION(:):: supp_in

Any supplementary data you need to pass the map can packed here.

Return Value logical

Set 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).

private subroutine MapTripletListArray_c(inlist, outlist, proc, supp_in, num_slices_in, my_slice_in)

Given a triplet list, apply this procedure to each element.

Arguments

Type IntentOptional AttributesName
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
Type IntentOptional AttributesName
integer, intent(inout) :: row

The row value of an element.

integer, intent(inout) :: column

The column value of an element.

complex(kind=NTCOMPLEX), intent(inout) :: val

The actual value of an element.

complex(kind=NTCOMPLEX), intent(in), DIMENSION(:):: supp_in

Any supplementary data you need to pass the map can packed here.

Return Value logical

Set 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).