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]:
In [11]:
a.register_links(np.arange(1,5))
Out[11]:
In [12]:
a.install_cc()
Out[12]:
In [13]:
a.run_whole()
Out[13]:
In [14]:
a.get_link_inflow(np.arange(0, 30), np.arange(0, 30) + 1)
Out[14]:
In [ ]:
In [5]:
data_folder = os.path.join('..', '..', '..', 'data', 'input_files_SR41_fix')
In [6]:
nb = MNM_network_builder()
nb.load_from_folder(data_folder)
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]:
In [27]:
start = time.time()
dar1 = dode.get_dar(dta, f_e)
end = time.time()
print(end - start)
In [28]:
start = time.time()
dar2 = dode.get_dar2(dta, f_e)
end = time.time()
print(end - start)
In [29]:
dar1
Out[29]:
In [30]:
dar2
Out[30]:
In [31]:
np.abs(dar1 - dar2).sum()
Out[31]:
In [ ]: