OpenSimula 0.0.5__tar.gz → 0.2.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of OpenSimula might be problematic. Click here for more details.

Files changed (330) hide show
  1. {opensimula-0.0.5 → opensimula-0.2.0}/.gitignore +1 -1
  2. {opensimula-0.0.5 → opensimula-0.2.0}/PKG-INFO +32 -16
  3. opensimula-0.2.0/Python_Libraries.txt +32 -0
  4. opensimula-0.2.0/README.md +26 -0
  5. opensimula-0.2.0/debug.py +493 -0
  6. opensimula-0.2.0/docs/component_list.md +17 -0
  7. opensimula-0.2.0/docs/component_list_HVAC_systems.md +50 -0
  8. opensimula-0.2.0/docs/component_list_building.md +421 -0
  9. opensimula-0.2.0/docs/component_list_constructions.md +146 -0
  10. opensimula-0.2.0/docs/component_list_files.md +91 -0
  11. opensimula-0.0.5/docs/component_list.md → opensimula-0.2.0/docs/component_list_schedules.md +5 -41
  12. opensimula-0.2.0/docs/component_list_utils.md +31 -0
  13. opensimula-0.2.0/docs/developer_guide.md +3 -0
  14. {opensimula-0.0.5 → opensimula-0.2.0}/docs/getting_started.md +33 -13
  15. opensimula-0.2.0/docs/img/building_coordinate_system.png +0 -0
  16. opensimula-0.2.0/docs/img/component_editor.png +0 -0
  17. opensimula-0.2.0/docs/img/github_logo.png +0 -0
  18. opensimula-0.2.0/docs/img/opening_definition.png +0 -0
  19. opensimula-0.2.0/docs/img/plot_example.png +0 -0
  20. opensimula-0.2.0/docs/img/polygon_surface_coordinate_system.png +0 -0
  21. opensimula-0.2.0/docs/img/project_editor.png +0 -0
  22. opensimula-0.2.0/docs/img/rectangular_surface_coordinate_system.png +0 -0
  23. opensimula-0.2.0/docs/img/schedule_plot.png +0 -0
  24. opensimula-0.2.0/docs/img/shadows_example.png +0 -0
  25. opensimula-0.2.0/docs/img/show3D_shadows.png +0 -0
  26. opensimula-0.2.0/docs/img/simple glazing rho norm.png +0 -0
  27. opensimula-0.2.0/docs/img/simple glazing rho.png +0 -0
  28. opensimula-0.2.0/docs/img/simple glazing tau norm.png +0 -0
  29. opensimula-0.2.0/docs/img/simple glazing tau.png +0 -0
  30. opensimula-0.2.0/docs/img/variable_dataframe.png +0 -0
  31. opensimula-0.2.0/docs/index.md +58 -0
  32. opensimula-0.2.0/docs/logos/Coordinate system.drawio +460 -0
  33. opensimula-0.2.0/docs/user_guide.md +327 -0
  34. opensimula-0.2.0/ipynb/docs/day_schedule_images.ipynb +60 -0
  35. opensimula-0.2.0/ipynb/docs/getting_started.ipynb +18592 -0
  36. opensimula-0.2.0/ipynb/docs/getting_started.json +68 -0
  37. opensimula-0.2.0/ipynb/docs/user_guide.ipynb +106487 -0
  38. opensimula-0.2.0/ipynb/test/ASHRAE_140_CASE_960.ipynb +108593 -0
  39. opensimula-0.2.0/ipynb/test/ASHRAE_140_CASE_CE100.ipynb +160282 -0
  40. opensimula-0.2.0/ipynb/test/CE100A.TM2 +8761 -0
  41. opensimula-0.2.0/ipynb/test/WD100.tmy3 +8762 -0
  42. opensimula-0.2.0/ipynb/test/test_Constructions.ipynb +304 -0
  43. opensimula-0.2.0/ipynb/test/test_HVAC_perfect_system.ipynb +144266 -0
  44. opensimula-0.0.5/examples/structure_tests.ipynb → opensimula-0.2.0/ipynb/test/test_Test_components.ipynb +673 -369
  45. opensimula-0.2.0/ipynb/test/test_calculator.ipynb +36482 -0
  46. opensimula-0.2.0/ipynb/test/test_psychrolib.ipynb +122 -0
  47. {opensimula-0.0.5 → opensimula-0.2.0}/pyproject.toml +15 -2
  48. opensimula-0.2.0/requirements.txt +12 -0
  49. opensimula-0.2.0/site/cinder/404.html +13 -0
  50. opensimula-0.2.0/site/cinder/__init__.py +0 -0
  51. opensimula-0.2.0/site/cinder/base.html +139 -0
  52. opensimula-0.2.0/site/cinder/content.html +9 -0
  53. opensimula-0.2.0/site/cinder/css/base.css +289 -0
  54. opensimula-0.2.0/site/cinder/css/base.min.css +1 -0
  55. opensimula-0.2.0/site/cinder/css/bootstrap-custom.css +5309 -0
  56. opensimula-0.2.0/site/cinder/css/bootstrap-custom.min.css +1 -0
  57. opensimula-0.2.0/site/cinder/css/cinder.css +88 -0
  58. opensimula-0.2.0/site/cinder/css/cinder.min.css +1 -0
  59. opensimula-0.2.0/site/cinder/css/highlight.css +99 -0
  60. opensimula-0.2.0/site/cinder/css/highlight.min.css +1 -0
  61. opensimula-0.2.0/site/cinder/fonts/fontawesome-webfont.eot +0 -0
  62. opensimula-0.2.0/site/cinder/fonts/fontawesome-webfont.svg +414 -0
  63. opensimula-0.2.0/site/cinder/fonts/fontawesome-webfont.ttf +0 -0
  64. opensimula-0.2.0/site/cinder/fonts/fontawesome-webfont.woff +0 -0
  65. opensimula-0.2.0/site/cinder/img/favicon.ico +0 -0
  66. opensimula-0.2.0/site/cinder/img/grid1.png +0 -0
  67. opensimula-0.2.0/site/cinder/img/grid10.png +0 -0
  68. opensimula-0.2.0/site/cinder/img/grid11.png +0 -0
  69. opensimula-0.2.0/site/cinder/img/grid12.png +0 -0
  70. opensimula-0.2.0/site/cinder/img/grid13.png +0 -0
  71. opensimula-0.2.0/site/cinder/img/grid14.png +0 -0
  72. opensimula-0.2.0/site/cinder/img/grid15.png +0 -0
  73. opensimula-0.2.0/site/cinder/img/grid16.png +0 -0
  74. opensimula-0.2.0/site/cinder/img/grid17.png +0 -0
  75. opensimula-0.2.0/site/cinder/img/grid18.png +0 -0
  76. opensimula-0.2.0/site/cinder/img/grid19.png +0 -0
  77. opensimula-0.2.0/site/cinder/img/grid2.png +0 -0
  78. opensimula-0.2.0/site/cinder/img/grid20.png +0 -0
  79. opensimula-0.2.0/site/cinder/img/grid3.png +0 -0
  80. opensimula-0.2.0/site/cinder/img/grid4.png +0 -0
  81. opensimula-0.2.0/site/cinder/img/grid5.png +0 -0
  82. opensimula-0.2.0/site/cinder/img/grid6.png +0 -0
  83. opensimula-0.2.0/site/cinder/img/grid7.png +0 -0
  84. opensimula-0.2.0/site/cinder/img/grid8.png +0 -0
  85. opensimula-0.2.0/site/cinder/img/grid9.png +0 -0
  86. opensimula-0.2.0/site/cinder/js/base.js +225 -0
  87. opensimula-0.2.0/site/cinder/js/bootstrap-3.0.3.min.js +7 -0
  88. opensimula-0.2.0/site/cinder/keyboard-modal.html +40 -0
  89. opensimula-0.2.0/site/cinder/main.html +10 -0
  90. opensimula-0.2.0/site/cinder/mkdocs_theme.yml +13 -0
  91. opensimula-0.2.0/site/cinder/nav-sub.html +14 -0
  92. opensimula-0.2.0/site/cinder/nav.html +109 -0
  93. opensimula-0.2.0/site/cinder/search-modal.html +27 -0
  94. opensimula-0.2.0/site/cinder/toc.html +13 -0
  95. opensimula-0.2.0/site/component_list/index.html +253 -0
  96. opensimula-0.2.0/site/component_list_HVAC_systems/index.html +275 -0
  97. opensimula-0.2.0/site/component_list_building/index.html +640 -0
  98. opensimula-0.2.0/site/component_list_constructions/index.html +366 -0
  99. opensimula-0.2.0/site/component_list_files/index.html +312 -0
  100. opensimula-0.2.0/site/component_list_schedules/index.html +304 -0
  101. opensimula-0.2.0/site/component_list_utils/index.html +255 -0
  102. opensimula-0.2.0/site/css/base.css +289 -0
  103. opensimula-0.2.0/site/css/base.min.css +1 -0
  104. opensimula-0.2.0/site/css/bootstrap-custom.css +5309 -0
  105. opensimula-0.2.0/site/css/bootstrap-custom.min.css +1 -0
  106. opensimula-0.2.0/site/css/cinder.css +88 -0
  107. opensimula-0.2.0/site/css/cinder.min.css +1 -0
  108. opensimula-0.2.0/site/css/highlight.css +99 -0
  109. opensimula-0.2.0/site/css/highlight.min.css +1 -0
  110. opensimula-0.2.0/site/developer_guide/index.html +236 -0
  111. opensimula-0.2.0/site/fonts/fontawesome-webfont.eot +0 -0
  112. opensimula-0.2.0/site/fonts/fontawesome-webfont.svg +414 -0
  113. opensimula-0.2.0/site/fonts/fontawesome-webfont.ttf +0 -0
  114. opensimula-0.2.0/site/fonts/fontawesome-webfont.woff +0 -0
  115. opensimula-0.2.0/site/getting_started/index.html +362 -0
  116. opensimula-0.2.0/site/img/building_coordinate_system.png +0 -0
  117. opensimula-0.2.0/site/img/component_editor.png +0 -0
  118. opensimula-0.2.0/site/img/component_in_jupyter.png +0 -0
  119. opensimula-0.2.0/site/img/day_schedule_linear.png +0 -0
  120. opensimula-0.2.0/site/img/day_schedule_step.png +0 -0
  121. opensimula-0.2.0/site/img/favicon.ico +0 -0
  122. opensimula-0.2.0/site/img/github_logo.png +0 -0
  123. opensimula-0.2.0/site/img/global_structure.png +0 -0
  124. opensimula-0.2.0/site/img/grid1.png +0 -0
  125. opensimula-0.2.0/site/img/grid10.png +0 -0
  126. opensimula-0.2.0/site/img/grid11.png +0 -0
  127. opensimula-0.2.0/site/img/grid12.png +0 -0
  128. opensimula-0.2.0/site/img/grid13.png +0 -0
  129. opensimula-0.2.0/site/img/grid14.png +0 -0
  130. opensimula-0.2.0/site/img/grid15.png +0 -0
  131. opensimula-0.2.0/site/img/grid16.png +0 -0
  132. opensimula-0.2.0/site/img/grid17.png +0 -0
  133. opensimula-0.2.0/site/img/grid18.png +0 -0
  134. opensimula-0.2.0/site/img/grid19.png +0 -0
  135. opensimula-0.2.0/site/img/grid2.png +0 -0
  136. opensimula-0.2.0/site/img/grid20.png +0 -0
  137. opensimula-0.2.0/site/img/grid3.png +0 -0
  138. opensimula-0.2.0/site/img/grid4.png +0 -0
  139. opensimula-0.2.0/site/img/grid5.png +0 -0
  140. opensimula-0.2.0/site/img/grid6.png +0 -0
  141. opensimula-0.2.0/site/img/grid7.png +0 -0
  142. opensimula-0.2.0/site/img/grid8.png +0 -0
  143. opensimula-0.2.0/site/img/grid9.png +0 -0
  144. opensimula-0.2.0/site/img/icon_opensimula.ico +0 -0
  145. opensimula-0.2.0/site/img/icon_opensimula.png +0 -0
  146. opensimula-0.2.0/site/img/logo_opensimula.png +0 -0
  147. opensimula-0.2.0/site/img/opening_definition.png +0 -0
  148. opensimula-0.2.0/site/img/parameters.png +0 -0
  149. opensimula-0.2.0/site/img/plot_example.png +0 -0
  150. opensimula-0.2.0/site/img/polygon_surface_coordinate_system.png +0 -0
  151. opensimula-0.2.0/site/img/project_editor.png +0 -0
  152. opensimula-0.2.0/site/img/project_in_jupyter.png +0 -0
  153. opensimula-0.2.0/site/img/rectangular_surface_coordinate_system.png +0 -0
  154. opensimula-0.2.0/site/img/schedule_plot.png +0 -0
  155. opensimula-0.2.0/site/img/shadows_example.png +0 -0
  156. opensimula-0.2.0/site/img/show3D_shadows.png +0 -0
  157. opensimula-0.2.0/site/img/simple glazing rho norm.png +0 -0
  158. opensimula-0.2.0/site/img/simple glazing rho.png +0 -0
  159. opensimula-0.2.0/site/img/simple glazing tau norm.png +0 -0
  160. opensimula-0.2.0/site/img/simple glazing tau.png +0 -0
  161. opensimula-0.2.0/site/img/variable_dataframe.png +0 -0
  162. opensimula-0.2.0/site/img/variables.png +0 -0
  163. opensimula-0.2.0/site/index.html +280 -0
  164. opensimula-0.2.0/site/js/base.js +225 -0
  165. opensimula-0.2.0/site/js/bootstrap-3.0.3.min.js +7 -0
  166. opensimula-0.2.0/site/logos/Coordinate system.drawio +460 -0
  167. opensimula-0.2.0/site/logos/global_structure.drawio +49 -0
  168. opensimula-0.2.0/site/logos/opensimula_logo.drawio +19 -0
  169. opensimula-0.2.0/site/logos/opensimula_logo.drawio.svg +4 -0
  170. opensimula-0.2.0/site/logos/paramaters.drawio +45 -0
  171. opensimula-0.2.0/site/logos/variables.drawio +45 -0
  172. opensimula-0.2.0/site/search/lunr.js +3475 -0
  173. opensimula-0.2.0/site/search/main.js +109 -0
  174. opensimula-0.2.0/site/search/search_index.json +1 -0
  175. opensimula-0.2.0/site/search/worker.js +133 -0
  176. opensimula-0.2.0/site/sitemap.xml +3 -0
  177. opensimula-0.2.0/site/sitemap.xml.gz +0 -0
  178. opensimula-0.2.0/site/user_guide/index.html +516 -0
  179. opensimula-0.2.0/src/OpenSimula/Component.py +193 -0
  180. {opensimula-0.0.5 → opensimula-0.2.0}/src/OpenSimula/Parameter_container.py +5 -2
  181. opensimula-0.2.0/src/OpenSimula/Parameters.py +754 -0
  182. opensimula-0.2.0/src/OpenSimula/Project.py +527 -0
  183. opensimula-0.2.0/src/OpenSimula/Simulation.py +223 -0
  184. {opensimula-0.0.5 → opensimula-0.2.0}/src/OpenSimula/Variable.py +12 -4
  185. {opensimula-0.0.5 → opensimula-0.2.0}/src/OpenSimula/__init__.py +1 -2
  186. opensimula-0.2.0/src/OpenSimula/components/Building.py +687 -0
  187. opensimula-0.2.0/src/OpenSimula/components/Calculator.py +63 -0
  188. {opensimula-0.0.5 → opensimula-0.2.0}/src/OpenSimula/components/Construction.py +112 -52
  189. {opensimula-0.0.5 → opensimula-0.2.0}/src/OpenSimula/components/Day_schedule.py +3 -2
  190. opensimula-0.2.0/src/OpenSimula/components/Exterior_surface.py +152 -0
  191. opensimula-0.2.0/src/OpenSimula/components/File_data.py +119 -0
  192. opensimula-0.2.0/src/OpenSimula/components/File_met.py +959 -0
  193. opensimula-0.2.0/src/OpenSimula/components/Frame.py +35 -0
  194. opensimula-0.2.0/src/OpenSimula/components/Glazing.py +122 -0
  195. opensimula-0.2.0/src/OpenSimula/components/HVAC_DX_equipment.py +134 -0
  196. opensimula-0.2.0/src/OpenSimula/components/HVAC_DX_system.py +228 -0
  197. opensimula-0.2.0/src/OpenSimula/components/HVAC_perfect_system.py +113 -0
  198. opensimula-0.2.0/src/OpenSimula/components/Interior_surface.py +79 -0
  199. {opensimula-0.0.5 → opensimula-0.2.0}/src/OpenSimula/components/Material.py +3 -3
  200. opensimula-0.2.0/src/OpenSimula/components/Opening.py +225 -0
  201. opensimula-0.2.0/src/OpenSimula/components/Opening_type.py +89 -0
  202. opensimula-0.2.0/src/OpenSimula/components/Real_surface.py +47 -0
  203. opensimula-0.2.0/src/OpenSimula/components/Shadow_surface.py +24 -0
  204. opensimula-0.2.0/src/OpenSimula/components/Space.py +380 -0
  205. opensimula-0.2.0/src/OpenSimula/components/Space_type.py +91 -0
  206. opensimula-0.2.0/src/OpenSimula/components/Surface.py +127 -0
  207. opensimula-0.2.0/src/OpenSimula/components/Test_component.py +82 -0
  208. opensimula-0.2.0/src/OpenSimula/components/Underground_surface.py +76 -0
  209. opensimula-0.2.0/src/OpenSimula/components/Virtual_surface.py +33 -0
  210. {opensimula-0.0.5 → opensimula-0.2.0}/src/OpenSimula/components/Week_schedule.py +2 -1
  211. {opensimula-0.0.5 → opensimula-0.2.0}/src/OpenSimula/components/Year_schedule.py +12 -6
  212. opensimula-0.2.0/src/OpenSimula/components/__init__.py +25 -0
  213. opensimula-0.2.0/src/OpenSimula/components/utils/sun_shadows.py +402 -0
  214. opensimula-0.2.0/test/CE100A.TM2 +8761 -0
  215. opensimula-0.2.0/test/WD100.tmy3 +8762 -0
  216. opensimula-0.2.0/test/test_Calculator.py +40 -0
  217. opensimula-0.2.0/test/test_Case_600FF.py +330 -0
  218. opensimula-0.2.0/test/test_Case_610.py +357 -0
  219. opensimula-0.2.0/test/test_Construction.py +129 -0
  220. opensimula-0.2.0/test/test_File_data.py +71 -0
  221. opensimula-0.2.0/test/test_File_met.py +99 -0
  222. {opensimula-0.0.5 → opensimula-0.2.0}/test/test_Project.py +27 -12
  223. {opensimula-0.0.5 → opensimula-0.2.0}/test/test_Schedules.py +19 -6
  224. opensimula-0.2.0/test/test_project_1_written.json +1 -0
  225. opensimula-0.2.0/test/test_project_2_written.json +1 -0
  226. opensimula-0.0.5/README.md +0 -23
  227. opensimula-0.0.5/docs/developer_guide.md +0 -3
  228. opensimula-0.0.5/docs/img/schedule_plot.png +0 -0
  229. opensimula-0.0.5/docs/index.md +0 -64
  230. opensimula-0.0.5/docs/user_guide.md +0 -181
  231. opensimula-0.0.5/examples/component_list.ipynb +0 -60
  232. opensimula-0.0.5/examples/debug.py +0 -18
  233. opensimula-0.0.5/examples/example_opensimula.py +0 -88
  234. opensimula-0.0.5/examples/input_files/bdd_project.json +0 -38
  235. opensimula-0.0.5/examples/input_files/bdd_project.xlsx +0 -0
  236. opensimula-0.0.5/examples/input_files/example_project.xlsx +0 -0
  237. opensimula-0.0.5/examples/input_files/test_project_1.xlsx +0 -0
  238. opensimula-0.0.5/examples/input_files/test_project_2.xlsx +0 -0
  239. opensimula-0.0.5/examples/test_File_met.ipynb +0 -36420
  240. opensimula-0.0.5/examples/test_schedules.ipynb +0 -36505
  241. opensimula-0.0.5/examples/user_guide.ipynb +0 -2562
  242. opensimula-0.0.5/pyvenv.cfg +0 -5
  243. opensimula-0.0.5/requirements 24-oct-2023.txt +0 -86
  244. opensimula-0.0.5/requirements.txt +0 -82
  245. opensimula-0.0.5/src/OpenSimula/Component.py +0 -116
  246. opensimula-0.0.5/src/OpenSimula/Parameters.py +0 -437
  247. opensimula-0.0.5/src/OpenSimula/Project.py +0 -356
  248. opensimula-0.0.5/src/OpenSimula/Simulation.py +0 -81
  249. opensimula-0.0.5/src/OpenSimula/components/File_data.py +0 -68
  250. opensimula-0.0.5/src/OpenSimula/components/File_met.py +0 -216
  251. opensimula-0.0.5/src/OpenSimula/components/Space.py +0 -16
  252. opensimula-0.0.5/src/OpenSimula/components/Space_type.py +0 -117
  253. opensimula-0.0.5/src/OpenSimula/components/Test_component.py +0 -62
  254. opensimula-0.0.5/src/OpenSimula/components/Wall.py +0 -17
  255. opensimula-0.0.5/src/OpenSimula/components/__init__.py +0 -11
  256. opensimula-0.0.5/test/test_Construction.py +0 -98
  257. opensimula-0.0.5/test/test_File_data.py +0 -43
  258. opensimula-0.0.5/test/test_File_met.py +0 -47
  259. opensimula-0.0.5/test/test_Simulation.py +0 -13
  260. {opensimula-0.0.5 → opensimula-0.2.0}/LICENSE +0 -0
  261. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/404.html +0 -0
  262. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/__init__.py +0 -0
  263. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/base.html +0 -0
  264. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/content.html +0 -0
  265. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/css/base.css +0 -0
  266. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/css/base.min.css +0 -0
  267. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/css/bootstrap-custom.css +0 -0
  268. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/css/bootstrap-custom.min.css +0 -0
  269. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/css/cinder.css +0 -0
  270. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/css/cinder.min.css +0 -0
  271. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/css/highlight.css +0 -0
  272. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/css/highlight.min.css +0 -0
  273. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/fonts/fontawesome-webfont.eot +0 -0
  274. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/fonts/fontawesome-webfont.svg +0 -0
  275. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/fonts/fontawesome-webfont.ttf +0 -0
  276. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/fonts/fontawesome-webfont.woff +0 -0
  277. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/favicon.ico +0 -0
  278. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid1.png +0 -0
  279. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid10.png +0 -0
  280. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid11.png +0 -0
  281. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid12.png +0 -0
  282. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid13.png +0 -0
  283. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid14.png +0 -0
  284. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid15.png +0 -0
  285. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid16.png +0 -0
  286. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid17.png +0 -0
  287. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid18.png +0 -0
  288. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid19.png +0 -0
  289. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid2.png +0 -0
  290. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid20.png +0 -0
  291. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid3.png +0 -0
  292. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid4.png +0 -0
  293. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid5.png +0 -0
  294. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid6.png +0 -0
  295. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid7.png +0 -0
  296. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid8.png +0 -0
  297. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/img/grid9.png +0 -0
  298. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/js/base.js +0 -0
  299. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/js/bootstrap-3.0.3.min.js +0 -0
  300. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/keyboard-modal.html +0 -0
  301. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/main.html +0 -0
  302. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/mkdocs_theme.yml +0 -0
  303. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/nav-sub.html +0 -0
  304. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/nav.html +0 -0
  305. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/search-modal.html +0 -0
  306. {opensimula-0.0.5 → opensimula-0.2.0}/docs/cinder/toc.html +0 -0
  307. {opensimula-0.0.5 → opensimula-0.2.0}/docs/img/component_in_jupyter.png +0 -0
  308. {opensimula-0.0.5 → opensimula-0.2.0}/docs/img/day_schedule_linear.png +0 -0
  309. {opensimula-0.0.5 → opensimula-0.2.0}/docs/img/day_schedule_step.png +0 -0
  310. {opensimula-0.0.5 → opensimula-0.2.0}/docs/img/favicon.ico +0 -0
  311. {opensimula-0.0.5 → opensimula-0.2.0}/docs/img/global_structure.png +0 -0
  312. {opensimula-0.0.5 → opensimula-0.2.0}/docs/img/icon_opensimula.ico +0 -0
  313. {opensimula-0.0.5 → opensimula-0.2.0}/docs/img/icon_opensimula.png +0 -0
  314. {opensimula-0.0.5 → opensimula-0.2.0}/docs/img/logo_opensimula.png +0 -0
  315. {opensimula-0.0.5 → opensimula-0.2.0}/docs/img/parameters.png +0 -0
  316. {opensimula-0.0.5 → opensimula-0.2.0}/docs/img/project_in_jupyter.png +0 -0
  317. {opensimula-0.0.5 → opensimula-0.2.0}/docs/img/variables.png +0 -0
  318. {opensimula-0.0.5 → opensimula-0.2.0}/docs/logos/global_structure.drawio +0 -0
  319. {opensimula-0.0.5 → opensimula-0.2.0}/docs/logos/opensimula_logo.drawio +0 -0
  320. {opensimula-0.0.5 → opensimula-0.2.0}/docs/logos/opensimula_logo.drawio.svg +0 -0
  321. {opensimula-0.0.5 → opensimula-0.2.0}/docs/logos/paramaters.drawio +0 -0
  322. {opensimula-0.0.5 → opensimula-0.2.0}/docs/logos/variables.drawio +0 -0
  323. {opensimula-0.0.5 → opensimula-0.2.0}/makefile +0 -0
  324. {opensimula-0.0.5 → opensimula-0.2.0}/mkdocs.yml +0 -0
  325. {opensimula-0.0.5 → opensimula-0.2.0}/src/OpenSimula/Child.py +0 -0
  326. {opensimula-0.0.5/examples/input_files → opensimula-0.2.0/test}/data_example.csv +0 -0
  327. {opensimula-0.0.5/examples/input_files → opensimula-0.2.0/test}/data_example.xlsx +0 -0
  328. {opensimula-0.0.5/examples/met_files → opensimula-0.2.0/test}/sevilla.met +0 -0
  329. {opensimula-0.0.5/examples/input_files → opensimula-0.2.0/test}/test_project_1.json +0 -0
  330. {opensimula-0.0.5/examples/input_files → opensimula-0.2.0/test}/test_project_2.json +0 -0
