Schedule appliances added

First trial of adding factor to change from multizone to unizone. Commented.
This commit is contained in:
Oriol Gavalda 2023-03-24 08:10:46 -04:00
parent 87d5e7c138
commit 60d5eb3087
4 changed files with 697 additions and 44 deletions

View File

@ -0,0 +1,221 @@
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"id": 1780,
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
-73.55164817172573,
45.60430406158321
],
[
-73.5516460718087,
45.60433386241789
],
[
-73.55156767161071,
45.60433106192903
],
[
-73.55115097163997,
45.60431646233491
],
[
-73.55114607213346,
45.604385461919605
],
[
-73.55114607213346,
45.60438556174432
],
[
-73.55118367188891,
45.60438766166129
],
[
-73.55115187186135,
45.6046712619692
],
[
-73.55127527233589,
45.60468216175241
],
[
-73.55127347189318,
45.60469216221355
],
[
-73.55127977164409,
45.604692562411856
],
[
-73.55171607233882,
45.60472526176147
],
[
-73.5517165723619,
45.60472526176147
],
[
-73.55171887192836,
45.60470836170157
],
[
-73.55172141880837,
45.60470853077413
],
[
-73.55172300791043,
45.604697359395686
],
[
-73.55172679675422,
45.604670055978374
],
[
-73.55173049386718,
45.60464274716509
],
[
-73.55173409655129,
45.60461543205662
],
[
-73.55173760840387,
45.604588110652855
],
[
-73.55174102672697,
45.604560783853174
],
[
-73.55174435241992,
45.60453345165752
],
[
-73.55174758458332,
45.60450611406594
],
[
-73.55175072591521,
45.60447877107845
],
[
-73.5517537728183,
45.604451421795716
],
[
-73.55175672709123,
45.604424068915705
],
[
-73.551759588734,
45.60439671063972
],
[
-73.55176235774655,
45.60436934786719
],
[
-73.551765034129,
45.60434197969863
],
[
-73.55176761698192,
45.60431460793285
],
[
-73.55176777436327,
45.604312880335215
],
[
-73.55165277175797,
45.60430426213202
],
[
-73.55164817172573,
45.60430406158321
]
]
]
},
"properties": {
"OBJECTID_12_13": 1780,
"ID_UEV": "02033657",
"CIVIQUE_DE": " 6500",
"CIVIQUE_FI": " 6500",
"NOM_RUE": "boulevard Joseph-Renaud (ANJ)",
"SUITE_DEBU": " ",
"MUNICIPALI": "50",
"ETAGE_HORS": 1,
"NOMBRE_LOG": 0,
"ANNEE_CONS": 1958,
"CODE_UTILI": "5411",
"LETTRE_DEB": " ",
"LETTRE_FIN": " ",
"LIBELLE_UT": "Vente au d\u00c3\u00a9tail de produits d'\u00c3\u00a9picerie (avec boucherie)",
"CATEGORIE_": "R\u00c3\u00a9gulier",
"MATRICULE8": "0051-76-9538-3-000-0000",
"SUPERFICIE": 5577,
"SUPERFIC_1": 1871,
"NO_ARROND_": "REM09",
"Shape_Leng": 0.00203390087769,
"OBJECTID": 1780,
"Join_Count": 1,
"TARGET_FID": 1780,
"feature_id": "44a8eb55-55f9-4b37-8d9f-b350db477add",
"md_id": " ",
"acqtech": 1360,
"acqtech_en": "Lidar",
"acqtech_fr": "Lidar",
"provider": 461,
"provideren": "Municipal",
"providerfr": "Municipal",
"datemin": "20151124",
"datemax": "20151208",
"haccmin": 2,
"haccmax": 2,
"vaccmin": 1,
"vaccmax": 1,
"heightmin": 0.5,
"heightmax": 7,
"elevmin": 39.89,
"elevmax": 41.6,
"bldgarea": 5899.16,
"comment": "Detection of Lidar points classified as ground in the building. D\u00c3\u00a9tection de points Lidar classifi\u00c3\u00a9s sol dans le b\u00c3\u00a2timent.",
"OBJECTID_1": 1780,
"Shape_Le_1": 0.00203390087769,
"Shape_Ar_1": 2.21511888038e-07,
"OBJECTID_12": 1780,
"Join_Count_1": 2,
"TARGET_FID_1": 1779,
"g_objectid": "893051",
"g_co_mrc": "66023",
"g_code_mun": "66023",
"g_arrond": "REM09",
"g_anrole": "2019",
"g_usag_pre": "Commercial",
"g_no_lot": "1113649",
"g_nb_poly_": "1",
"g_utilisat": "5002",
"g_nb_logem": " ",
"g_nb_locau": "16",
"g_descript": "Unit\u00c3\u00a9 d'\u00c3\u00a9valuation",
"g_id_provi": "66023005176034780000000",
"g_sup_tota": "10342.2",
"g_geometry": "0.00487279",
"g_geomet_1": "1.1974e-006",
"g_dat_acqu": "2020-02-12 00:00:00.0000000",
"g_dat_char": "2020-02-17 00:00:00.0000000",
"Shape_Leng_1": 0.00203390087769,
"Shape_Area_1": 2.21511888038e-07,
"Shape_Length": 0.0020339027874948317,
"Shape_Area": 2.21511888038e-07
}
}
]
}

