ebm 0.99.5__py3-none-any.whl

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 (80) hide show
  1. ebm/__init__.py +0 -0
  2. ebm/__main__.py +152 -0
  3. ebm/__version__.py +1 -0
  4. ebm/cmd/__init__.py +0 -0
  5. ebm/cmd/calibrate.py +83 -0
  6. ebm/cmd/calibrate_excel_com_io.py +128 -0
  7. ebm/cmd/heating_systems_by_year.py +18 -0
  8. ebm/cmd/helpers.py +134 -0
  9. ebm/cmd/initialize.py +167 -0
  10. ebm/cmd/migrate.py +92 -0
  11. ebm/cmd/pipeline.py +227 -0
  12. ebm/cmd/prepare_main.py +174 -0
  13. ebm/cmd/result_handler.py +272 -0
  14. ebm/cmd/run_calculation.py +221 -0
  15. ebm/data/area.csv +92 -0
  16. ebm/data/area_new_residential_buildings.csv +3 -0
  17. ebm/data/area_per_person.csv +12 -0
  18. ebm/data/building_code_parameters.csv +9 -0
  19. ebm/data/energy_need_behaviour_factor.csv +6 -0
  20. ebm/data/energy_need_improvements.csv +7 -0
  21. ebm/data/energy_need_original_condition.csv +534 -0
  22. ebm/data/heating_system_efficiencies.csv +13 -0
  23. ebm/data/heating_system_forecast.csv +9 -0
  24. ebm/data/heating_system_initial_shares.csv +1113 -0
  25. ebm/data/holiday_home_energy_consumption.csv +24 -0
  26. ebm/data/holiday_home_stock.csv +25 -0
  27. ebm/data/improvement_building_upgrade.csv +9 -0
  28. ebm/data/new_buildings_residential.csv +32 -0
  29. ebm/data/population_forecast.csv +51 -0
  30. ebm/data/s_curve.csv +40 -0
  31. ebm/energy_consumption.py +307 -0
  32. ebm/extractors.py +115 -0
  33. ebm/heating_system_forecast.py +472 -0
  34. ebm/holiday_home_energy.py +341 -0
  35. ebm/migrations.py +224 -0
  36. ebm/model/__init__.py +0 -0
  37. ebm/model/area.py +403 -0
  38. ebm/model/bema.py +149 -0
  39. ebm/model/building_category.py +150 -0
  40. ebm/model/building_condition.py +78 -0
  41. ebm/model/calibrate_energy_requirements.py +84 -0
  42. ebm/model/calibrate_heating_systems.py +180 -0
  43. ebm/model/column_operations.py +157 -0
  44. ebm/model/construction.py +827 -0
  45. ebm/model/data_classes.py +223 -0
  46. ebm/model/database_manager.py +410 -0
  47. ebm/model/dataframemodels.py +115 -0
  48. ebm/model/defaults.py +30 -0
  49. ebm/model/energy_need.py +6 -0
  50. ebm/model/energy_need_filter.py +182 -0
  51. ebm/model/energy_purpose.py +115 -0
  52. ebm/model/energy_requirement.py +353 -0
  53. ebm/model/energy_use.py +202 -0
  54. ebm/model/enums.py +8 -0
  55. ebm/model/exceptions.py +4 -0
  56. ebm/model/file_handler.py +388 -0
  57. ebm/model/filter_scurve_params.py +83 -0
  58. ebm/model/filter_tek.py +152 -0
  59. ebm/model/heat_pump.py +53 -0
  60. ebm/model/heating_systems.py +20 -0
  61. ebm/model/heating_systems_parameter.py +17 -0
  62. ebm/model/heating_systems_projection.py +3 -0
  63. ebm/model/heating_systems_share.py +28 -0
  64. ebm/model/scurve.py +224 -0
  65. ebm/model/tek.py +1 -0
  66. ebm/s_curve.py +515 -0
  67. ebm/services/__init__.py +0 -0
  68. ebm/services/calibration_writer.py +262 -0
  69. ebm/services/console.py +106 -0
  70. ebm/services/excel_loader.py +66 -0
  71. ebm/services/files.py +38 -0
  72. ebm/services/spreadsheet.py +289 -0
  73. ebm/temp_calc.py +99 -0
  74. ebm/validators.py +565 -0
  75. ebm-0.99.5.dist-info/METADATA +212 -0
  76. ebm-0.99.5.dist-info/RECORD +80 -0
  77. ebm-0.99.5.dist-info/WHEEL +5 -0
  78. ebm-0.99.5.dist-info/entry_points.txt +3 -0
  79. ebm-0.99.5.dist-info/licenses/LICENSE +21 -0
  80. ebm-0.99.5.dist-info/top_level.txt +1 -0