@@ -117,7 +117,7 @@ venv.bak/
117
117
  .ropeproject
118
118
 
119
119
  # mkdocs documentation
120
- /site
120
+ #/site
121
121
 
122
122
  # mypy
123
123
  .mypy_cache/
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: OpenSimula
3
- Version: 0.0.5
3
+ Version: 0.2.0
4
4
  Summary: Component-based time simulation environment in Python
5
5
  Project-URL: Homepage, http://opensimula.org
6
6
  Project-URL: Repository, https://github.com/jfCoronel/OpenSimula
@@ -11,35 +11,51 @@ Classifier: License :: OSI Approved :: MIT License
11
11
  Classifier: Operating System :: OS Independent
12
12
  Classifier: Programming Language :: Python :: 3
13
13
  Requires-Python: >=3.8
14
+ Requires-Dist: dash-ag-grid>=31.0.0
15
+ Requires-Dist: dash-bootstrap-components>=1.0.0
16
+ Requires-Dist: dash>=2.0.0
17
+ Requires-Dist: ipywidgets>=8.1.2
14
18
  Requires-Dist: numpy>1.25
15
19
  Requires-Dist: pandas>1.5
20
+ Requires-Dist: plotly>=5.17.0
21
+ Requires-Dist: psychrolib>=2.5.0
22
+ Requires-Dist: py-expression-eval>=0.3.14
23
+ Requires-Dist: pyvista>=0.43.5
16
24
  Requires-Dist: scipy>=1.1