View File

@ -0,0 +1,121 @@
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"id": 2864,
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
-73.55628837310991,
45.60732526295055
],
[
-73.55628287285629,
45.607324262904456
],
[
-73.55609247288925,
45.607288563416546
],
[
-73.55607107262188,
45.60734486277528
],
[
-73.55612487276466,
45.60735496306114
],
[
-73.55609867281544,
45.60742366317157
],
[
-73.55624087271804,
45.60745026331904
],
[
-73.55628837310991,
45.60732526295055
]
]
]
},
"properties": {
"OBJECTID_12_13": 2864,
"ID_UEV": "02033771",
"CIVIQUE_DE": " 8212",
"CIVIQUE_FI": " 8212",
"NOM_RUE": "avenue Peterborough (ANJ)",
"SUITE_DEBU": " ",
"MUNICIPALI": "50",
"ETAGE_HORS": 1,
"NOMBRE_LOG": 1,
"ANNEE_CONS": 1960,
"CODE_UTILI": "1000",
"LETTRE_DEB": " ",
"LETTRE_FIN": " ",
"LIBELLE_UT": "Logement",
"CATEGORIE_": "R\u00c3\u00a9gulier",
"MATRICULE8": "0051-49-2041-2-000-0000",
"SUPERFICIE": 450,
"SUPERFIC_1": 176,
"NO_ARROND_": "REM09",
"Shape_Leng": 0.000666191644361,
"OBJECTID": 2864,
"Join_Count": 1,
"TARGET_FID": 2864,
"feature_id": "bdd1f0fe-89de-46d2-80dc-87d3636df60a",
"md_id": " ",
"acqtech": 1360,
"acqtech_en": "Lidar",
"acqtech_fr": "Lidar",
"provider": 461,
"provideren": "Municipal",
"providerfr": "Municipal",
"datemin": "20151124",
"datemax": "20151208",
"haccmin": 2,
"haccmax": 2,
"vaccmin": 1,
"vaccmax": 1,
"heightmin": 1.17,
"heightmax": 7,
"elevmin": 45.48,
"elevmax": 45.96,
"bldgarea": 193.18,
"comment": " ",
"OBJECTID_1": 2864,
"Shape_Le_1": 0.000666191644361,
"Shape_Ar_1": 2.22753099997e-08,
"OBJECTID_12": 2864,
"Join_Count_1": 1,
"TARGET_FID_1": 2863,
"g_objectid": "897744",
"g_co_mrc": "66023",
"g_code_mun": "66023",
"g_arrond": "REM09",
"g_anrole": "2019",
"g_usag_pre": "R\u00c3\u00a9sidentiel",
"g_no_lot": "1113400",
"g_nb_poly_": "1",
"g_utilisat": "1000",
"g_nb_logem": "1",
"g_nb_locau": " ",
"g_descript": "Unit\u00c3\u00a9 d'\u00c3\u00a9valuation",
"g_id_provi": "66023005149204120000000",
"g_sup_tota": "450.1",
"g_geometry": "0.000958907",
"g_geomet_1": "5.20226e-008",
"g_dat_acqu": "2020-02-12 00:00:00.0000000",
"g_dat_char": "2020-02-17 00:00:00.0000000",
"Shape_Leng_1": 0.000666191644361,
"Shape_Area_1": 2.22753099997e-08,
"Shape_Length": 0.0006661919640545334,
"Shape_Area": 2.22753099997e-08
}
}
]
}

View File

