phx 1.49.3__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.
Files changed (168) hide show
  1. phx-1.49.3/.github/workflows/ci.yaml +66 -0
  2. phx-1.49.3/LICENSE +674 -0
  3. phx-1.49.3/PHX/PHPP/README.md +13 -0
  4. phx-1.49.3/PHX/PHPP/__init__.py +1 -0
  5. phx-1.49.3/PHX/PHPP/phpp_app.py +823 -0
  6. phx-1.49.3/PHX/PHPP/phpp_localization/EN_10_3.json +1553 -0
  7. phx-1.49.3/PHX/PHPP/phpp_localization/EN_10_4A.json +1553 -0
  8. phx-1.49.3/PHX/PHPP/phpp_localization/EN_10_4IP.json +1553 -0
  9. phx-1.49.3/PHX/PHPP/phpp_localization/EN_10_6.json +1553 -0
  10. phx-1.49.3/PHX/PHPP/phpp_localization/EN_9_6A.json +1548 -0
  11. phx-1.49.3/PHX/PHPP/phpp_localization/EN_9_7IP.json +1548 -0
  12. phx-1.49.3/PHX/PHPP/phpp_localization/__init__.py +2 -0
  13. phx-1.49.3/PHX/PHPP/phpp_localization/load.py +50 -0
  14. phx-1.49.3/PHX/PHPP/phpp_localization/shape_model.py +1109 -0
  15. phx-1.49.3/PHX/PHPP/phpp_model/__init__.py +0 -0
  16. phx-1.49.3/PHX/PHPP/phpp_model/areas_data.py +44 -0
  17. phx-1.49.3/PHX/PHPP/phpp_model/areas_surface.py +218 -0
  18. phx-1.49.3/PHX/PHPP/phpp_model/areas_thermal_bridges.py +61 -0
  19. phx-1.49.3/PHX/PHPP/phpp_model/climate_entry.py +161 -0
  20. phx-1.49.3/PHX/PHPP/phpp_model/component_frame.py +151 -0
  21. phx-1.49.3/PHX/PHPP/phpp_model/component_glazing.py +64 -0
  22. phx-1.49.3/PHX/PHPP/phpp_model/component_vent.py +71 -0
  23. phx-1.49.3/PHX/PHPP/phpp_model/elec_non_res.py +59 -0
  24. phx-1.49.3/PHX/PHPP/phpp_model/electricity_item.py +364 -0
  25. phx-1.49.3/PHX/PHPP/phpp_model/hot_water_piping.py +151 -0
  26. phx-1.49.3/PHX/PHPP/phpp_model/hot_water_tank.py +76 -0
  27. phx-1.49.3/PHX/PHPP/phpp_model/shading_rows.py +95 -0
  28. phx-1.49.3/PHX/PHPP/phpp_model/uvalues_constructor.py +110 -0
  29. phx-1.49.3/PHX/PHPP/phpp_model/vent_ducts.py +0 -0
  30. phx-1.49.3/PHX/PHPP/phpp_model/vent_space.py +132 -0
  31. phx-1.49.3/PHX/PHPP/phpp_model/vent_units.py +58 -0
  32. phx-1.49.3/PHX/PHPP/phpp_model/ventilation_data.py +82 -0
  33. phx-1.49.3/PHX/PHPP/phpp_model/verification_data.py +63 -0
  34. phx-1.49.3/PHX/PHPP/phpp_model/version.py +21 -0
  35. phx-1.49.3/PHX/PHPP/phpp_model/windows_rows.py +106 -0
  36. phx-1.49.3/PHX/PHPP/sheet_io/__init__.py +24 -0
  37. phx-1.49.3/PHX/PHPP/sheet_io/io_PER.py +443 -0
  38. phx-1.49.3/PHX/PHPP/sheet_io/io_addnl_vent.py +392 -0
  39. phx-1.49.3/PHX/PHPP/sheet_io/io_areas.py +435 -0
  40. phx-1.49.3/PHX/PHPP/sheet_io/io_climate.py +62 -0
  41. phx-1.49.3/PHX/PHPP/sheet_io/io_components.py +552 -0
  42. phx-1.49.3/PHX/PHPP/sheet_io/io_cooling_demand.py +53 -0
  43. phx-1.49.3/PHX/PHPP/sheet_io/io_cooling_peak_load.py +48 -0
  44. phx-1.49.3/PHX/PHPP/sheet_io/io_cooling_units.py +141 -0
  45. phx-1.49.3/PHX/PHPP/sheet_io/io_elec_non_res.py +160 -0
  46. phx-1.49.3/PHX/PHPP/sheet_io/io_electricity.py +80 -0
  47. phx-1.49.3/PHX/PHPP/sheet_io/io_exceptions.py +42 -0
  48. phx-1.49.3/PHX/PHPP/sheet_io/io_heating_demand.py +49 -0
  49. phx-1.49.3/PHX/PHPP/sheet_io/io_heating_peak_load.py +51 -0
  50. phx-1.49.3/PHX/PHPP/sheet_io/io_hot_water.py +257 -0
  51. phx-1.49.3/PHX/PHPP/sheet_io/io_ihg_non_res.py +21 -0
  52. phx-1.49.3/PHX/PHPP/sheet_io/io_overview.py +135 -0
  53. phx-1.49.3/PHX/PHPP/sheet_io/io_shading.py +113 -0
  54. phx-1.49.3/PHX/PHPP/sheet_io/io_solar_dhw.py +63 -0
  55. phx-1.49.3/PHX/PHPP/sheet_io/io_solar_pv.py +76 -0
  56. phx-1.49.3/PHX/PHPP/sheet_io/io_u_values.py +359 -0
  57. phx-1.49.3/PHX/PHPP/sheet_io/io_use_non_res.py +21 -0
  58. phx-1.49.3/PHX/PHPP/sheet_io/io_variants.py +234 -0
  59. phx-1.49.3/PHX/PHPP/sheet_io/io_ventilation.py +139 -0
  60. phx-1.49.3/PHX/PHPP/sheet_io/io_verification.py +144 -0
  61. phx-1.49.3/PHX/PHPP/sheet_io/io_windows.py +355 -0
  62. phx-1.49.3/PHX/__init__.py +0 -0
  63. phx-1.49.3/PHX/_hbjson_to_phpp.sh +22 -0
  64. phx-1.49.3/PHX/from_HBJSON/README.md +2 -0
  65. phx-1.49.3/PHX/from_HBJSON/__init__.py +4 -0
  66. phx-1.49.3/PHX/from_HBJSON/cleanup.py +546 -0
  67. phx-1.49.3/PHX/from_HBJSON/cleanup_merge_faces.py +232 -0
  68. phx-1.49.3/PHX/from_HBJSON/create_assemblies.py +471 -0
  69. phx-1.49.3/PHX/from_HBJSON/create_building.py +385 -0
  70. phx-1.49.3/PHX/from_HBJSON/create_elec_equip.py +68 -0
  71. phx-1.49.3/PHX/from_HBJSON/create_foundations.py +57 -0
  72. phx-1.49.3/PHX/from_HBJSON/create_geometry.py +118 -0
  73. phx-1.49.3/PHX/from_HBJSON/create_hvac.py +520 -0
  74. phx-1.49.3/PHX/from_HBJSON/create_project.py +153 -0
  75. phx-1.49.3/PHX/from_HBJSON/create_rooms.py +149 -0
  76. phx-1.49.3/PHX/from_HBJSON/create_schedules.py +397 -0
  77. phx-1.49.3/PHX/from_HBJSON/create_shades.py +108 -0
  78. phx-1.49.3/PHX/from_HBJSON/create_shw_devices.py +229 -0
  79. phx-1.49.3/PHX/from_HBJSON/create_variant.py +893 -0
  80. phx-1.49.3/PHX/from_HBJSON/read_HBJSON_file.py +85 -0
  81. phx-1.49.3/PHX/from_WUFI_XML/__init__.py +0 -0
  82. phx-1.49.3/PHX/from_WUFI_XML/phx_converter.py +13 -0
  83. phx-1.49.3/PHX/from_WUFI_XML/phx_schemas.py +1827 -0
  84. phx-1.49.3/PHX/from_WUFI_XML/read_WUFI_XML_file.py +115 -0
  85. phx-1.49.3/PHX/from_WUFI_XML/wufi_file_schema.py +1088 -0
  86. phx-1.49.3/PHX/from_WUFI_XML/wufi_file_types.py +434 -0
  87. phx-1.49.3/PHX/hbjson_to_phpp.py +67 -0
  88. phx-1.49.3/PHX/hbjson_to_wufi_xml.py +251 -0
  89. phx-1.49.3/PHX/model/README.md +47 -0
  90. phx-1.49.3/PHX/model/__init__.py +19 -0
  91. phx-1.49.3/PHX/model/building.py +455 -0
  92. phx-1.49.3/PHX/model/certification.py +201 -0
  93. phx-1.49.3/PHX/model/components.py +767 -0
  94. phx-1.49.3/PHX/model/constructions.py +595 -0
  95. phx-1.49.3/PHX/model/elec_equip.py +387 -0
  96. phx-1.49.3/PHX/model/enums/__init__.py +0 -0
  97. phx-1.49.3/PHX/model/enums/building.py +112 -0
  98. phx-1.49.3/PHX/model/enums/elec_equip.py +23 -0
  99. phx-1.49.3/PHX/model/enums/foundations.py +24 -0
  100. phx-1.49.3/PHX/model/enums/hvac.py +166 -0
  101. phx-1.49.3/PHX/model/enums/phi_certification_phpp_10.py +47 -0
  102. phx-1.49.3/PHX/model/enums/phi_certification_phpp_9.py +60 -0
  103. phx-1.49.3/PHX/model/enums/phius_certification.py +42 -0
  104. phx-1.49.3/PHX/model/enums/phx_site.py +26 -0
  105. phx-1.49.3/PHX/model/geometry.py +571 -0
  106. phx-1.49.3/PHX/model/ground.py +98 -0
  107. phx-1.49.3/PHX/model/hvac/__init__.py +14 -0
  108. phx-1.49.3/PHX/model/hvac/_base.py +237 -0
  109. phx-1.49.3/PHX/model/hvac/_diagram.drawio +51 -0
  110. phx-1.49.3/PHX/model/hvac/collection.py +698 -0
  111. phx-1.49.3/PHX/model/hvac/cooling_params.py +132 -0
  112. phx-1.49.3/PHX/model/hvac/ducting.py +162 -0
  113. phx-1.49.3/PHX/model/hvac/heat_pumps.py +175 -0
  114. phx-1.49.3/PHX/model/hvac/heating.py +229 -0
  115. phx-1.49.3/PHX/model/hvac/piping.py +329 -0
  116. phx-1.49.3/PHX/model/hvac/renewable_devices.py +144 -0
  117. phx-1.49.3/PHX/model/hvac/supportive_devices.py +59 -0
  118. phx-1.49.3/PHX/model/hvac/ventilation.py +278 -0
  119. phx-1.49.3/PHX/model/hvac/water.py +177 -0
  120. phx-1.49.3/PHX/model/loads/__init__.py +1 -0
  121. phx-1.49.3/PHX/model/loads/lighting.py +20 -0
  122. phx-1.49.3/PHX/model/loads/occupancy.py +20 -0
  123. phx-1.49.3/PHX/model/loads/ventilation.py +31 -0
  124. phx-1.49.3/PHX/model/phx_site.py +342 -0
  125. phx-1.49.3/PHX/model/programs/__init__.py +0 -0
  126. phx-1.49.3/PHX/model/programs/lighting.py +20 -0
  127. phx-1.49.3/PHX/model/programs/occupancy.py +20 -0
  128. phx-1.49.3/PHX/model/programs/ventilation.py +25 -0
  129. phx-1.49.3/PHX/model/project.py +351 -0
  130. phx-1.49.3/PHX/model/schedules/__init__.py +0 -0
  131. phx-1.49.3/PHX/model/schedules/lighting.py +94 -0
  132. phx-1.49.3/PHX/model/schedules/occupancy.py +91 -0
  133. phx-1.49.3/PHX/model/schedules/ventilation.py +93 -0
  134. phx-1.49.3/PHX/model/shades.py +46 -0
  135. phx-1.49.3/PHX/model/spaces.py +109 -0
  136. phx-1.49.3/PHX/model/utilization_patterns.py +216 -0
  137. phx-1.49.3/PHX/run.py +265 -0
  138. phx-1.49.3/PHX/to_WUFI_XML/README.md +2 -0
  139. phx-1.49.3/PHX/to_WUFI_XML/__init__.py +8 -0
  140. phx-1.49.3/PHX/to_WUFI_XML/_bug_fixes.py +104 -0
  141. phx-1.49.3/PHX/to_WUFI_XML/xml_builder.py +138 -0
  142. phx-1.49.3/PHX/to_WUFI_XML/xml_converter.py +77 -0
  143. phx-1.49.3/PHX/to_WUFI_XML/xml_schemas.py +1889 -0
  144. phx-1.49.3/PHX/to_WUFI_XML/xml_txt_to_file.py +66 -0
  145. phx-1.49.3/PHX/to_WUFI_XML/xml_writables.py +87 -0
  146. phx-1.49.3/PHX/xl/__init__.py +1 -0
  147. phx-1.49.3/PHX/xl/xl_app.py +621 -0
  148. phx-1.49.3/PHX/xl/xl_data.py +258 -0
  149. phx-1.49.3/PHX/xl/xl_typing.py +167 -0
  150. phx-1.49.3/PKG-INFO +52 -0
  151. phx-1.49.3/README.md +33 -0
  152. phx-1.49.3/_testing_HBJSON_to_PHPP.py +81 -0
  153. phx-1.49.3/_testing_HBJSON_to_WUFI.py +62 -0
  154. phx-1.49.3/_testing_WUFI_to_PHX.py +42 -0
  155. phx-1.49.3/dev-requirements.txt +11 -0
  156. phx-1.49.3/docs/README.md +20 -0
  157. phx-1.49.3/docs/sphinx/Makefile +20 -0
  158. phx-1.49.3/docs/sphinx/make.bat +35 -0
  159. phx-1.49.3/docs/sphinx/source/conf.py +34 -0
  160. phx-1.49.3/docs/sphinx/source/index.rst +14 -0
  161. phx-1.49.3/phx.egg-info/PKG-INFO +52 -0
  162. phx-1.49.3/phx.egg-info/SOURCES.txt +167 -0
  163. phx-1.49.3/phx.egg-info/dependency_links.txt +1 -0
  164. phx-1.49.3/phx.egg-info/requires.txt +8 -0
  165. phx-1.49.3/phx.egg-info/top_level.txt +1 -0
  166. phx-1.49.3/requirements.txt +8 -0
  167. phx-1.49.3/setup.cfg +36 -0
  168. phx-1.49.3/setup.py +16 -0
