[0,0,1,1,-1], [0,0,-1,-1,1]] ).T # A <--> 0, B <--> 1, etc. region2gen = { 0 : [0,1], 1 : [2], 2 : [3,4] } symbols = numpy.matrix( [[0,1,1], [1,0,0], [0,1,1]] ) map_on_regions = DiGraph() map_on_regions.from_numpy_matrix( symbols ) if 1: hom_matrix = utils.load_matlab_matrix( 'henon_index.mat', 'hom_matrix' ) region2gen = utils.convert_matlab_gens( 'henon_gens.mat' ) map_on_regions = utils.index_map_to_region_map( hom_matrix, region2gen, shift=-1) if 0: hom_matrix = utils.load_matlab_matrix( 'leslie_index.mat', 'hom_matrix' ) region2gen = utils.convert_matlab_gens( 'leslie_gens.mat' ) map_on_regions = utils.index_map_to_region_map( hom_matrix, region2gen, shift=-1) ######################## #
2 : [3], 3 : [4], 4 : [5], 5 : [6,7] } adjmatrix = numpy.matrix( [[0,0,1,0,0,0], [0,0,0,1,0,0], [0,0,0,0,1,0], [1,1,0,0,0,0], [0,0,0,0,0,1], [1,1,0,0,0,0]] ) P = DiGraph() P.from_numpy_matrix( adjmatrix ) G = DiGraph( ) G.from_numpy_matrix( generators ) edgeset = defaultdict( list ) # length-1 walks k = 1 for s,t in P.edges(): r2g = ( regions[ s ], regions[ t ] ) edge_matrix = generators[ r2g[0],r2g[1] ] edgeset[k].append( Walk( s, t, set( [(s,t)] ), edge_matrix, k, sparse=False ) )