@ -0,0 +1,311 @@
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"id": 9526,
"geometry": {
"type": "MultiPolygon",
"coordinates": [
[
[
[
-73.56037817321408,
45.57755455739698
],
[
-73.56032347284997,
45.5775361572679
],
[
-73.56031137337112,
45.5775311570373
],
[
-73.56026317330674,
45.57750815687598
],
[
-73.56026297275793,
45.57750795722649
],
[
-73.5602523733483,
45.577524556912806
],
[
-73.56017597324251,
45.577500456880614
],
[
-73.56017337330252,
45.57750445706512
],
[
-73.56015697326569,
45.57752955714341
],
[
-73.56011457292914,
45.57751595669612
],
[
-73.5600934730353,
45.57754835657147
],
[
-73.5596595717318,
45.57740905698245
],
[
-73.55965687196704,
45.57741305716689
],
[
-73.55962537231306,
45.577461056682466
],
[
-73.55958387219789,
45.57744765678399
],
[
-73.55957857159376,
45.57744595706532
],
[
-73.55944467243364,
45.57765675725358
],
[
-73.5594445717096,
45.57765685707835
],
[
-73.55948407173247,
45.577669657129036
],
[
-73.55940487203719,
45.57779035693949
],
[
-73.55953937194442,
45.57783385714686
],
[
-73.5595467715662,
45.577822656990065
],
[
-73.55979037182817,
45.57790145738642
],
[
-73.55977687210492,
45.57792215708196
],
[
-73.55973907180066,
45.577909857054294
],
[
-73.55973397174535,
45.577908456809894
],
[
-73.55968977186546,
45.57798675718317
],
[
-73.55965797183791,
45.57797795731693
],
[
-73.55965787201313,
45.57797805714165
],
[
-73.55963357233145,
45.578015857445905
],
[
-73.55966267169492,
45.578025056611125
],
[
-73.5595531720412,
45.57819585675344
],
[
-73.55955067192593,
45.578199657288394
],
[
-73.55969427207293,
45.578245656711715
],
[
-73.55970147204528,
45.57824795717755
],
[
-73.55990817312363,
45.57793315668988
],
[
-73.56008177285548,
45.57798935712316
],
[
-73.5601113731413,
45.577945956740564
],
[
-73.56037817321408,
45.57755455739698
]
]
],
[
[
[
-73.5593626722495,
45.577468457203565
],
[
-73.55935757219419,
45.57746655693609
],
[
-73.55929927184388,
45.57744455682092
],
[
-73.55927227239744,
45.57747985700985
],
[
-73.55933557207896,
45.57750375739255
],
[
-73.5593626722495,
45.577468457203565
]
]
],
[
[
[
-73.55925947234675,
45.57742965685321
],
[
-73.55925397209307,
45.57742815678404
],
[
-73.5592286723653,
45.57742095681175
],
[
-73.55920957166438,
45.577454356733256
],
[
-73.55920737192264,
45.57745815726821
],
[
-73.5592321716274,
45.57746455684389
],
[
-73.55923657201015,
45.57746605691307
],
[
-73.55925947234675,
45.57742965685321
]
]
]
]
},
"properties": {
"OBJECTID_12_13": 9526,
"ID_UEV": "02055359",
"CIVIQUE_DE": " 5750",
"CIVIQUE_FI": " 5750",
"NOM_RUE": "boulevard Rosemont (MTL)",
"SUITE_DEBU": " ",
"MUNICIPALI": "50",
"ETAGE_HORS": 0,
"NOMBRE_LOG": 0,
"ANNEE_CONS": 1923,
"CODE_UTILI": "6911",
"LETTRE_DEB": " ",
"LETTRE_FIN": " ",
"LIBELLE_UT": "\u00c3\u2030glise, synagogue, mosqu\u00c3\u00a9e et temple",
"CATEGORIE_": "R\u00c3\u00a9gulier",
"MATRICULE8": "0048-16-8416-5-000-0000",
"SUPERFICIE": 24793,
"SUPERFIC_1": 0,
"NO_ARROND_": "REM24",
"Shape_Leng": 0.00384776818364,
"OBJECTID": 9526,
"Join_Count": 3,
"TARGET_FID": 9526,
"feature_id": "5bfd7e8c-95aa-4782-9f2f-ed07d1dd2294",
"md_id": " ",
"acqtech": 1360,
"acqtech_en": "Lidar",
"acqtech_fr": "Lidar",
"provider": 461,
"provideren": "Municipal",
"providerfr": "Municipal",
"datemin": "20151124",
"datemax": "20151208",
"haccmin": 2,
"haccmax": 2,
"vaccmin": 1,
"vaccmax": 1,
"heightmin": 2.1,
"heightmax": 41.82,
"elevmin": 38.08,
"elevmax": 38.57,
"bldgarea": 25,
"comment": " ",
"OBJECTID_1": 9526,
"Shape_Le_1": 0.00384776818364,
"Shape_Ar_1": 3.92694421841e-07,
"OBJECTID_12": 9526,
"Join_Count_1": 1,
"TARGET_FID_1": 9525,
"g_objectid": "1586794",
"g_co_mrc": "66023",
"g_code_mun": "66023",
"g_arrond": "REM24",
"g_anrole": "2019",
"g_usag_pre": "Institutionnel",
"g_no_lot": "1361698",
"g_nb_poly_": "1",
"g_utilisat": "6911",
"g_nb_logem": " ",
"g_nb_locau": "2",
"g_descript": "Unit\u00c3\u00a9 d'\u00c3\u00a9valuation",
"g_id_provi": "66023004816841650000000",
"g_sup_tota": "24792.9",
"g_geometry": "0.00743004",
"g_geomet_1": "2.85762e-006",
"g_dat_acqu": "2020-02-12 00:00:00.0000000",
"g_dat_char": "2020-02-17 00:00:00.0000000",
"Shape_Leng_1": 0.00384776818364,
"Shape_Area_1": 3.92694421841e-07,
"Shape_Length": 0.0038477700316121004,
"Shape_Area": 3.92694421841e-07
}
}
]
}

