In [1]:
%load_ext autoreload
%autoreload 2

In [2]:
import os
import sys
import numpy as np
import pandas as pd
import time

In [3]:
MNM_nb_folder = os.path.join('..', '..', '..', 'side_project', 'network_builder')
sys.path.append(MNM_nb_folder)
python_lib_folder = os.path.join('..', '..', 'pylib')
sys.path.append(python_lib_folder)

In [4]:
from MNM_nb import *
import MNMAPI
from DODE import *

In [7]:
a = MNMAPI.dta_api()

In [9]:
# a.initialize(os.path.join('..', '..', '..', 'data', 'input_files_PGH_emission'))

In [10]:
a.initialize(os.path.join('..', '..', '..', 'data', 'input_files_2link_fix'))


Out[10]:
0L

In [11]:
a.register_links(np.arange(1,5))


Out[11]:
0L

In [12]:
a.install_cc()


Out[12]:
0L

In [13]:
a.run_whole()


Out[13]:
0L

In [14]:
a.get_link_inflow(np.arange(0, 30), np.arange(0, 30) + 1)


Out[14]:
array([[ 50. ,   0. ,   0. ,   0. ,   0. ,   0. ,   0. ,   0. ,   0. ,
          0. ,   4. ,   0. ,   0. ,   0. ,   0. ,   0. ,   0. ,   0. ,
          0. ,   0. ,   4. ,   0. ,   0. ,   0. ,   0. ,   0. ,   0. ,
          0. ,   0. ,   0. ],
       [ 30. ,   0. ,   0. ,   0. ,   0. ,   0. ,   0. ,   0. ,   0. ,
          0. ,   4. ,   0. ,   0. ,   0. ,   0. ,   0. ,   0. ,   0. ,
          0. ,   0. ,   4. ,   0. ,   0. ,   0. ,   0. ,   0. ,   0. ,
          0. ,   0. ,   0. ],
       [  0. ,   3. ,   3. ,   3. ,   3. ,   3. ,   3. ,   3. ,   3. ,
          3. ,   3. ,   3. ,   3. ,   3. ,   3. ,   3. ,   3. ,   3. ,
          3. ,   3. ,   3. ,   3. ,   3. ,   3. ,   3. ,   3. ,   3. ,
          3. ,   3. ,   3. ],
       [  0. ,   0. ,   0. ,   0. ,   0. ,   0. ,   0. ,   0. ,   0. ,
          0. ,   0. ,   0. ,   0. ,   3. ,   3. ,   2.6,   2.7,   2.7,
          2.7,   2.6,   2.7,   2.7,   2.7,   2.7,   2.7,   2.7,   2.7,
          2.7,   2.7,   2.6]])

In [ ]:

SR41


In [5]:
data_folder = os.path.join('..', '..', '..', 'data', 'input_files_SR41_fix')

In [6]:
nb = MNM_network_builder()
nb.load_from_folder(data_folder)


MNM_config
MNM_pathtable

In [22]:
whole_observable_list = list(map(lambda x: x.ID, filter(lambda x: x.ffs < 1000, nb.link_list)))
obserable_list = list(filter(lambda x: np.random.rand() < 0.8, whole_observable_list))
paths_list = range(39561)

config = dict()
config['use_link_flow'] = True
config['use_link_tt'] = False
config['link_flow_weight'] = 1
config['link_tt_weight'] = 1
config['num_data'] = 1
config['observed_links'] = obserable_list
config['paths_list'] = paths_list

In [23]:
dode = DODE(nb, config)

In [24]:
f_e = dode.init_path_flow()

In [25]:
dta = dode._run_simulation(f_e)

In [26]:
dta


Out[26]:
<MNMAPI.dta_api at 0x7fb4dd591260>

In [27]:
start = time.time()
dar1 = dode.get_dar(dta, f_e)
end = time.time()
print(end - start)


169.585990906

In [28]:
start = time.time()
dar2 = dode.get_dar2(dta, f_e)
end = time.time()
print(end - start)


124.004991055

In [29]:
dar1


Out[29]:
<8196x237366 sparse matrix of type '<type 'numpy.float64'>'
	with 1003868 stored elements in Compressed Sparse Row format>

In [30]:
dar2


Out[30]:
<8196x237366 sparse matrix of type '<type 'numpy.float64'>'
	with 1003868 stored elements in Compressed Sparse Row format>

In [31]:
np.abs(dar1 - dar2).sum()


Out[31]:
0.0

In [ ]: