ScalES-PPM
Data Types | Functions/Subroutines | Variables
ppm_graph_csr Module Reference

data structure for representation of graph in csr format More...

Data Types

type  graph_csr
 
interface  num_edges
 number of edges More...
 
interface  num_nodes
 number of vertices More...
 
interface  write_graph
 serialize graph to file More...
 
interface  build_graph
 construct graph from rectilinear or adjacency matrix More...
 
interface  build_graph_mt
 construct graph from rectilinear in multi-threaded program More...
 
interface  operator(==)
 compare whether two graphs are equal More...
 
interface  graph_is_symmetric
 

Functions/Subroutines

pure integer function num_edges_csr (csr)
 
pure integer function num_nodes_csr (csr)
 
subroutine graph_csr_from_adj_matrix_i4 (csr, adj, assert_undirected, node_offset)
 Construct CSR graph object from adjacency matrix. More...
 
subroutine graph_csr_from_rect_i4 (csr, rect)
 
subroutine graph_csr_from_rect_mt_i4 (csr, rect)
 
subroutine graph_csr_from_irect_mt_i4 (csr, rect)
 
subroutine csr_rect_alloc (csr, rect)
 
subroutine write_graph_csr_plain (lun, csr, node_bias, flags)
 
subroutine write_graph_csr_nw (lun, csr, node_weights, node_bias, flags)
 
subroutine write_graph_csr_ew (lun, csr, edge_weights, node_bias, flags)
 
subroutine write_graph_csr_nwm (lun, csr, node_weights, node_bias, flags)
 
subroutine write_graph_csr_nwm_ew (lun, csr, node_weights, edge_weights, node_bias, flags)
 
subroutine write_graph_csr_nwmo_ewo (lun, csr, node_weights, edge_weights, node_bias, flags)
 
elemental logical function graph_csr_equal_i4 (a, b)
 
subroutine, public read_graph (lun, csr, node_weights, edge_weights, ierror)
 
integer(i4) function edge_index (graph, edge)
 
subroutine, public assign_edge_weight (graph, edge, weights, weight)
 
subroutine, public assign_symmetric_edge_weight (graph, edge, weights, weight)
 
logical function graph_is_symmetric_csr (graph)
 
logical function graph_is_symmetric_csr_ew (graph, edge_weights)
 

Variables

integer, parameter, public graph_io_undirected =1
 
character(len= *), parameter filename = 'ppm_graph_csr.f90'
 

Detailed Description

data structure for representation of graph in csr format

Function/Subroutine Documentation

◆ graph_csr_from_adj_matrix_i4()

subroutine ppm_graph_csr::graph_csr_from_adj_matrix_i4 ( type(graph_csr), intent(inout)  csr,
logical, dimension(:, :), intent(in)  adj,
logical, intent(in), optional  assert_undirected,
integer, intent(in), optional  node_offset 
)
private

Construct CSR graph object from adjacency matrix.

Parameters
csrgraph representation will be written to this argument
adjfor each edge from node u to node v, adj(v, u) must be true
assert_undirectedif given and .true., check symmetry of adj
node_offsetenter all node references with a bias of node_offset, defaults to 1

Das diesem Bericht zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung, und Forschung unter dem Förderkennzeichen 01IH08004E gefördert. Die Verantwortung für den Inhalt dieser Veröffentlichung liegt beim Autor.