ChaProEV 1.2.3__tar.gz → 1.2.5__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 (100) hide show
  1. {chaproev-1.2.3/src/ChaProEV.egg-info → chaproev-1.2.5}/PKG-INFO +13 -2
  2. {chaproev-1.2.3 → chaproev-1.2.5}/pyproject.toml +1 -1
  3. chaproev-1.2.5/requirements.txt +10 -0
  4. chaproev-1.2.5/scenarios/Mopo/Latvia_car_own_driveway_2050.toml +405 -0
  5. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV/ChaProEV.py +3 -3
  6. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV/charging.py +60 -56
  7. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV/consumption.py +2 -4
  8. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV/define.py +85 -79
  9. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV/make_variants.py +14 -15
  10. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV/mobility.py +85 -86
  11. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV/profiles.py +16 -18
  12. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV/run_time.py +14 -15
  13. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV/scenarios_module.py +6 -7
  14. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV/weather.py +72 -81
  15. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV/writing.py +6 -6
  16. {chaproev-1.2.3 → chaproev-1.2.5/src/ChaProEV.egg-info}/PKG-INFO +13 -2
  17. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV.egg-info/SOURCES.txt +2 -0
  18. chaproev-1.2.5/src/ChaProEV.egg-info/requires.txt +10 -0
  19. chaproev-1.2.3/requirements.txt +0 -0
  20. {chaproev-1.2.3 → chaproev-1.2.5}/.flake8 +0 -0
  21. {chaproev-1.2.3 → chaproev-1.2.5}/.gitignore +0 -0
  22. {chaproev-1.2.3 → chaproev-1.2.5}/.vscode/ltex.dictionary.en-US.txt +0 -0
  23. {chaproev-1.2.3 → chaproev-1.2.5}/.vscode/settings.json +0 -0
  24. {chaproev-1.2.3 → chaproev-1.2.5}/ChaProEV.pptx +0 -0
  25. {chaproev-1.2.3 → chaproev-1.2.5}/ChaProEV.toml +0 -0
  26. {chaproev-1.2.3 → chaproev-1.2.5}/Gemfile +0 -0
  27. {chaproev-1.2.3 → chaproev-1.2.5}/LICENCE +0 -0
  28. {chaproev-1.2.3 → chaproev-1.2.5}/MOPO_logo_chaproev on wht.svg +0 -0
  29. {chaproev-1.2.3 → chaproev-1.2.5}/MOPO_logo_chaproev.png +0 -0
  30. {chaproev-1.2.3 → chaproev-1.2.5}/MOPO_logo_chaproev.svg +0 -0
  31. {chaproev-1.2.3 → chaproev-1.2.5}/MOPO_logo_main.svg +0 -0
  32. {chaproev-1.2.3 → chaproev-1.2.5}/MOPO_logo_main_onwhite.svg +0 -0
  33. {chaproev-1.2.3 → chaproev-1.2.5}/README.md +0 -0
  34. {chaproev-1.2.3 → chaproev-1.2.5}/comparisons/comparison_template.toml +0 -0
  35. {chaproev-1.2.3 → chaproev-1.2.5}/docs/ChaProEV_workflow.png +0 -0
  36. {chaproev-1.2.3 → chaproev-1.2.5}/docs/Legs.png +0 -0
  37. {chaproev-1.2.3 → chaproev-1.2.5}/docs/Locations.png +0 -0
  38. {chaproev-1.2.3 → chaproev-1.2.5}/docs/Makefile +0 -0
  39. {chaproev-1.2.3 → chaproev-1.2.5}/docs/README.md +0 -0
  40. {chaproev-1.2.3 → chaproev-1.2.5}/docs/Trips.png +0 -0
  41. {chaproev-1.2.3 → chaproev-1.2.5}/docs/Vehicle_Temperature_correction_factor.svg +0 -0
  42. {chaproev-1.2.3 → chaproev-1.2.5}/docs/_config.yml +0 -0
  43. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/doctrees/environment.pickle +0 -0
  44. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/doctrees/index.doctree +0 -0
  45. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/.buildinfo +0 -0
  46. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/_sources/index.rst.txt +0 -0
  47. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/_static/alabaster.css +0 -0
  48. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/_static/basic.css +0 -0
  49. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/_static/custom.css +0 -0
  50. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/_static/doctools.js +0 -0
  51. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/_static/documentation_options.js +0 -0
  52. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/_static/file.png +0 -0
  53. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/_static/language_data.js +0 -0
  54. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/_static/minus.png +0 -0
  55. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/_static/plus.png +0 -0
  56. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/_static/pygments.css +0 -0
  57. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/_static/searchtools.js +0 -0
  58. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/_static/sphinx_highlight.js +0 -0
  59. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/genindex.html +0 -0
  60. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/index.html +0 -0
  61. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/objects.inv +0 -0
  62. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/search.html +0 -0
  63. {chaproev-1.2.3 → chaproev-1.2.5}/docs/build/html/searchindex.js +0 -0
  64. {chaproev-1.2.3 → chaproev-1.2.5}/docs/charging.md +0 -0
  65. {chaproev-1.2.3 → chaproev-1.2.5}/docs/consumption.md +0 -0
  66. {chaproev-1.2.3 → chaproev-1.2.5}/docs/define.md +0 -0
  67. {chaproev-1.2.3 → chaproev-1.2.5}/docs/index.md +0 -0
  68. {chaproev-1.2.3 → chaproev-1.2.5}/docs/make.bat +0 -0
  69. {chaproev-1.2.3 → chaproev-1.2.5}/docs/mobility.md +0 -0
  70. {chaproev-1.2.3 → chaproev-1.2.5}/docs/running_model,md +0 -0
  71. {chaproev-1.2.3 → chaproev-1.2.5}/docs/scenario.md +0 -0
  72. {chaproev-1.2.3 → chaproev-1.2.5}/docs/source/index.rst +0 -0
  73. {chaproev-1.2.3 → chaproev-1.2.5}/docs/using.md +0 -0
  74. {chaproev-1.2.3 → chaproev-1.2.5}/docs/weather.md +0 -0
  75. {chaproev-1.2.3 → chaproev-1.2.5}/eu-emblem-low-res.jpg +0 -0
  76. {chaproev-1.2.3 → chaproev-1.2.5}/mkdocs.yml +0 -0
  77. {chaproev-1.2.3 → chaproev-1.2.5}/scenarios/Mopo/Switzerland_car_own_driveway_2050.toml +0 -0
  78. {chaproev-1.2.3 → chaproev-1.2.5}/scenarios/Mopo/XX_bus.toml +0 -0
  79. {chaproev-1.2.3 → chaproev-1.2.5}/scenarios/Mopo/XX_car.toml +0 -0
  80. {chaproev-1.2.3 → chaproev-1.2.5}/scenarios/Mopo/XX_truck.toml +0 -0
  81. {chaproev-1.2.3 → chaproev-1.2.5}/scenarios/Mopo/XX_van.toml +0 -0
  82. {chaproev-1.2.3 → chaproev-1.2.5}/scenarios/local_impact_BEVs/baseline.toml +0 -0
  83. {chaproev-1.2.3 → chaproev-1.2.5}/setup.cfg +0 -0
  84. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV/__init__.py +0 -0
  85. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV/py.typed +0 -0
  86. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV.egg-info/PKG-INFO-PC-28624 +0 -0
  87. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV.egg-info/PKG-INFO-PC-28624-2 +0 -0
  88. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV.egg-info/SOURCES-PC-28624-2.txt +0 -0
  89. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV.egg-info/SOURCES-PC-28624.txt +0 -0
  90. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV.egg-info/dependency_links.txt +0 -0
  91. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV.egg-info/requires-PC-28624-2.txt +0 -0
  92. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV.egg-info/requires-PC-28624.txt +0 -0
  93. {chaproev-1.2.3 → chaproev-1.2.5}/src/ChaProEV.egg-info/top_level.txt +0 -0
  94. {chaproev-1.2.3 → chaproev-1.2.5}/tests/test_battery_space.py +0 -0
  95. {chaproev-1.2.3 → chaproev-1.2.5}/tests/test_charge_and_consumption.py +0 -0
  96. {chaproev-1.2.3 → chaproev-1.2.5}/tests/test_empty_values.py +0 -0
  97. {chaproev-1.2.3 → chaproev-1.2.5}/tests/test_same_output.py +0 -0
  98. {chaproev-1.2.3 → chaproev-1.2.5}/todo.txt +0 -0
  99. {chaproev-1.2.3 → chaproev-1.2.5}/variants/Mopo/XX_car.csv +0 -0
  100. {chaproev-1.2.3 → chaproev-1.2.5}/variants/Mopo.toml +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: ChaProEV
3
- Version: 1.2.3
3
+ Version: 1.2.5
4
4
  Summary: ChaProEV: Charging Profiles of Electric Vehicles
5
5
  Author-email: Omar Usmani <Omar.Usmani@TNO.nl>
6
6
  Project-URL: Homepage, https://github.com/TNO/ChaProEV
@@ -10,6 +10,17 @@ Classifier: Operating System :: OS Independent
10
10
  Requires-Python: >=3.11
11
11
  Description-Content-Type: text/markdown
12
12
  License-File: LICENCE
13
+ Requires-Dist: bs4>=0.0.2
14
+ Requires-Dist: cdsapi>=0.7.4
15
+ Requires-Dist: ETS_CookBook>=1.1.1
16
+ Requires-Dist: matplotlib>=3.9.2
17
+ Requires-Dist: numpy>=2.1.3
18
+ Requires-Dist: pandas>=2.2.3
19
+ Requires-Dist: python-box>=7.2.0
20
+ Requires-Dist: requests>=2.32.3
21
+ Requires-Dist: toml>=0.10.2
22
+ Requires-Dist: tqdm>=4.67.0
23
+ Dynamic: license-file
13
24
 
14
25
  # **ChaProEV**
15
26
 
@@ -4,7 +4,7 @@ build-backend = 'setuptools.build_meta'
4
4
 