@@ -0,0 +1,212 @@
1
+ Metadata-Version: 2.4
2
+ Name: ebm
3
+ Version: 0.99.5
4
+ Summary: A project for energy usage modeling
5
+ Author-email: Ny Forbruksmodell <ebm@nve.no>, Lars Petrusson <lfep@nve.no>, Mohammed Ettyabi <moe@nve.no>, Ketil Nordstad <kenord@nve.no>
6
+ License: MIT
7
+ Project-URL: Homepage, https://www.nve.no/
8
+ Project-URL: Documentation, https://nve.github.io/ebm-docs
9
+ Project-URL: Repository, https://github.com/NVE/ebm.git
10
+ Keywords: egg,bacon
11
+ Classifier: Development Status :: 3 - Alpha
12
+ Classifier: Intended Audience :: Science/Research
13
+ Classifier: Topic :: Scientific/Engineering :: Information Analysis
14
+ Classifier: Programming Language :: Python :: 3
15
+ Classifier: Programming Language :: Python :: 3.11
16
+ Classifier: Programming Language :: Python :: 3.12
17
+ Classifier: Programming Language :: Python :: 3.13
18
+ Requires-Python: >=3.11
19
+ Description-Content-Type: text/markdown
20
+ License-File: LICENSE
21
+ Requires-Dist: loguru
22
+ Requires-Dist: numpy
23
+ Requires-Dist: openpyxl
24
+ Requires-Dist: pandas
25
+ Requires-Dist: python-dotenv
26
+ Requires-Dist: rich
27
+ Requires-Dist: pandera
28
+ Requires-Dist: XlsxWriter
29
+ Requires-Dist: pywin32; platform_system == "Windows"
30
+ Provides-Extra: test
31
+ Requires-Dist: pytest; extra == "test"
32
+ Provides-Extra: build
33
+ Requires-Dist: build; extra == "build"
34
+ Provides-Extra: dev
35
+ Requires-Dist: ebm[test]; extra == "dev"
36
+ Requires-Dist: ebm[build]; extra == "dev"
37
+ Requires-Dist: ruff; extra == "dev"
38
+ Requires-Dist: ruff-lsp; extra == "dev"
39
+ Provides-Extra: docs
40
+ Requires-Dist: sphinx; extra == "docs"
41
+ Requires-Dist: sphinx-rtd-theme; extra == "docs"
42
+ Requires-Dist: sphinx-autodoc-typehints; extra == "docs"
43
+ Requires-Dist: numpydoc; extra == "docs"
44
+ Requires-Dist: sphinx-tabs; extra == "docs"
45
+ Provides-Extra: tqdm
46
+ Requires-Dist: tqdm; extra == "tqdm"
47
+ Requires-Dist: XlsxWriter; extra == "tqdm"
48
+ Dynamic: license-file
49
+
50
+ # Introduction
51
+
52
+ EBM is a model used by the Norwegian Water Resources and Energy Directorates (NVE) to forecast energy use in the
53
+ building stock. EBM is an open-source model developed and managed by NVE. The model allows the user to analyze how
54
+ demographic trends and policy instruments impact the yearly energy use on a national and regional level. Energy use is
55
+ estimated by a bottom- up approach, based on the building stock floor area, energy need and distribution of heating
56
+ systems. The mathematical model is implemented in Python, with input and output files in excel or csv.
57
+
58
+
59
+ # Getting Started
60
+
61
+ ## More information
62
+
63
+
64
+ - [Full documentation found here](https://nve.github.io/ebm-docs/index.html)
65
+ - [Model description](https://nve.github.io/ebm-docs/model_description/index.html)
66
+ - [Limitations](https://nve.github.io/ebm-docs/limitations.html)
67
+ - [Getting started](https://nve.github.io/ebm-docs/user_guide/getting_started.html)
68
+ - [Troubleshooting](https://nve.github.io/ebm-docs/user_guide/troubleshooting.html)
69
+
70
+
71
+ ## 1. Installation process
72
+
73
+ Please refer to [getting started](https://nve.github.io/ebm-docs/user_guide/getting_started.html) for information on
74
+ how ti install EBM as a user.
75
+
76
+ Open a terminal application and navigate to wherever you want to do work.
77
+
78
+ ### Clone the github repository
79
+
80
+ `git clone https://github.com/NVE/ebm`
81
+
82
+ `cd ebm`
83
+
84
+ ### Make a python virtual environment (optional)
85
+
86
+ While optional, it is always recommended to install and run python modules in a discrete virtual environment. To create a
87
+ new python virtual environment (venv) type the following in a terminal.
88
+
89
+ `python -m venv venv`
90
+
91
+ ## Activate virtual environment
92
+ To use your venv you need to activate it
93
+ ### Using powershell
94
+ (Your command prompt starts with PS)
95
+ `\venv\Scripts\active.ps1`
96
+
97
+ ### Using cmd
98
+ (Your command prompt starts with C:\ where C is any letter from A-Z)
99
+ `\venv\Scripts\active.bat`
100
+
101
+ ### GNU/Linux and macOS
102
+
103
+ `source venv/bin/active`
104
+
105
+ More information on [Python virtual environments](https://realpython.com/python-virtual-environments-a-primer/)
106
+
107
+
108
+ ### Install EBM
109
+
110
+ Make sure your current working directory is the EBM root.
111
+
112
+ ```
113
+ python -m pip install -e .
114
+
115
+ ```
116
+
117
+ The command will install install all dependencies and ebm as an editable module.
118
+
119
+
120
+
121
+ ## 2. Software dependencies
122
+ - pandas
123
+ - loguru
124
+ - openpyxl
125
+ - pandera
126
+
127
+ Dependecies will be automatically installed when you install the package as described under Installation process.
128
+ See also [requirements.txt](requirements.txt)
129
+
130
+ ## 3. Run the model
131
+
132
+ There are multiple ways to run the program. Listed bellow is running as a standalone program and running as a module. If
133
+ running as a program fails due to security restriction, you might be able to use the module approach instead.
134
+
135
+ See also [Running as code](#running-as-code)
136
+
137
+
138
+ ### Running as a module
139
+
140
+ ```cmd
141
+ python3 -m ebm
142
+ ```
143
+
144
+ By default, the results will be written to the subdirectory `output`
145
+
146
+ For more information use `--help`
147
+
148
+ `python -m ebm --help`
149
+
150
+ ```shell
151
+ usage: ebm [-h] [--version] [--debug] [--categories [CATEGORIES ...]] [--input [INPUT]] [--force] [--open]
152
+ [--csv-delimiter CSV_DELIMITER] [--create-input] [--horizontal-years]
153
+ [{area-forecast,energy-requirements,heating-systems,energy-use}] [output_file]
154
+
155
+ Calculate EBM energy use 1.2.15
156
+
157
+ positional arguments:
158
+ {area-forecast,energy-requirements,heating-systems,energy-use}
159
+
160
+ The calculation step you want to run. The steps are sequential. Any prerequisite to the chosen step will run
161
+ automatically.
162
+ output_file The location of the file you want to be written. default: output\ebm_output.xlsx
163
+ If the file already exists the program will terminate without overwriting.
164
+ Use "-" to output to the console instead
165
+
166
+ options:
167
+ -h, --help show this help message and exit
168
+ --version, -v show program's version number and exit
169
+ --debug Run in debug mode. (Extra information written to stdout)
170
+ --categories [CATEGORIES ...], --building-categories [CATEGORIES ...], -c [CATEGORIES ...]
171
+
172
+ One or more of the following building categories:
173
+ house, apartment_block, kindergarten, school, university, office, retail, hotel, hospital, nursing_home, culture, sports, storage_repairs.
174
+ The default is to use all categories.
175
+ --input [INPUT], --input-directory [INPUT], -i [INPUT]
176
+ path to the directory with input files
177
+ --force, -f Write to <filename> even if it already exists
178
+ --open, -o Open output file(s) automatically when finished writing. (Usually Excel)
179
+ --csv-delimiter CSV_DELIMITER, --delimiter CSV_DELIMITER, -e CSV_DELIMITER
180
+ A single character to be used for separating columns when writing csv. Default: "," Special characters like ; should be quoted ";"
181
+ --create-input
182
+ Create input directory containing all required files in the current working directory
183
+ --horizontal-years, --horizontal, --horisontal
184
+ Show years horizontal (left to right)
185
+ ```
186
+
187
+
188
+ ### Running as code
189
+ ```python
190
+
191
+ from ebm.temp_calc import calculate_energy_use_wide
192
+ from ebm.model.file_handler import FileHandler
193
+
194
+ fh = FileHandler()
195
+ fh.create_missing_input_files()
196
+
197
+ df = calculate_energy_use_wide(ebm_input=fh.input_directory)
198
+ print(df)
199
+
200
+ ```
201
+
202
+ ## License
203
+ This project is licensed under the MIT License. You are free to use, modify, and distribute the software with proper attribution.
204
+
205
+ ## Contributing
206
+ We welcome contributions! Please refer to the Contributing Guide (CONTRIBUTING.md) for details on how to get started.
207
+
208
+ ## Documentation
209
+ Full documentation is available at the EBM User Guide: https://nve.github.io/ebm-docs/
210
+
211
+
212
+
@@ -0,0 +1,80 @@
1
+ ebm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
+ ebm/__main__.py,sha256=36siuK2lKFMhECFMKcdhIU6Az5s7ryUHr0ABUf4HaxU,6515
3
+ ebm/__version__.py,sha256=X-FRpVx_eDPmRp9WH3Nvc6R3L6fPa2IU_2-3nzRJxVs,20
4
+ ebm/energy_consumption.py,sha256=zf1FHat3sGNZHi4N2Pe4FHIgda_arNoP_rcVwPSERIU,16582
5
+ ebm/extractors.py,sha256=cwYyqV_mzKPF0O7FlKifKNUbCKIJz0wn4qOoLW4NPwE,5123
6
+ ebm/heating_system_forecast.py,sha256=c4zGqHYLtV6bJqGHmY1H78FvC32C8OleE72gd9UE4yk,22929
7
+ ebm/holiday_home_energy.py,sha256=-mglnBrkrPG1s_cSS6qqXSwVfsZRQ21QztuRajy4HKI,14667
8
+ ebm/migrations.py,sha256=3QXijoaAQpAhn0WxU3If0-wQe3cOM28vWQLQvaG8DBc,7931
9
+ ebm/s_curve.py,sha256=s3kFSQHQimdz_T8CToYH-fDgi5EWWClLZJs1DeLj41Y,20376
10
+ ebm/temp_calc.py,sha256=aPn4JG8PiBWROGlLb7ugfViGDZOZ_zarZxtvH8F3AO8,4940
11
+ ebm/validators.py,sha256=XQruv7pF7Vpm-oOw62cn7totA6lH0jGlCZaS2tKhSJw,22582
12
+ ebm/cmd/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
+ ebm/cmd/calibrate.py,sha256=_E59K371wNKthEKDMW4x8DsmphYNZ5RqG4ReXAN6Lww,3097
14
+ ebm/cmd/calibrate_excel_com_io.py,sha256=npivvLC5i5SkmrwFlmXMrwarYfxd4agfrV3q50hGV9c,6407
15
+ ebm/cmd/heating_systems_by_year.py,sha256=0eElYkhvnJAen7p9Y_WvQyGuXUvDlxLFjt5zcC_adDw,740
16
+ ebm/cmd/helpers.py,sha256=-zjOOPb17VeAJ1N6E2YtnabNcFqE0iVwoaUggZeXbIw,5398
17
+ ebm/cmd/initialize.py,sha256=uJjXGbP71VPLnDWNohfO4bJidM3c00vI-1xknXmrOyE,5609
18
+ ebm/cmd/migrate.py,sha256=wtpuTu0DcHNzTC9wZUgNiJ-rTSW-e6lYpRVdi-lBgW0,2819
19
+ ebm/cmd/pipeline.py,sha256=0LhmL_vgKEuUvz_p46VQREjKkh8a6k-bUzAtSQcsWvo,11438
20
+ ebm/cmd/prepare_main.py,sha256=0ovruHbUvnkIOUNQoPKeio7DGtA9Ip7ZfTnCEoWnps0,7563
21
+ ebm/cmd/result_handler.py,sha256=A1rMd4llD1PezH07E5-Ooz2NBTkcAzgAQHGTFRBcW9M,12358
22
+ ebm/cmd/run_calculation.py,sha256=HrezG48SPpGpigFiAQ393aIsdRFXW9598sJktLQsu3k,8274
23
+ ebm/data/area.csv,sha256=KoPtsmP0qMIbJFHLgIhrWSKlmq9y-MYtxpiIrXGqQCs,2475
24
+ ebm/data/area_new_residential_buildings.csv,sha256=hUnVbXnWKMV-7R_5D8cBof6tssRxNTBzCTsz4ihj8Zs,76
25
+ ebm/data/area_per_person.csv,sha256=9qYHBnMwmeoRB9oKJnSRWiE6tuL52RSH4Ma80Nttijo,192
26
+ ebm/data/building_code_parameters.csv,sha256=1rBHY8QHMjL0IfCv2OP18sduim5MjBfq8tH88mOENR4,238
27
+ ebm/data/energy_need_behaviour_factor.csv,sha256=J-s_zUYPTs53XETnaw-_wbT8EZbKYpdp0W0PF89VnKo,305
28
+ ebm/data/energy_need_improvements.csv,sha256=ZqEZUloIKjcKgZnZZgQMnF2gqNfGdCl0jDCLeGGEigM,462
29
+ ebm/data/energy_need_original_condition.csv,sha256=uUPEJbVBHeKTx1Tl3v5yInnQ7buhwYaP10_k6fTjjnM,23191
30
+ ebm/data/heating_system_efficiencies.csv,sha256=Fyix3PKOds9ByQITj5hAflO-TAGs3gcoUZpikuj44CU,1340
31
+ ebm/data/heating_system_forecast.csv,sha256=8eninSFqzYJaM6ITF2J-hytXDg9T9hSCjyCw33RKfH4,1847
32
+ ebm/data/heating_system_initial_shares.csv,sha256=sqX-EJjHTSAxAOd-SESUto-Dxqdq9f_RRoLQ3bokxFU,67093
33
+ ebm/data/holiday_home_energy_consumption.csv,sha256=v8xU3L_bEksVuBtqMJsQ4HgDTk2KFLtfSo4CyTY41Ng,446
34
+ ebm/data/holiday_home_stock.csv,sha256=euPZGWseenOQNQj5705v17J9LlunIfdo3pj2v7WxLIE,652
35
+ ebm/data/improvement_building_upgrade.csv,sha256=CskzmpU2NGhu53l09nzuxeGwpSX8TAcuU1GUnxoL4Vs,475
36
+ ebm/data/new_buildings_residential.csv,sha256=ikxLmAGzK6PcLB8xzPIGWIelNHEs2si--YV58iSFBpc,1807
37
+ ebm/data/population_forecast.csv,sha256=uYmQAEeB16SVJmY2jGXz9Xxtit45CNenMcvRs1vnFG8,959
38
+ ebm/data/s_curve.csv,sha256=xNP4c6PzX6PfM-VP8voRXXohsJD8mJKNLSSqb-vEiRA,1854
39
+ ebm/model/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
40
+ ebm/model/area.py,sha256=jW9YChz9nmqKO6pwXuGZ_uh5B6aP2l0jeuDsmusc6w0,18712
41
+ ebm/model/bema.py,sha256=29oUjgkMpQzfkkqy3E2dQVZCBNfqNvn5hg-8ty5W-XY,6863
42
+ ebm/model/building_category.py,sha256=-sg-lDHXgjy3AytbZcKJJAnaqqMAKU_8s3hP9s59hbE,5408
43
+ ebm/model/building_condition.py,sha256=S5gbvsskxhTwD4BG8kOD74uN6G-XZN6IEuamvrI7Nno,2697
44
+ ebm/model/calibrate_energy_requirements.py,sha256=4FA3NiOQ6w2gGc6lSzyWaQngBGuxbM93XmZXBX5yH1E,2688
45
+ ebm/model/calibrate_heating_systems.py,sha256=fGe99Llt0ddzaRcBHPZ4pG6ixM_zdAzxbmnUTawguhU,7703
46
+ ebm/model/column_operations.py,sha256=-hxVI7gahl2JOxmXMSmQcPy3VYpKNxWkg63Ecc3yTj8,6503
47
+ ebm/model/construction.py,sha256=t8SynZvcHj7BSQK4ZLO7wWeI9HK061Dg-1ztnYmFuz8,39906
48
+ ebm/model/data_classes.py,sha256=bW82BKUSvVzspUyEov_OCmLtYKoPrgcPdYDORXZ6KzI,6754
49
+ ebm/model/database_manager.py,sha256=uU_NyuZBFwR-HB4Hpng2xE2QWA7TQ1V3rQ5N4QCOi98,17658
50
+ ebm/model/dataframemodels.py,sha256=I1_ZAVp6ui7jJMDvsOs3jLN-k5jOvTCBUG4SFqhqxZ0,4959
51
+ ebm/model/defaults.py,sha256=m4isGbcMSZv9BrOb01uRhEi-U8mqiyhPE_3oDludT0g,768
52
+ ebm/model/energy_need.py,sha256=aZAKml1-TSKqFT9Z-gMoxE_2lMFJ14aCZvbletpwzg8,473
53
+ ebm/model/energy_need_filter.py,sha256=jZ7E1wLfOTPrbkMSSNndS2R4NJNqb5WZArUPCQWIgQ4,7028
54
+ ebm/model/energy_purpose.py,sha256=B_Et8uRIVOAohsjq7fm-uL-wQjXmLEiRN1hyr9EsZLg,4715
55
+ ebm/model/energy_requirement.py,sha256=kZvuPLH49uflqtBtaEXDCp222PDDrPoNME7mamhu0a0,18148
56
+ ebm/model/energy_use.py,sha256=IUJWyjO3gyDs_zcZvCuV7GTqRlLaYbl37kprJs6xFVk,10377
57
+ ebm/model/enums.py,sha256=Ru7XVm12f1dXdNEevqyTnfldWXzqE9Ss9eRshfNj9rQ,191
58
+ ebm/model/exceptions.py,sha256=UtK6iRiJV_PjqClfFwkn8_COiw2tRlBnUDtTwHb7VDU,117
59
+ ebm/model/file_handler.py,sha256=-a9DyRdC9i92oXrhss56JfFRU0gDjaDMKcFjX6dluqY,15245
60
+ ebm/model/filter_scurve_params.py,sha256=5mIFBZ7Fw0JqKrmTDhW_fLx8uPlPtLP371N1ZsozkL0,4389
61
+ ebm/model/filter_tek.py,sha256=jvWS3hgT72riAi84KJ2nnN0GU29FCEQpngZOXhU2Yuo,7220
62
+ ebm/model/heat_pump.py,sha256=eaCgj-77q5qX1vq_f84VCl5iKxCTKwAhh0RVusdTZWo,2397
63
+ ebm/model/heating_systems.py,sha256=ql_hSrknfgb7QremgJUs7_eEqlkhZSYfAlFnDKH2ZmE,677
64
+ ebm/model/heating_systems_parameter.py,sha256=ElenZcEqSxY4bCS57sGd3A4-gQe8nx6-b0QzJHCJV84,646
65
+ ebm/model/heating_systems_projection.py,sha256=rqUtJyMLicobcyhmr74TepjmUQAEmlazKT3vjV_n3aA,6
66
+ ebm/model/heating_systems_share.py,sha256=QROuT5f0ueRvkEwTklPNckr6HgVcHrYM43YvVel5iQU,1292
67
+ ebm/model/scurve.py,sha256=3zJfdnXRr44G0oF6uJqhyeF8_BE3a02GqEL9JDScvEs,8873
68
+ ebm/model/tek.py,sha256=frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN_XKdLCPjaYaY,2
69
+ ebm/services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
70
+ ebm/services/calibration_writer.py,sha256=Vqnl8J7Qd6IudfkIdXFQPljsnBA-ZvrWEX37DB1c4Ns,10591
71
+ ebm/services/console.py,sha256=pxYTCBU2P2XGvDhf8m6JW4z4ACQClOIpcZtY-JI7hoY,3611
72
+ ebm/services/excel_loader.py,sha256=4wA1NwpVhjbbPHYzd8ff-3Y0Qiue3bs8Wi9AiToxo6c,2315
73
+ ebm/services/files.py,sha256=z5dACO7kLgfmZsVlVqcBJB7lBLFsE60r7yV1qm_0u5Q,1247
74
+ ebm/services/spreadsheet.py,sha256=ULeW9OGkzHILyDcj4CVFaT4jq3PdjAOrgW-IgmcatK4,10400
75
+ ebm-0.99.5.dist-info/licenses/LICENSE,sha256=z6m_5UiYKx1WqLe3n_p0-r8qmnI-EB6A742-bBjrnL0,1115
76
+ ebm-0.99.5.dist-info/METADATA,sha256=K0FNQ_4bFSO7IrOthzNLToWfe6g0f6632tsCYQEJ86s,7893
77
+ ebm-0.99.5.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
78
+ ebm-0.99.5.dist-info/entry_points.txt,sha256=oBnI63ekBLrYuADfsoXaM2_frfTvqv0YFpyIdOOMp6g,94
79
+ ebm-0.99.5.dist-info/top_level.txt,sha256=gPNbfZiBvhzVrSAsrzR_rJbhjXGgR_3po5621JZvdds,4
80
+ ebm-0.99.5.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (80.9.0)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1,3 @@
1
+ [console_scripts]
2
+ ebm = ebm.__main__:main
3
+ ebm-calibrate = ebm.cmd.calibrate_excel_com_io:main
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Norges vassdrags- og energidirektorat
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1 @@
1
+ ebm