@@ -0,0 +1,66 @@
1
+ name: CI
2
+
3
+ on: [push, pull_request]
4
+ permissions: write-all
5
+
6
+ jobs:
7
+ test:
8
+ name: Unit tests
9
+
10
+ runs-on: ubuntu-latest
11
+ strategy:
12
+ matrix:
13
+ python-version: [3.10.14]
14
+
15
+ steps:
16
+ - uses: actions/checkout@v2
17
+ - name: set up Python
18
+ uses: actions/setup-python@v2
19
+ with:
20
+ python-version: ${{ matrix.python-version }}
21
+
22
+ - name: install python dependencies
23
+ run: |
24
+ python -m pip install --upgrade pip
25
+ pip install -r requirements.txt
26
+ pip install -r dev-requirements.txt
27
+ - name: run tests
28
+ run: python -m pytest tests/
29
+
30
+ deploy:
31
+ name: Deploy to GitHub and PyPI
32
+ runs-on: ubuntu-latest
33
+ needs: test
34
+ if: github.ref == 'refs/heads/main' && github.repository_owner == 'ph-tools'
35
+ steps:
36
+ - uses: actions/checkout@v2
37
+ - name: set up Python
38
+ uses: actions/setup-python@v2
39
+ with:
40
+ python-version: 3.10.14
41
+
42
+ - name: set up node # we need node for for semantic release
43
+ uses: actions/setup-node@v2.1.2
44
+ with:
45
+ node-version: 14.2.0
46
+
47
+ - name: install python dependencies
48
+ run: |
49
+ python -m pip install --upgrade pip
50
+ pip install -r dev-requirements.txt
51
+ pip install -r requirements.txt
52
+
53
+ - name: install semantic-release
54
+ run:
55
+ npm install @semantic-release/exec
56
+
57
+ - name: run semantic release
58
+ id: new_release
59
+ run: |
60
+ nextRelease="`npx semantic-release@^17.0.0 --dryRun | grep -oP 'Published release \K.*? ' || true`"
61
+ npx semantic-release@^17.0.0
62
+ echo "::set-output name=tag::$nextRelease"
63
+ env:
64
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
65
+ PYPI_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
66
+ PYPI_USERNAME: ${{ secrets.PYPI_USERNAME }}