5
5
  [project]
6
6
  name = 'ChaProEV'
7
- version = '1.2.3'
7
+ version = '1.2.5'
8
8
  authors = [
9
9
  { name='Omar Usmani', email='Omar.Usmani@TNO.nl' },
10
10
  ]
@@ -0,0 +1,10 @@
1
+ bs4>=0.0.2
2
+ cdsapi>=0.7.4
3
+ ETS_CookBook>=1.1.1
4
+ matplotlib>=3.9.2
5
+ numpy>=2.1.3
6
+ pandas>=2.2.3
7
+ python-box>=7.2.0
8
+ requests>=2.32.3
9
+ toml>=0.10.2
10
+ tqdm>=4.67.0
@@ -0,0 +1,405 @@
1
+ [run]
2
+ use_day_types_in_charge_computing = true
3
+
4
+ [vehicle]
5
+ name = "car"
6
+ base_location = "home"
7
+ yearly_kilometrage = 17036.55556
8
+ kilometers_column_for_consumption = "Arrivals"
9
+ use_weighted = false
10
+ battery_capacity = 65.72924767
11
+ solar_panel_size_kWp = 0
12
+
13
+ [mobility_module]
14
+ day_start_hour = 4.0
15
+ compute_start_location_split = true
16
+ day_types = [ "weekday_in_work_week", "weekend_in_work_week", "weekday_in_holiday_week", "weekend_in_holiday_week", "weekend_holiday_departures", "weekend_holiday_returns", "holiday_overlap_weekend",]
17
+ mobility_quantities = [ "Departures amount", "Departures kilometers", "Departures weighted kilometers", "Departures impact", "Departures impact kilometers", "Departures impact weighted kilometers", "Arrivals amount", "Arrivals kilometers", "Arrivals weighted kilometers", "Arrivals impact", "Arrivals impact kilometers", "Arrivals impact weighted kilometers",]
18
+ battery_space_shift_quantities = [ "departures", "departures_weighted", "departures_impact", "departures_impact_weighted", "arrivals", "arrivals_weighted", "arrivals_impact", "arrivals_impact_weighted",]
19
+ location_connections_headers = [ "Duration (hours)", "Distance (km)", "Weighted distance (km)",]
20
+ mobility_index_names = [ "From", "To", "Time Tag",]
21
+ kilometers_driven_headers = [ "Proportion at base", "Proportion idle en route", "Proportion driving", "Proportion of run time driving", "Driven kilometers (km)",]
22
+ holiday_weeks = [ 1, 8, 18, 28, 29, 30, 31, 32, 33, 42, 51, 52, 53,]
23
+ number_of_holiday_weeks = 10
24
+ holiday_departures_in_weekend_week_numbers = [ 7, 17, 27, 30, 41, 50,]
25
+ holiday_returns_in_weekend_week_numbers = [ 1, 8, 18, 30, 33, 42,]
26
+ work_hours_in_a_work_day = 8
27
+ hours_worked_per_work_week = 38.4
28
+ hours_in_a_standard_work_week = 40
29
+ percentage_working_on_a_work_week = 1
30
+ worked_hours_per_year = 1671.950311
31
+ leisure_trips_per_weekend = 1
32
+ leisure_trips_per_week_outside_weekends = 2
33
+ maximal_fill_percentage_leisure_trips_on_non_work_weekdays = 1
34
+ weekday_leisure_trips = 2
35
+ percentage_of_weekday_leisure_trips_on_a_work_day = 0.5
36
+ weekend_trips_per_year = 12
37
+ holiday_trips_taken = 1
38
+ time_spent_at_holiday_destination = 14
39
+
40
+ [transport_factors]
41
+ road_types = [ "highway", "city",]
42
+ weights = [ 0.66, 1.6,]
43
+
44
+ [weather]
45
+ weather_factors_table_root_name = "weather_factors"
46
+
47
+ [charging]
48
+ price_reaction_exponent = 0
49
+ desirability_reaction_exponent = 0
50
+
51
+ [charging_sessions]
52
+ resolution = 1
53
+
54
+ [run.start]
55
+ year = 2017
56
+ month = 12
57
+ day = 31
58
+ hour = 4.0
59
+ minute = 0
60
+
61
+ [run.end]
62
+ year = 2019
63
+ month = 1
64
+ day = 1
65
+ hour = 0
66
+ minute = 0
67
+
68
+ [run.display_start]
69
+ year = 2018
70
+ month = 1
71
+ day = 1
72
+ hour = 0
73
+ minute = 0
74
+
75
+ [run.display_end]
76
+ year = 2019
77
+ month = 1
78
+ day = 1
79
+ hour = 0
80
+ minute = 0
81
+
82
+ [run.frequency]
83
+ size = 1
84
+ type = "h"
85
+
86
+ [run.display_frequency]
87
+ size = 1
88
+ type = "h"
89
+
90
+ [run.get_extra_downloads]
91
+ download_weather_data = false
92
+ make_weather_database = false
93
+ download_EV_tool_data = false
94
+
95
+ [locations.home]
96
+ vehicle = "car"
97
+ connectivity = 1
98
+ charging_power = 7.4
99
+ charger_efficiency = 0.87
100
+ latitude = 52
101
+ longitude = 6.2
102
+ charging_price = 0.25
103
+ charging_desirability = 1
104
+ percentage_in_location_at_run_start = 1
105
+ vehicle_discharge_power = 7.4
106
+ proportion_of_discharge_to_network = 0.87
107
+ time_modulation_factors = [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,]
108
+
109
+ [locations.work]
110
+ vehicle = "car"
111
+ connectivity = 0.75
112
+ charging_power = 22.0
113
+ charger_efficiency = 0.92
114
+ latitude = 52.1
115
+ longitude = 5.8
116
+ charging_price = 0
117
+ charging_desirability = 1
118
+ percentage_in_location_at_run_start = 0
119
+ vehicle_discharge_power = 22.0
120
+ proportion_of_discharge_to_network = 0.92
121
+ time_modulation_factors = [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,]
122
+
123
+ [locations.leisure]
124
+ vehicle = "car"
125
+ connectivity = 0.75
126
+ charging_power = 22.0
127
+ charger_efficiency = 0.92
128
+ latitude = 52.1
129
+ longitude = 6.2
130
+ charging_price = 0.35
131
+ charging_desirability = 0.25
132
+ percentage_in_location_at_run_start = 0
133
+ vehicle_discharge_power = 22.0
134
+ proportion_of_discharge_to_network = 0.92
135
+ time_modulation_factors = [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,]
136
+
137
+ [locations.weekend]
138
+ vehicle = "car"
139
+ connectivity = 0.375
140
+ charging_power = 22.0
141
+ charger_efficiency = 0.92
142
+ latitude = 51.8
143
+ longitude = 6.2
144
+ charging_price = 0.35
145
+ charging_desirability = 0.1
146
+ percentage_in_location_at_run_start = 0
147
+ vehicle_discharge_power = 22.0
148
+ proportion_of_discharge_to_network = 0.92
149
+ time_modulation_factors = [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,]
150
+
151
+ [locations.holiday]
152
+ vehicle = "car"
153
+ connectivity = 1
154
+ charging_power = 22.0
155
+ charger_efficiency = 0.92
156
+ latitude = 53.0
157
+ longitude = 6.2
158
+ charging_price = 0.35
159
+ charging_desirability = 0.2
160
+ percentage_in_location_at_run_start = 0
161
+ vehicle_discharge_power = 22.0
162
+ proportion_of_discharge_to_network = 0.92
163
+ time_modulation_factors = [ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,]
164
+
165
+ [legs.go_to_work]
166
+ vehicle = "car"
167
+ distance = 26.88888889
168
+ duration = 0.55
169
+ hour_in_day_factors = [ 1, 1, 1, 1, 1, 1, 1, 1, 1.2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,]
170
+
171
+ [legs.come_from_work]
172
+ vehicle = "car"
173
+ distance = 26.88888889
174
+ duration = 0.55
175
+ hour_in_day_factors = [ 1, 1, 1, 1, 1, 1, 1, 1, 1.2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,]
176
+
177
+ [legs.home_to_leisure]
178
+ vehicle = "car"
179
+ distance = 7.333333333
180
+ duration = 0.15
181
+ hour_in_day_factors = [ 1, 1, 1, 1, 1, 1, 1, 1, 1.2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,]
182
+
183
+ [legs.leisure_to_home]
184
+ vehicle = "car"
185
+ distance = 7.333333333
186
+ duration = 0.15
187
+ hour_in_day_factors = [ 1, 1, 1, 1, 1, 1, 1, 1, 1.2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,]
188
+
189
+ [legs.home_to_weekend]
190
+ vehicle = "car"
191
+ distance = 122.2222222
192
+ duration = 1.222222222
193
+ hour_in_day_factors = [ 1, 1, 1, 1, 1, 1, 1, 1, 1.2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,]
194
+
195
+ [legs.weekend_to_home]
196
+ vehicle = "car"
197
+ distance = 122.2222222
198
+ duration = 1.222222222
199
+ hour_in_day_factors = [ 1, 1, 1, 1, 1, 1, 1, 1, 1.2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,]
200
+
201
+ [legs.home_to_holiday]
202
+ vehicle = "car"
203
+ distance = 488.8888889
204
+ duration = 4.888888889
205
+ hour_in_day_factors = [ 1, 1, 1, 1, 1, 1, 1, 1, 1.2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,]
206
+
207
+ [legs.holiday_to_home]
208
+ vehicle = "car"
209
+ distance = 488.8888889
210
+ duration = 4.888888889
211
+ hour_in_day_factors = [ 1, 1, 1, 1, 1, 1, 1, 1, 1.2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,]
212
+
213
+ [vehicle.base_consumption_per_km]
214
+ electricity_kWh = 0.158955231
215
+ gasoline_litres = 0.071097136
216
+ diesel_litres = 0.061018652
217
+ hydrogen_kg = 0.008325705
218
+ LPG_litres = 0.100784846
219
+ CNG_kg = 0.050501972
220
+
221
+ [trips.commute_to_work]
222
+ vehicle = "car"
223
+ legs = [ "go_to_work", "come_from_work",]
224
+ time_between_legs = [ 9,]
225
+ percentage_station_users = 0
226
+ start_probabilities = [ 0, 0, 0.25, 0.5, 0.25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,]
227
+ repeated_sequence = []
228
+ repetition_amounts = [ 0,]
229
+ time_between_repetitions = [ 0,]
230
+
231
+ [trips.commute_to_work_and_leisure]
232
+ vehicle = "car"
233
+ legs = [ "go_to_work", "come_from_work", "home_to_leisure", "leisure_to_home",]
234
+ time_between_legs = [ 9, 2, 3,]
235
+ percentage_station_users = 0
236
+ start_probabilities = [ 0, 0, 0.25, 0.5, 0.25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,]
237
+ repeated_sequence = []
238
+ repetition_amounts = [ 0,]
239
+ time_between_repetitions = [ 0,]
240
+
241
+ [trips.leisure_only]
242
+ vehicle = "car"
243
+ legs = [ "home_to_leisure", "leisure_to_home",]
244
+ time_between_legs = [ 2,]
245
+ percentage_station_users = 0
246
+ start_probabilities = [ 0, 0.083333333, 0.083333333, 0.083333333, 0.0625, 0.0625, 0.0625, 0.0625, 0.0625, 0.0625, 0.0625, 0.0625, 0.0625, 0.0625, 0.0625, 0.0625, 0, 0, 0, 0, 0, 0, 0, 0,]
247
+ repeated_sequence = []
248
+ repetition_amounts = [ 0,]
249
+ time_between_repetitions = [ 0,]
250
+
251
+ [trips.weekend_trip]
252
+ vehicle = "car"
253
+ legs = [ "home_to_weekend", "weekend_to_home",]
254
+ time_between_legs = [ 4,]
255
+ percentage_station_users = 0
256
+ start_probabilities = [ 0, 0.083333333, 0.083333333, 0.083333333, 0.0625, 0.0625, 0.0625, 0.0625, 0.0625, 0.0625, 0.0625, 0.0625, 0.0625, 0.0625, 0.0625, 0.0625, 0, 0, 0, 0, 0, 0, 0, 0,]
257
+ repeated_sequence = []
258
+ repetition_amounts = [ 0,]
259
+ time_between_repetitions = [ 0,]
260
+
261
+ [trips.holiday_outward]
262
+ vehicle = "car"
263
+ legs = [ "home_to_holiday",]
264
+ time_between_legs = []
265
+ percentage_station_users = 0
266
+ start_probabilities = [ 0, 0.03125, 0.03125, 0.03125, 0.09375, 0.09375, 0.09375, 0.09375, 0.09375, 0.09375, 0.09375, 0.09375, 0.03125, 0.03125, 0.03125, 0.03125, 0.03125, 0, 0, 0, 0, 0, 0, 0,]
267
+ repeated_sequence = []
268
+ repetition_amounts = [ 0,]
269
+ time_between_repetitions = [ 0,]
270
+
271
+ [trips.holiday_back]
272
+ vehicle = "car"
273
+ legs = [ "holiday_to_home",]
274
+ time_between_legs = []
275
+ percentage_station_users = 0
276
+ start_probabilities = [ 0, 0.03125, 0.03125, 0.03125, 0.09375, 0.09375, 0.09375, 0.09375, 0.09375, 0.09375, 0.09375, 0.09375, 0.03125, 0.03125, 0.03125, 0.03125, 0.03125, 0, 0, 0, 0, 0, 0, 0,]
277
+ repeated_sequence = []
278
+ repetition_amounts = [ 0,]
279
+ time_between_repetitions = [ 0,]
280
+
281
+ [trips.stay_put_home]
282
+ vehicle = "car"
283
+ legs = []
284
+ time_between_legs = []
285
+ percentage_station_users = 0
286
+ start_probabilities = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,]
287
+ repeated_sequence = []
288
+ repetition_amounts = [ 0,]
289
+ time_between_repetitions = [ 0,]
290
+
291
+ [trips.stay_put_holiday]
292
+ vehicle = "car"
293
+ legs = []
294
+ time_between_legs = []
295
+ percentage_station_users = 0
296
+ start_probabilities = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,]
297
+ repeated_sequence = []
298
+ repetition_amounts = [ 0,]
299
+ time_between_repetitions = [ 0,]
300
+
301
+ [mobility_module.trips_per_day_type]
302
+ bus = [ "bus_weekday_in_workweek", "bus_weekend_in_workweek", "bus_weekday_in_holiday_week", "bus_weekend_in_holiday_week", "bus_weekend_in_holiday_week", "bus_weekend_in_holiday_week", "bus_weekend_in_holiday_week",]
303
+ truck = [ "truck_weekday", "truck_weekend", "truck_weekday", "truck_weekend", "truck_weekend", "truck_weekend", "truck_weekend",]
304
+ van = [ "van_weekday", "van_weekend", "van_weekday", "van_weekend", "van_weekend", "van_weekend", "van_weekend",]
305
+
306
+ [weather.source_data]
307
+ start_year = 2020
308
+ end_year = 2022
309
+ quantities = [ "2m_temperature", "skin_temperature", "surface_solar_radiation_downwards", "total_precipitation",]
310
+ raw_data_folder = "input/cds_weather_data"
311
+ latitude_min = 36
312
+ latitude_max = 68
313
+ longitude_min = -11
314
+ longitude_max = 60
315
+
316
+ [weather.processed_data]
317
+ raw_data_folder = "input/cds_weather_data"
318
+ processed_folder = "input/processed_weather_data"
319
+ weather_database_file_name = "weather.sqlite3"
320
+ chunk_size = 100000
321
+ quantities = [ "2m_temperature", "skin_temperature", "surface_solar_radiation_downwards", "total_precipitation",]
322
+ KELVIN_TO_CELSIUS = -273.15
323
+ quantity_tags = [ "t2m", "skt", "ssrd", "tp",]
324
+ quantity_processed_names = [ "Temperature at 2 meters (°C)", "Skin temperature (°C)", "Surface solar radiation downwards (J/m2)", "Total precipitation (m)",]
325
+ cumulative_quantity_processed_names = [ "Surface solar radiation downwards (J/m2)", "Total precipitation (m)",]
326
+ cumulative_quantities = [ "surface_solar_radiation_downwards", "total_precipitation",]
327
+ queries_for_cumulative_quantities = [ "SELECT * FROM 'Surface solar radiation downwards (J/m2)';", "SELECT * FROM 'Total precipitation (m)';",]
328
+ temperature_quantities = [ "2m_temperature", "skin_temperature",]
329
+ processed_index_tags = [ "Timetag", "Latitude", "Longitude",]
330
+ latitude_min = 50.6
331
+ latitude_max = 53.5
332
+ longitude_min = 3.4
333
+ longitude_max = 7.2
334
+ coordinate_step = 0.1
335
+
336
+ [weather.EV_tool]
337
+ EV_tool_url = "https://www.geotab.com/CMS-GeneralFiles-production/NA/EV/EVTOOL.html"
338
+ user_agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36 Edg/110.0.1587.57"
339
+ efficiency_curve_script_index = 2
340
+ data_splitter = "Temp:"
341
+ file_name = "vehicle_temperature_efficiencies"
342
+ groupfile_name = "vehicle_temperature_efficiencies"
343
+ folder = "input"
344
+ efficiency_factor_column_name = "Vehicle Relative efficiency factor"
345
+
346
+ [weather.vehicle_temperature_efficiencies]
347
+ folder = "input"
348
+ file_name = "vehicle_temperature_efficiencies.pkl"
349
+ fitting_polynomial_order = 6
350
+
351
+ [legs.go_to_work.locations]
352
+ start = "home"
353
+ end = "work"
354
+
355
+ [legs.go_to_work.road_type_mix]
356
+ mix = [ 0.8, 0.2,]
357
+
358
+ [legs.come_from_work.locations]
359
+ start = "work"
360
+ end = "home"
361
+
362
+ [legs.come_from_work.road_type_mix]
363
+ mix = [ 0.8, 0.2,]
364
+
365
+ [legs.home_to_leisure.locations]
366
+ start = "home"
367
+ end = "leisure"
368
+
369
+ [legs.home_to_leisure.road_type_mix]
370
+ mix = [ 0.8, 0.2,]
371
+
372
+ [legs.leisure_to_home.locations]
373
+ start = "leisure"
374
+ end = "home"
375
+
376
+ [legs.leisure_to_home.road_type_mix]
377
+ mix = [ 0.8, 0.2,]
378
+
379
+ [legs.home_to_weekend.locations]
380
+ start = "home"
381
+ end = "weekend"
382
+
383
+ [legs.home_to_weekend.road_type_mix]
384
+ mix = [ 0.8, 0.2,]
385
+
386
+ [legs.weekend_to_home.locations]
387
+ start = "weekend"
388
+ end = "home"
389
+
390
+ [legs.weekend_to_home.road_type_mix]
391
+ mix = [ 0.8, 0.2,]
392
+
393
+ [legs.home_to_holiday.locations]
394
+ start = "home"
395
+ end = "holiday"
396
+
397
+ [legs.home_to_holiday.road_type_mix]
398
+ mix = [ 0.8, 0.2,]
399
+
400
+ [legs.holiday_to_home.locations]
401
+ start = "holiday"
402
+ end = "home"
403
+
404
+ [legs.holiday_to_home.road_type_mix]
405
+ mix = [ 0.8, 0.2,]
@@ -80,7 +80,7 @@ def run_ChaProEV(case_name: str) -> None:
80
80
  csv_version: bool = variant_parameters.csv_version
