get_ith_conn Interface

interface

**m Connectivity/free_conn

NAME free_conn USAGE call free_conn(a2b)

DESCRIPTION Destructor

INPUTS a2b :: type(connectivity) The connectivity to be destroyed;


**f Connectivity/bcast_conn

NAME bcast_conn USAGE

 call bcast_conn(a2b)

DESCRIPTION Distribute a copy of the connectivity from process 0 to everybody else.

INPUTS a2b :: type(connectivity) The connectivity to be broadcast;


**m Connectivity/get_ith_conn

NAME get_ith_conn USAGE call get_ith_conn(ith_conn,a2b,i)

DESCRIPTION Getter. Access the I-th row in the connectivity table. Returns a pointer to the requested row. Note: returning a pointer and not a copy, because it is used in tight loops; user should NEVER modify nor deallocate the returned pointer.

INPUTS a2b :: type(connectivity), intent(in), target The connectivity to be accessed; i :: integer Request access to the I-th row; OUTPUT ith_conn(:) :: integer, pointer A pointer to the i-th row;


**m Connectivity/get_conn_csr

NAME get_conn_csr USAGE call get_conn_csr(a2b,lookup,conn)

DESCRIPTION Get a full copy of the connectivity table in CSR format. Being a copy the user may do as he/she pleases with it, and should remember to deallocate it.

INPUTS a2b :: type(connectivity), intent(in) The connectivity to be accessed; OUTPUT lookup(:) :: integer, allocatable conn(:) :: integer, allocatable A copy of the lookup table. The neighbours of item I are listed at CONN(lookup(i):lookup(i+1)-1)



Calls

interface~~get_ith_conn~~CallsGraph interface~get_ith_conn get_ith_conn proc~get_ith_conn get_ith_conn interface~get_ith_conn->proc~get_ith_conn

private module subroutine get_ith_conn(a2b, ith_conn, i)

Arguments

Type IntentOptional AttributesName
class(connectivity), intent(in), target:: a2b
integer, pointer:: ith_conn(:)
integer, intent(in) :: i