Author: ruschein
Date: 2009-12-18 16:29:03 -0800 (Fri, 18 Dec 2009)
New Revision: 18795
Modified:
cytoscape/trunk/testData/NNFData/generate_multi_level_networks
Log:
Work in progress.
Modified: cytoscape/trunk/testData/NNFData/generate_multi_level_networks
===================================================================
--- cytoscape/trunk/testData/NNFData/generate_multi_level_networks
2009-12-19 00:22:35 UTC (rev 18794)
+++ cytoscape/trunk/testData/NNFData/generate_multi_level_networks
2009-12-19 00:29:03 UTC (rev 18795)
@@ -1,6 +1,6 @@
#! /usr/bin/env python
"""
-Program for generating random multi-level nested network files.
+Program for generating multi-level nested network files.
"""
from sets import Set
from random import randint
@@ -37,7 +37,7 @@
sys.exit(1)
-# Returns the approx. sum of nodes and edges per network.
+# Returns the approx. no of nodes per network.
def CalcApproxNetworkSize(levels, object_count):
def f(x):
return math.pow(x, levels + 1) - (object_count + 1) * x + object_count
@@ -78,12 +78,11 @@
(levels, object_count, link_factor) = ProcessArgs(sys.argv)
-approx_no_of_objects_per_network = CalcApproxNetworkSize(levels, object_count)
-nodes_per_network = approx_no_of_objects_per_network / (1.0 +
link_factor)
-edges_per_network = nodes_per_network * link_factor
-nodes_per_network = int(nodes_per_network + 0.5) # Round to
nearest integer.
-edges_per_network = int(edges_per_network + 0.5) # Round to
nearest integer.
-individual_network_size = nodes_per_network + edges_per_network
+approx_total_node_count = object_count / (1.0 + link_factor)
+nodes_per_network = CalcApproxNetworkSize(levels,
approx_total_node_count)
+edges_per_network = nodes_per_network * link_factor
+nodes_per_network = int(nodes_per_network + 0.5) # Round to nearest
integer.
+edges_per_network = int(edges_per_network + 0.5) # Round to nearest
integer.
# Create a header comment for the output file:
print "# Generated with " + sys.argv[0]
@@ -93,6 +92,7 @@
print "# nodes_per_network = " + str(nodes_per_network)
print "# edges_per_network = " + str(edges_per_network)
+actual_object_count = 0 # Counts the sum of all nodes and edges.
no_of_networks = 1 # The number of networks on a level.
for level in range(1, levels + 1):
if level > 1:
@@ -105,9 +105,12 @@
network_name = network_name_prefix + str(network)
node_name_prefix = "L" + str(level + 1) + "_"
GenerateNetwork(network_name, node_name_prefix, nodes_per_network,
edges_per_network)
+ actual_object_count += nodes_per_network + edges_per_network
- no_of_networks *= individual_network_size
+ no_of_networks *= nodes_per_network
+print "#\n# Sum of all nodes plus edges = " + str(actual_object_count)
+
--
You received this message because you are subscribed to the Google Groups
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/cytoscape-cvs?hl=en.