81
81
  make_variants.make_variants(case_name, csv_version)
82
82
 
83
- scenarios: ty.List[Box] = scenarios_module.load_scenarios(case_name)
83
+ scenarios: list[Box] = scenarios_module.load_scenarios(case_name)
84
84
 
85
85
  set_amount_of_processes: bool = (
86
86
  general_parameters.parallel_processing.set_amount_of_processes
@@ -92,7 +92,7 @@ def run_ChaProEV(case_name: str) -> None:
92
92
  general_parameters.parallel_processing.amount_for_scenarios
93
93
  )
94
94
 
95
- pool_inputs: ty.Iterator[ty.Tuple[Box, str, Box]] | ty.Any = zip(
95
+ pool_inputs: ty.Iterator[tuple[Box, str, Box]] | ty.Any = zip(
96
96
  scenarios, repeat(case_name), repeat(general_parameters)
97
97
  )
98
98
  # the ty.Any alternative is there because transforming it with the
@@ -124,7 +124,7 @@ def run_ChaProEV(case_name: str) -> None:
124
124
  if __name__ == '__main__':
125
125
  # This is a case name, which is the grouping of all your scenarios.
126
126
  # This is principally used to label your output files.
127
- case_name = 'Mopo'
127
+ case_name = 'bus_test'
128
128
 
129
129
  run_ChaProEV(case_name)
130
130