Example #1
0
int main(void) {
 igraph_real_t avg_path;
 igraph_t graph;
 igraph_vector_t dimvector;
 igraph_vector_t edges;
 int i;

 igraph_vector_init(&dimvector, 2);
 VECTOR(dimvector)[0]=30;
 VECTOR(dimvector)[1]=30;
 igraph_lattice(&graph, &dimvector, 0, IGRAPH_UNDIRECTED, 0, 1);
 igraph_rng_seed(igraph_rng_default(), 42);
 igraph_vector_init(&edges, 20);
 for (i=0; i<igraph_vector_size(&edges); i++) {
 VECTOR(edges)[i] = rand() % (int)igraph_vcount(&graph);
 }
 igraph_average_path_length(&graph, &avg_path, IGRAPH_UNDIRECTED, 1);
 printf("Average path length (lattice): %f\n", (double) avg_path);
 igraph_add_edges(&graph, &edges, 0);
 igraph_average_path_length(&graph, &avg_path, IGRAPH_UNDIRECTED, 1);
 printf("Average path length (randomized lattice): %f\n", (double) avg_path);

 igraph_vector_destroy(&dimvector);
 igraph_vector_destroy(&edges);
 igraph_destroy(&graph);
 return 0;
}
int main() {
  
  igraph_t g;
  igraph_real_t result;
  igraph_rng_t rng;
  igraph_rng_init(&rng, &igraph_rngtype_mt19937);
  
  igraph_barabasi_game(&g, 30, /*power=*/ 1, 30, 0, 0, /*A=*/ 1, 
		       IGRAPH_DIRECTED, IGRAPH_BARABASI_BAG,
		       /*start_from=*/ 0, &rng);
  igraph_average_path_length(&g, &result, IGRAPH_UNDIRECTED, 1);
  
/*   printf("Length of the average shortest paths: %f\n", (float) result); */
  
  igraph_destroy(&g);
  igraph_rng_destroy(&rng);
  return 0;
}
Example #3
0
double Graph::avgPathLength() {
  igraph_real_t res;
  igraph_average_path_length(graph, &res, 0, 0);
  return double(res);
} 
Example #4
0
double Graph::avgPathLength() const {
  igraph_real_t res;
  igraph_average_path_length(graph, &res, 0, 0);
  return ((double) res);
}