Esempio n. 1
0
 def emit_point(self, road1, road2 ) :
     #_, data1 = ROAD.obtain_edge( self.roadnet, road1, data_flag=True )
     #_, data2 = ROAD.obtain_edge( self.roadnet, road2, data_flag=True )
     
     p = roadprob.sample_onroad( road1, self.roadnet )
     q = roadprob.sample_onroad( road2, self.roadnet )
     
     self.output( (p,q) )
Esempio n. 2
0
def sample_demands( T, rategraph, roadnet, rate='rate' ) :
    demands = []
    point_on = lambda road : roadprob.sample_onroad( road, roadnet, 'length' )
    for road1, road2, data in rategraph.edges_iter( data=True ) :
        n = np.random.poisson( data.get( rate, 0. ) * T )
        newdems = [ demand( point_on( road1 ), point_on( road2 ) ) for i in range(n) ]
        demands.extend( newdems )
        
    return demands
def sample_demands( T, rategraph, roadnet, rate='rate' ) :
    demands = []
    point_on = lambda road : roadprob.sample_onroad( road, roadnet, 'length' )
    for road1, road2, data in rategraph.edges_iter( data=True ) :
        n = np.random.poisson( data.get( rate, 0. ) * T )
        #newdems = [ demand( point_on( road1 ), point_on( road2 ) ) for i in range(n) ]
        newdems = [ ( point_on( road1 ), point_on( road2 ) ) for i in range(n) ]
        demands.extend( newdems )
        
    numdem = len( demands )
    print 'sampled %d' % numdem
    debug_input()
    
    times = T * np.random.rand(numdem)
    script = sorted( zip( times, demands ) )
    return script