25
+ Requires-Dist: shapely>=2.0.3
26
+ Requires-Dist: trame-vtk>=2.8.5
27
+ Requires-Dist: trame-vuetify>=2.4.3
28
+ Requires-Dist: trame>=3.6.0
29
+ Requires-Dist: triangle>=20230923
17
30
  Provides-Extra: docs
18
31
  Requires-Dist: mkdocs>=1.5; extra == 'docs'
19
32
  Provides-Extra: testing
20
33
  Requires-Dist: pytest; extra == 'testing'
21
34
  Description-Content-Type: text/markdown
22
35
 
23
- # OpenSimula
36
+ ![Logo](docs/img/logo_opensimula.png)
24
37
  Component-based time simulation environment in Python
25
38
 
39
+ [Documentation page](https://jfcoronel.github.io/OpenSimula/site/)
40
+
26
41
  ## Main Developers
27
42
 
28
43
  * [Juan F. Coronel](http://jfc.us.es), Universidad de Sevilla
29
44
 
30
45
  ## Package dependencies
31
-
32
- - NumPy (v > 1.25)
33
- - Pandas (v 2.0.3)
34
- - Scipy (v > 1.10)
35
-
36
- Dependencies for development:
37
-
38
- - ipykernel
46
+ - numpy
47
+ - pandas
48
+ - scipy
49
+ - py-expression-eval
50
+ - shapely
51
+ - psychrolib
39
52
  - plotly
40
- - pytest
41
- - mkdocs
42
- - build
43
- - twine
44
-
53
+ - dash
54
+ - dash_bootstrap_components
55
+ - dash_ag_grid
56
+ - pyvista
57
+ - trame
58
+ - trame-vtk
59
+ - trame-vuetify
60
+ - ipywidgets
45
61
 
@@ -0,0 +1,32 @@
1
+ Python libraries needed for OpenSimula:
2
+ In a clean python version:
3
+ - numpy
4
+ - pandas
5
+ - scipy
6
+ - py-expression-eval
7
+ - shapely
8
+ - psychrolib
9
+ - pyvista:
10
+ pip install "pyvista[jupyter]"
11
+ or
12
+ pip install pyvista, ipywidgets, trame, trame-vtk, trame-vuetify
13
+ - plotly
14
+ - dash
15
+ - dash_bootstrap_components
16
+ - dash_ag_grid
17
+ - triangle:
18
+ pip install triangle
19
+ pip install git+https://github.com/drufat/triangle.git # For Macos Apple Silicon
20
+
21
+ For juputer:
22
+ - notebook
23
+
24
+
25
+ With Anaconda you must add:
26
+ - py_expression_eval
27
+ - psychrolib
28
+ - pyvista
29
+ - ipywidgets
30
+ - trame
31
+ - trame-vtk
32
+ - trame-vuetify
@@ -0,0 +1,26 @@
1
+ ![Logo](docs/img/logo_opensimula.png)
2
+ Component-based time simulation environment in Python
3
+
4
+ [Documentation page](https://jfcoronel.github.io/OpenSimula/site/)
5
+
6
+ ## Main Developers
7
+
8
+ * [Juan F. Coronel](http://jfc.us.es), Universidad de Sevilla
9
+
10
+ ## Package dependencies
11
+ - numpy
12
+ - pandas
13
+ - scipy
14
+ - py-expression-eval
15
+ - shapely
16
+ - psychrolib
17
+ - plotly
18
+ - dash
19
+ - dash_bootstrap_components
20
+ - dash_ag_grid
21
+ - pyvista
22
+ - trame
23
+ - trame-vtk
24
+ - trame-vuetify
25
+ - ipywidgets
26
+
@@ -0,0 +1,493 @@
1
+ import OpenSimula as osm
2
+ import numpy as np
3
+
4
+ case960_dict = {
5
+ "name": "Case 960",
6
+ "time_step": 3600,
7
+ "n_time_steps": 8760,
8
+ "initial_time": "01/01/2001 00:00:00",
9
+ "components": [
10
+ {
11
+ "type": "File_met",
12
+ "name": "Denver",
13
+ "file_type": "TMY3",
14
+ "file_name": "test/WD100.tmy3"
15
+ },
16
+ {
17
+ "type": "Material",
18
+ "name": "Concrete_block",
19
+ "conductivity": 0.51,
20
+ "density": 1400,
21
+ "specific_heat": 1000
22
+ },
23
+ {
24
+ "type": "Material",
25
+ "name": "Concrete_slab",
26
+ "conductivity": 1.13,
27
+ "density": 1400,
28
+ "specific_heat": 1000
29
+ },
30
+ {
31
+ "type": "Material",
32
+ "name": "Plasterboard",
33
+ "conductivity": 0.16,
34
+ "density": 950,
35
+ "specific_heat": 840
36
+ },
37
+ {
38
+ "type": "Material",
39
+ "name": "Fiberglass_quilt",
40
+ "conductivity": 0.04,
41
+ "density": 12,
42
+ "specific_heat": 840
43
+ },
44
+ {
45
+ "type": "Material",
46
+ "name": "Wood_siding",
47
+ "conductivity": 0.14,
48
+ "density": 530,
49
+ "specific_heat": 900
50
+ },
51
+ {
52
+ "type": "Material",
53
+ "name": "Foam_insulation",
54
+ "conductivity": 0.04,
55
+ "density": 10,
56
+ "specific_heat": 1400
57
+ },
58
+ {
59
+ "type": "Material",
60
+ "name": "Insulation",
61
+ "conductivity": 0.04,
62
+ "density": 0.1,
63
+ "specific_heat": 0.1
64
+ },
65
+ {
66
+ "type": "Material",
67
+ "name": "Timber_flooring",
68
+ "conductivity": 0.14,
69
+ "density": 650,
70
+ "specific_heat": 1200
71
+ },
72
+ {
73
+ "type": "Material",
74
+ "name": "Roofdeck",
75
+ "conductivity": 0.14,
76
+ "density": 530,
77
+ "specific_heat": 900
78
+ },
79
+ {
80
+ "type": "Material",
81
+ "name": "interior_wall_material",
82
+ "conductivity": 0.510,
83
+ "density": 1400,
84
+ "specific_heat": 1000
85
+ },
86
+ {
87
+ "type": "Construction",
88
+ "name": "Wall",
89
+ "solar_alpha": [
90
+ 0.6,
91
+ 0.6
92
+ ],
93
+ "materials": [
94
+ "Wood_siding",
95
+ "Foam_insulation",
96
+ "Concrete_block"
97
+ ],
98
+ "thicknesses": [
99
+ 0.009,
100
+ 0.0615,
101
+ 0.100
102
+ ]
103
+ },
104
+ {
105
+ "type": "Construction",
106
+ "name": "Floor",
107
+ "solar_alpha": [
108
+ 0,
109
+ 0.6
110
+ ],
111
+ "materials": [
112
+ "Insulation",
113
+ "Concrete_slab"
114
+ ],
115
+ "thicknesses": [
116
+ 1.007,
117
+ 0.080
118
+ ]
119
+ },
120
+ {
121
+ "type": "Construction",
122
+ "name": "Roof",
123
+ "solar_alpha": [
124
+ 0.6,
125
+ 0.6
126
+ ],
127
+ "materials": [
128
+ "Roofdeck",
129
+ "Fiberglass_quilt",
130
+ "Plasterboard"
131
+ ],
132
+ "thicknesses": [
133
+ 0.019,
134
+ 0.1118,
135
+ 0.010
136
+ ]
137
+ },
138
+ {
139
+ "type": "Construction",
140
+ "name": "interior_wall_const",
141
+ "solar_alpha": [
142
+ 0.6,
143
+ 0.6
144
+ ],
145
+ "materials": [
146
+ "interior_wall_material"
147
+ ],
148
+ "thicknesses": [
149
+ 0.20
150
+ ]
151
+ },
152
+ {
153
+ "type": "Glazing",
154
+ "name": "double_glazing",
155
+ "solar_tau": 0.703,
156
+ "solar_rho": [
157
+ 0.128,
158
+ 0.128
159
+ ],
160
+ "g": [
161
+ 0.769,
162
+ 0.769
163
+ ],
164
+ "lw_epsilon": [
165
+ 0.84,
166
+ 0.84
167
+ ],
168
+ "U": 2.722,
169
+ "f_tau_nor": "-0.1175 * cos_theta^3 - 1.0295 * cos_theta^2 + 2.1354 * cos_theta",
170
+ "f_1_minus_rho_nor": [
171
+ "1.114 * cos_theta^3 - 3.209 * cos_theta^2 + 3.095 * cos_theta",
172
+ "1.114 * cos_theta^3 - 3.209 * cos_theta^2 + 3.095 * cos_theta"
173
+ ]
174
+ },
175
+ {
176
+ "type": "Opening_type",
177
+ "name": "Window",
178
+ "glazing": "double_glazing",
179
+ "frame_fraction": 0,
180
+ "glazing_fraction": 1
181
+ },
182
+ {
183
+ "type": "Space_type",
184
+ "name": "constant_gain_space",
185
+ "people_density": "0",
186
+ "light_density": "0",
187
+ "other_gains_density": "4.1667",
188
+ "other_gains_radiant_fraction": 0.6,
189
+ "infiltration": "0.5"
190
+ },
191
+ {
192
+ "type": "Space_type",
193
+ "name": "sun_zone_gains",
194
+ "people_density": "0",
195
+ "light_density": "0",
196
+ "other_gains_density": "0",
197
+ "infiltration": "0.5"
198
+ },
199
+ {
200
+ "type": "Building",
201
+ "name": "Building",
202
+ "file_met": "Denver",
203
+ "albedo": 0.2,
204
+ "azimuth": 0,
205
+ "shadow_calculation": "INSTANT"
206
+ },
207
+ {
208
+ "type": "Space",
209
+ "name": "back_zone",
210
+ "building": "Building",
211
+ "space_type": "constant_gain_space",
212
+ "floor_area": 48,
213
+ "volume": 129.6,
214
+ "furniture_weight": 0
215
+ },
216
+ {
217
+ "type": "Space",
218
+ "name": "sun_zone",
219
+ "building": "Building",
220
+ "space_type": "sun_zone_gains",
221
+ "floor_area": 16,
222
+ "volume": 43.2,
223
+ "furniture_weight": 0
224
+ },
225
+ {
226
+ "type": "Exterior_surface",
227
+ "name": "north_wall",
228
+ "construction": "Wall",
229
+ "space": "back_zone",
230
+ "ref_point": [
231
+ 8,
232
+ 6,
233
+ 0
234
+ ],
235
+ "width": 8,
236
+ "height": 2.7,
237
+ "azimuth": 180,
238
+ "altitude": 0,
239
+ "h_cv": [
240
+ 11.9,
241
+ 2.2
242
+ ]
243
+ },
244
+ {
245
+ "type": "Exterior_surface",
246
+ "name": "east_wall",
247
+ "construction": "Wall",
248
+ "space": "back_zone",
249
+ "ref_point": [
250
+ 8,
251
+ 0,
252
+ 0
253
+ ],
254
+ "width": 6,
255
+ "height": 2.7,
256
+ "azimuth": 90,
257
+ "altitude": 0,
258
+ "h_cv": [
259
+ 11.9,
260
+ 2.2
261
+ ]
262
+ },
263
+ {
264
+ "type": "Exterior_surface",
265
+ "name": "east_wall_2",
266
+ "construction": "Wall",
267
+ "space": "sun_zone",
268
+ "ref_point": [
269
+ 8,
270
+ -2,
271
+ 0
272
+ ],
273
+ "width": 2,
274
+ "height": 2.7,
275
+ "azimuth": 90,
276
+ "altitude": 0,
277
+ "h_cv": [
278
+ 11.9,
279
+ 2.2
280
+ ]
281
+ },
282
+ {
283
+ "type": "Exterior_surface",
284
+ "name": "south_wall",
285
+ "construction": "Wall",
286
+ "space": "sun_zone",
287
+ "ref_point": [
288
+ 0,
289
+ -2,
290
+ 0
291
+ ],
292
+ "width": 8,
293
+ "height": 2.7,
294
+ "azimuth": 0,
295
+ "altitude": 0,
296
+ "h_cv": [
297
+ 11.9,
298
+ 2.2
299
+ ]
300
+ },
301
+ {
302
+ "type": "Opening",
303
+ "name": "south_window_1",
304
+ "surface": "south_wall",
305
+ "opening_type": "Window",
306
+ "ref_point": [
307
+ 0.5,
308
+ 0.5
309
+ ],
310
+ "width": 3,
311
+ "height": 2,
312
+ "h_cv": [
313
+ 8.0,
314
+ 2.4
315
+ ]
316
+ },
317
+ {
318
+ "type": "Opening",
319
+ "name": "south_window_2",
320
+ "surface": "south_wall",
321
+ "opening_type": "Window",
322
+ "ref_point": [
323
+ 4.5,
324
+ 0.5
325
+ ],
326
+ "width": 3,
327
+ "height": 2,
328
+ "h_cv": [
329
+ 8.0,
330
+ 2.4
331
+ ]
332
+ },
333
+ {
334
+ "type": "Exterior_surface",
335
+ "name": "west_wall",
336
+ "construction": "Wall",
337
+ "space": "back_zone",
338
+ "ref_point": [
339
+ 0,
340
+ 6,
341
+ 0
342
+ ],
343
+ "width": 6,
344
+ "height": 2.7,
345
+ "azimuth": -90,
346
+ "altitude": 0,
347
+ "h_cv": [
348
+ 11.9,
349
+ 2.2
350
+ ]
351
+ },
352
+ {
353
+ "type": "Exterior_surface",
354
+ "name": "west_wall_2",
355
+ "construction": "Wall",
356
+ "space": "sun_zone",
357
+ "ref_point": [
358
+ 0,
359
+ 0,
360
+ 0
361
+ ],
362
+ "width": 2,
363
+ "height": 2.7,
364
+ "azimuth": -90,
365
+ "altitude": 0,
366
+ "h_cv": [
367
+ 11.9,
368
+ 2.2
369
+ ]
370
+ },
371
+ {
372
+ "type": "Exterior_surface",
373
+ "name": "roof_wall",
374
+ "construction": "Roof",
375
+ "space": "back_zone",
376
+ "ref_point": [
377
+ 0,
378
+ 0,
379
+ 2.7
380
+ ],
381
+ "width": 8,
382
+ "height": 6,
383
+ "azimuth": 0,
384
+ "altitude": 90,
385
+ "h_cv": [
386
+ 14.4,
387
+ 1.8
388
+ ]
389
+ },
390
+ {
391
+ "type": "Exterior_surface",
392
+ "name": "roof_wall_2",
393
+ "construction": "Roof",
394
+ "space": "sun_zone",
395
+ "ref_point": [
396
+ 0,
397
+ -2,
398
+ 2.7
399
+ ],
400
+ "width": 8,
401
+ "height": 2,
402
+ "azimuth": 0,
403
+ "altitude": 90,
404
+ "h_cv": [
405
+ 14.4,
406
+ 1.8
407
+ ]
408
+ },
409
+ {
410
+ "type": "Exterior_surface",
411
+ "name": "floor_wall",
412
+ "construction": "Floor",
413
+ "space": "back_zone",
414
+ "ref_point": [
415
+ 0,
416
+ 6,
417
+ 0
418
+ ],
419
+ "width": 8,
420
+ "height": 6,
421
+ "azimuth": 0,
422
+ "altitude": -90,
423
+ "h_cv": [
424
+ 0.8,
425
+ 2.2
426
+ ]
427
+ },
428
+ {
429
+ "type": "Exterior_surface",
430
+ "name": "floor_wall_2",
431
+ "construction": "Floor",
432
+ "space": "sun_zone",
433
+ "ref_point": [
434
+ 0,
435
+ 0,
436
+ 0
437
+ ],
438
+ "width": 8,
439
+ "height": 2,
440
+ "azimuth": 0,
441
+ "altitude": -90,
442
+ "h_cv": [
443
+ 0.8,
444
+ 2.2
445
+ ]
446
+ },
447
+ {
448
+ "type": "Interior_surface",
449
+ "name": "interior_wall",
450
+ "construction": "interior_wall_const",
451
+ "spaces": ["sun_zone","back_zone"],
452
+ "ref_point": [0,0,0],
453
+ "width": 8,
454
+ "height": 2.7,
455
+ "azimuth": 0,
456
+ "altitude": 0,
457
+ "h_cv": [
458
+ 2.2,
459
+ 2.2
460
+ ]
461
+ },
462
+ {
463
+ "type": "HVAC_perfect_system",
464
+ "name": "back_system",
465
+ "space": "back_zone",
466
+ "file_met": "Denver",
467
+ "outdoor_air_flow": "0",
468
+ "heating_setpoint": "20",
469
+ "cooling_setpoint": "27",
470
+ "humidifying_setpoint": "0",
471
+ "dehumidifying_setpoint": "100",
472
+ "system_on_off": "1"
473
+ },
474
+ {
475
+ "type": "HVAC_perfect_system",
476
+ "name": "sun_system",
477
+ "space": "sun_zone",
478
+ "file_met": "Denver",
479
+ "outdoor_air_flow": "0",
480
+ "heating_setpoint": "20",
481
+ "cooling_setpoint": "27",
482
+ "humidifying_setpoint": "0",
483
+ "dehumidifying_setpoint": "100",
484
+ "system_on_off": "1"
485
+ }
486
+ ]
487
+ }
488
+
489
+
490
+ sim = osm.Simulation()
491
+ pro = sim.new_project("pro")
492
+ pro.read_dict(case960_dict)
493
+ pro.simulate()
@@ -0,0 +1,17 @@
1
+ ## Component List
2
+
3
+ ### Common parameters
4
+ All the components include these three parameters:
5
+
6
+ - **name** [_string_]: Name of the component.
7
+ - **type** [_string_]: Type of the component.
8
+ - **description** [_string_]: Description of the component.
9
+
10
+ We have divided the list of all components into several groups of related components:
11
+
12
+ - [Components to define shedules](component_list_schedules.md): Day_schedule, Week_schedule, Year_schedule.
13
+ - [Components for reading files](component_list_files.md): File_met, File_data.
14
+ - [Constructive components](component_list_constructions.md): Material, Construction, Glazing, Frame, Opening_type.
15
+ - [Building definition components](component_list_building.md): Building, Space_type, Space, Exterior_surface, Interior_surface, Underground_surface, Virtual_surface, Opening, Shadow_surface.
16
+ - [HVAC systems components](component_list_HVAC_systems.md): HVAC_perfect_system.
17
+ - [Components for various utilities](component_list_utils.md): Calculator.