View File

@ -13,56 +13,56 @@ from hub.helpers.dictionaries import Dictionaries
sys.path.append('./')
try:
file_path = (Path(__file__).parent.parent / 'input_files' / 'selected_building_5755.geojson')
out_path = (Path(__file__).parent.parent / 'out_files')
files = glob.glob(f'{out_path}/*')
for file in files:
#try:
file_path = (Path(__file__).parent.parent / 'input_files' / 'selected_building_2864.geojson')
out_path = (Path(__file__).parent.parent / 'out_files')
files = glob.glob(f'{out_path}/*')
for file in files:
if file != '.gitignore':
os.remove(file)
print('[simulation start]')
city = GeometryFactory('geojson',
print('[simulation start]')
city = GeometryFactory('geojson',
path=file_path,
height_field='heightmax',
year_of_construction_field='ANNEE_CONS',
function_field='CODE_UTILI',
function_to_hub=Dictionaries().montreal_function_to_hub_function).city
print(f'city created from {file_path}')
ConstructionFactory('nrcan', city).enrich()
print('enrich constructions... done')
UsageFactory('nrcan', city).enrich()
print('enrich usage... done')
print(f'city created from {file_path}')
ConstructionFactory('nrcan', city).enrich()
print('enrich constructions... done')
UsageFactory('nrcan', city).enrich()
print('enrich usage... done')
area = 0
volume = 0
for building in city.buildings:
area = 0
volume = 0
for building in city.buildings:
volume = building.volume
for ground in building.grounds:
area += ground.perimeter_polygon.area
print('exporting:')
print('exporting:')
_idf = EnergyBuildingsExportsFactory('idf', city, out_path).export()
print(' idf exported...')
_idf.run()
_idf = EnergyBuildingsExportsFactory('idf', city, out_path).export()
print(' idf exported...')
_idf.run()
csv_file = str((out_path / f'{city.name}_out.csv').resolve())
eso_file = str((out_path / f'{city.name}_out.eso').resolve())
idf_file = str((out_path / f'{city.name}.idf').resolve())
obj_file = str((out_path / f'{city.name}.obj').resolve())
csv_file = str((out_path / f'{city.name}_out.csv').resolve())
eso_file = str((out_path / f'{city.name}_out.eso').resolve())
idf_file = str((out_path / f'{city.name}.idf').resolve())
obj_file = str((out_path / f'{city.name}.obj').resolve())
with open((out_path / f'{city.name}_out.csv').resolve()) as f:
with open((out_path / f'{city.name}_out.csv').resolve()) as f:
reader = csv.reader(f, delimiter=',')
for row in reader:
if ':00:00' in row[0]:
print(f'row: {row[0]}, {row[8]}, {row[9]}')
print(f'info: {idf_file}, {csv_file}, {eso_file}, {area}, {volume}, {obj_file}')
print('[simulation end]')
print(f'info: {idf_file}, {csv_file}, {eso_file}, {area}, {volume}, {obj_file}')
print('[simulation end]')
except Exception as ex:
print(ex)
print('error: ', ex)
print('[simulation abort]')
#except Exception as ex:
# print(ex)
# print('error: ', ex)
# print('[simulation abort]')
sys.stdout.flush()