hestia-earth-models 0.61.7__py3-none-any.whl → 0.61.8__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.
Potentially problematic release.
This version of hestia-earth-models might be problematic. Click here for more details.
- hestia_earth/models/cycle/completeness/electricityFuel.py +56 -0
- hestia_earth/models/emepEea2019/nh3ToAirInorganicFertiliser.py +44 -59
- hestia_earth/models/geospatialDatabase/histosol.py +4 -0
- hestia_earth/models/ipcc2006/co2ToAirOrganicSoilCultivation.py +4 -2
- hestia_earth/models/ipcc2006/n2OToAirOrganicSoilCultivationDirect.py +1 -1
- hestia_earth/models/ipcc2019/aboveGroundCropResidueTotal.py +1 -1
- hestia_earth/models/ipcc2019/belowGroundCropResidue.py +1 -1
- hestia_earth/models/ipcc2019/ch4ToAirExcreta.py +1 -1
- hestia_earth/models/ipcc2019/co2ToAirSoilOrganicCarbonStockChangeManagementChange.py +511 -458
- hestia_earth/models/ipcc2019/co2ToAirUreaHydrolysis.py +5 -1
- hestia_earth/models/ipcc2019/organicCarbonPerHa.py +117 -3881
- hestia_earth/models/ipcc2019/organicCarbonPerHa_tier_1_utils.py +2060 -0
- hestia_earth/models/ipcc2019/organicCarbonPerHa_tier_2_utils.py +1630 -0
- hestia_earth/models/ipcc2019/organicCarbonPerHa_utils.py +324 -0
- hestia_earth/models/mocking/search-results.json +252 -252
- hestia_earth/models/site/organicCarbonPerHa.py +58 -44
- hestia_earth/models/site/soilMeasurement.py +18 -13
- hestia_earth/models/utils/__init__.py +28 -0
- hestia_earth/models/utils/array_builders.py +578 -0
- hestia_earth/models/utils/blank_node.py +2 -3
- hestia_earth/models/utils/descriptive_stats.py +285 -0
- hestia_earth/models/utils/emission.py +73 -2
- hestia_earth/models/utils/inorganicFertiliser.py +2 -2
- hestia_earth/models/utils/measurement.py +118 -4
- hestia_earth/models/version.py +1 -1
- {hestia_earth_models-0.61.7.dist-info → hestia_earth_models-0.61.8.dist-info}/METADATA +1 -1
- {hestia_earth_models-0.61.7.dist-info → hestia_earth_models-0.61.8.dist-info}/RECORD +43 -31
- tests/models/cycle/completeness/test_electricityFuel.py +21 -0
- tests/models/emepEea2019/test_nh3ToAirInorganicFertiliser.py +2 -2
- tests/models/ipcc2019/test_co2ToAirSoilOrganicCarbonStockChangeManagementChange.py +54 -165
- tests/models/ipcc2019/test_organicCarbonPerHa.py +219 -460
- tests/models/ipcc2019/test_organicCarbonPerHa_tier_1_utils.py +471 -0
- tests/models/ipcc2019/test_organicCarbonPerHa_tier_2_utils.py +208 -0
- tests/models/ipcc2019/test_organicCarbonPerHa_utils.py +75 -0
- tests/models/site/test_organicCarbonPerHa.py +3 -12
- tests/models/site/test_soilMeasurement.py +3 -18
- tests/models/utils/test_array_builders.py +253 -0
- tests/models/utils/test_descriptive_stats.py +134 -0
- tests/models/utils/test_emission.py +51 -1
- tests/models/utils/test_measurement.py +54 -2
- {hestia_earth_models-0.61.7.dist-info → hestia_earth_models-0.61.8.dist-info}/LICENSE +0 -0
- {hestia_earth_models-0.61.7.dist-info → hestia_earth_models-0.61.8.dist-info}/WHEEL +0 -0
- {hestia_earth_models-0.61.7.dist-info → hestia_earth_models-0.61.8.dist-info}/top_level.txt +0 -0
|
@@ -4,7 +4,7 @@ hestia_earth/models/cache_sites.py,sha256=KQp9cUKE-aIcYJoMWEtKFYS8gBFfsx5LKQhqoW
|
|
|
4
4
|
hestia_earth/models/log.py,sha256=b63I3qyTtQs17xxbq8RI0Fv2lvZ1oDZ9k0njhxqiFFk,3459
|
|
5
5
|
hestia_earth/models/preload_requests.py,sha256=elhYQTxBVuFlZROWvZ3yErDzzMLdMUIjBhmpdaTUSi8,1012
|
|
6
6
|
hestia_earth/models/requirements.py,sha256=znNZJAhwX2iYiKcAQXPftY7z_1MsNa0QxCXkXyHm_U0,17363
|
|
7
|
-
hestia_earth/models/version.py,sha256=
|
|
7
|
+
hestia_earth/models/version.py,sha256=Gmx1Mzumxee0MDRwhnW69WRndkZUHweMwKOy4mZhmno,19
|
|
8
8
|
hestia_earth/models/agribalyse2016/__init__.py,sha256=WvK0qCQbnYtg9oZxrACd1wGormZyXibPtpCnIQeDqbw,415
|
|
9
9
|
hestia_earth/models/agribalyse2016/fuelElectricity.py,sha256=mrh8seYSYdTgcMDCETLiknuPeJehg071YoG4UiyW0yU,4404
|
|
10
10
|
hestia_earth/models/agribalyse2016/machineryInfrastructureDepreciatedAmountPerCycle.py,sha256=_Rbngu0DzHKa62JwBl58ZC_ui1zLF2que_nB7ukhOQc,3392
|
|
@@ -69,6 +69,7 @@ hestia_earth/models/cycle/animal/input/properties.py,sha256=2bKyyclrt0O7zvtD1Ij7
|
|
|
69
69
|
hestia_earth/models/cycle/completeness/__init__.py,sha256=rkwGtxIay_AleJCT7al_ngnix_xRqySVie7qvHXMQI0,1517
|
|
70
70
|
hestia_earth/models/cycle/completeness/animalFeed.py,sha256=8Fo1TqwSuiPudvd2vJ-LVxSyOdD8mDCOZMvjuj5W2uo,1012
|
|
71
71
|
hestia_earth/models/cycle/completeness/cropResidue.py,sha256=zSiu9h0NxEBDUWlaKBh1QcX4jDIklrs0BC2NWMCQQ80,2549
|
|
72
|
+
hestia_earth/models/cycle/completeness/electricityFuel.py,sha256=fmBll9hQCUSVI5anQGHu3dcIauUseu4ZZQRYx6Cpu4w,1757
|
|
72
73
|
hestia_earth/models/cycle/completeness/excreta.py,sha256=2yVxcuWjAh4hoEukaMJ90VZpkCL7SfpwIgzigbjVaF4,996
|
|
73
74
|
hestia_earth/models/cycle/completeness/material.py,sha256=UQH2oRnUY-Q-_MVuOlTAYqQxc7wWDM5mi_iFmp9PlIQ,1362
|
|
74
75
|
hestia_earth/models/cycle/completeness/seed.py,sha256=g4GOzRx249pEfr2beU9n5tzBiWA3hhxnqyiGri7QbEI,1662
|
|
@@ -113,7 +114,7 @@ hestia_earth/models/emepEea2019/__init__.py,sha256=l90-pWrqIzt1ap1WNk0gF4iZeF5_T
|
|
|
113
114
|
hestia_earth/models/emepEea2019/co2ToAirFuelCombustion.py,sha256=DfoGlB5HjA1gafO0OutJjfsA6yPP_PsAd-p16evwCiQ,1609
|
|
114
115
|
hestia_earth/models/emepEea2019/n2OToAirFuelCombustionDirect.py,sha256=R3lRF5-Md4Jd7irvTe8WJZJPc9-wa1pD6UWVk7lnGtQ,1616
|
|
115
116
|
hestia_earth/models/emepEea2019/nh3ToAirExcreta.py,sha256=lWo1AaorIk4HtTCQAND3RFbCHO-em1DbA5ZOxv0Ldn8,3750
|
|
116
|
-
hestia_earth/models/emepEea2019/nh3ToAirInorganicFertiliser.py,sha256=
|
|
117
|
+
hestia_earth/models/emepEea2019/nh3ToAirInorganicFertiliser.py,sha256=AMZlOpeajrhbjGWIq_mLJJHfOF9RH9GswkbvVyrqop0,6201
|
|
117
118
|
hestia_earth/models/emepEea2019/noxToAirFuelCombustion.py,sha256=y49RvO5OkrZ4iK7o2Kmx5xW52y8SS9xEKAmlXlTQtWc,1609
|
|
118
119
|
hestia_earth/models/emepEea2019/so2ToAirFuelCombustion.py,sha256=bo_0mFcwicpOkPsvZRAnL2tDBDRBAQqsPD_Wc5e20K4,1609
|
|
119
120
|
hestia_earth/models/emepEea2019/utils.py,sha256=ikoZn3JPe9wz-_voVlIqVwh4jBgmnfKi2oyLhi7_7E4,1398
|
|
@@ -142,7 +143,7 @@ hestia_earth/models/geospatialDatabase/ecoClimateZone.py,sha256=hzK9Je_4NvbLtgAM
|
|
|
142
143
|
hestia_earth/models/geospatialDatabase/ecoregion.py,sha256=awvHn0YEVu-YaW0ZDgBo_zbjSJU2EvydM_qAT_CL78A,1462
|
|
143
144
|
hestia_earth/models/geospatialDatabase/erodibility.py,sha256=M62CetEcHuExeXl7P7DVKZWWbk9tenjaDFvjMsWbga4,1843
|
|
144
145
|
hestia_earth/models/geospatialDatabase/heavyWinterPrecipitation.py,sha256=8IC-ceKlwWw6-b6aCTVNaF1wNHPchKnVZcNHZRdLUmY,1996
|
|
145
|
-
hestia_earth/models/geospatialDatabase/histosol.py,sha256=
|
|
146
|
+
hestia_earth/models/geospatialDatabase/histosol.py,sha256=5zwKdF1t9aOjTzBoear62T0Kzpjco-IJXu4oRYrUFQ8,2387
|
|
146
147
|
hestia_earth/models/geospatialDatabase/longFallowRatio.py,sha256=VnTW2Y7qpoxlEarOM85SzxhFb1kayNJAiecRXatrEpw,1872
|
|
147
148
|
hestia_earth/models/geospatialDatabase/nutrientLossToAquaticEnvironment.py,sha256=uEsoYJ1mzgUo6fQhUrcJ-ATcFw1j9oEgqMXKbQuFRxQ,1973
|
|
148
149
|
hestia_earth/models/geospatialDatabase/organicCarbonPerKgSoil.py,sha256=gt3-crrUN0HPtIKY7Hf9dUteCXkegSICVjO-jufDqas,2196
|
|
@@ -197,7 +198,7 @@ hestia_earth/models/ipcc2006/__init__.py,sha256=ReUFPLqIyp16QEOGaiHmz41QbuwYBQYD
|
|
|
197
198
|
hestia_earth/models/ipcc2006/aboveGroundCropResidueRemoved.py,sha256=6FDgMH5eiO1mEn20oerYpWty6t9058JS3MCdfVmeY_o,2714
|
|
198
199
|
hestia_earth/models/ipcc2006/aboveGroundCropResidueTotal.py,sha256=vD_kpvOJmjTOjDEnlqSYBSZxjuPGvzpmCr0JIC84GKE,3431
|
|
199
200
|
hestia_earth/models/ipcc2006/belowGroundCropResidue.py,sha256=KzeRphJb1IWB_EPVcxa9tbCoNmEe80D9lKxgQOqfKoU,4138
|
|
200
|
-
hestia_earth/models/ipcc2006/co2ToAirOrganicSoilCultivation.py,sha256=
|
|
201
|
+
hestia_earth/models/ipcc2006/co2ToAirOrganicSoilCultivation.py,sha256=UqjYsbpcSnNb20zLTZ2qkO_tLfDBL1iJmwndeuuwGYk,3133
|
|
201
202
|
hestia_earth/models/ipcc2006/n2OToAirCropResidueDecompositionDirect.py,sha256=_2oTngpspikbFwgFTtOWs-SgEVF8LzznvITGITTtol4,2913
|
|
202
203
|
hestia_earth/models/ipcc2006/n2OToAirCropResidueDecompositionIndirect.py,sha256=kf4WjdMzs6d8h433LFuUH9LJKJ_aMHTqEHDToGY5-Xk,2315
|
|
203
204
|
hestia_earth/models/ipcc2006/n2OToAirExcretaDirect.py,sha256=VvQTIh58JyhrdPk5FdJQBkjBDr5-Cv7CnGkNEcco3P4,1986
|
|
@@ -206,22 +207,22 @@ hestia_earth/models/ipcc2006/n2OToAirInorganicFertiliserDirect.py,sha256=0Lyhqh3
|
|
|
206
207
|
hestia_earth/models/ipcc2006/n2OToAirInorganicFertiliserIndirect.py,sha256=s5-pnhzz3fEYkdMZEGGlecp7XlPh_9vxyN78VoOUP2Y,3171
|
|
207
208
|
hestia_earth/models/ipcc2006/n2OToAirOrganicFertiliserDirect.py,sha256=xB-5jp551knTSWvJeeowO1ERpLCdXrZJKttN7xU_6RY,2396
|
|
208
209
|
hestia_earth/models/ipcc2006/n2OToAirOrganicFertiliserIndirect.py,sha256=NAdGaG6-5Mrrwe17ED8R_3en-zuMqHFDtrRlqi9USSI,3103
|
|
209
|
-
hestia_earth/models/ipcc2006/n2OToAirOrganicSoilCultivationDirect.py,sha256=
|
|
210
|
+
hestia_earth/models/ipcc2006/n2OToAirOrganicSoilCultivationDirect.py,sha256=7Y8sT1mTpd_Qu160-nekOdjCNMJsVA51DjpAWzof2nU,3030
|
|
210
211
|
hestia_earth/models/ipcc2006/utils.py,sha256=flB7HWrynzOorKlmrpbETGD63NMv45H8Wxjj3RCav98,739
|
|
211
212
|
hestia_earth/models/ipcc2013ExcludingFeedbacks/__init__.py,sha256=v4Qe-X4w3tqIHGJBNnEAK81x4ZuQMwYxQYXRncugmcU,427
|
|
212
213
|
hestia_earth/models/ipcc2013ExcludingFeedbacks/gwp100.py,sha256=8VRg-Vvzc86_CQmBH-iHNhaSnAFHew2swAMecT0aXW4,979
|
|
213
214
|
hestia_earth/models/ipcc2013IncludingFeedbacks/__init__.py,sha256=VJ16KIGQQHybzZiTvu3mpZy_3j0xcd06RHHCfPrCMgU,427
|
|
214
215
|
hestia_earth/models/ipcc2013IncludingFeedbacks/gwp100.py,sha256=PTE0FEV5x7MZgWpA6iu7EtIYaYKl6Udc9icpafkqlEA,979
|
|
215
216
|
hestia_earth/models/ipcc2019/__init__.py,sha256=LdRpu8KbEc-MroIwXfKDjfj-xbgmfUYgctjKVvtpRfQ,409
|
|
216
|
-
hestia_earth/models/ipcc2019/aboveGroundCropResidueTotal.py,sha256=
|
|
217
|
-
hestia_earth/models/ipcc2019/belowGroundCropResidue.py,sha256=
|
|
217
|
+
hestia_earth/models/ipcc2019/aboveGroundCropResidueTotal.py,sha256=KjCPJ-AoEuBQzz9uBq_tQXG0P3KxM1bEKcwF_Jeq4Dg,2932
|
|
218
|
+
hestia_earth/models/ipcc2019/belowGroundCropResidue.py,sha256=DYic7zGSzkDP6kA5f6tRTB5alARCMGWY5ApjPkMU-7c,3323
|
|
218
219
|
hestia_earth/models/ipcc2019/carbonContent.py,sha256=I76bJaO1OYSrIjwDKxhwY-DZGZJubgVJSxtZHx5jQxY,7237
|
|
219
220
|
hestia_earth/models/ipcc2019/ch4ToAirEntericFermentation.py,sha256=khX90NjkmlvosyRZ77QxgwTKwg42Z_ftOWTTAanHViw,11420
|
|
220
|
-
hestia_earth/models/ipcc2019/ch4ToAirExcreta.py,sha256=
|
|
221
|
+
hestia_earth/models/ipcc2019/ch4ToAirExcreta.py,sha256=jEGgEUhMr0JHq_-lPJioKHOQGQXrQvblU51AppXKvB0,6719
|
|
221
222
|
hestia_earth/models/ipcc2019/ch4ToAirFloodedRice.py,sha256=TJ4J7VA5n4RPrJYZQeR3lc3ZoCw7T1E5Cb1XJewr834,7331
|
|
222
223
|
hestia_earth/models/ipcc2019/co2ToAirLimeHydrolysis.py,sha256=7z0zdqiiWQwkyJCgSNMoK2mft3cJkTRlqwKrMuSKdWI,2454
|
|
223
|
-
hestia_earth/models/ipcc2019/co2ToAirSoilOrganicCarbonStockChangeManagementChange.py,sha256=
|
|
224
|
-
hestia_earth/models/ipcc2019/co2ToAirUreaHydrolysis.py,sha256=
|
|
224
|
+
hestia_earth/models/ipcc2019/co2ToAirSoilOrganicCarbonStockChangeManagementChange.py,sha256=LiExh87zjrsD6ZOpB8MMTLKtSq1do6LSaUzJGn1mpKY,26901
|
|
225
|
+
hestia_earth/models/ipcc2019/co2ToAirUreaHydrolysis.py,sha256=Ofld5SuRKndcKB3FFFoUdzSgNq-gc4kmiNyyrPKQ3Io,3580
|
|
225
226
|
hestia_earth/models/ipcc2019/croppingDuration.py,sha256=_jlFrTNDOARH2_g8s4dzuaCoLHSX2BHzSQd3uuQN32Y,3173
|
|
226
227
|
hestia_earth/models/ipcc2019/ligninContent.py,sha256=wp5EbCthCDAKyvPBfZULS9-uKEY58TQQ8ey1pf-juv8,7267
|
|
227
228
|
hestia_earth/models/ipcc2019/n2OToAirCropResidueDecompositionDirect.py,sha256=Fand7NbT27unwgFTxi_9NxT024s63vQ7U6-tk9yp3d8,3990
|
|
@@ -241,7 +242,10 @@ hestia_earth/models/ipcc2019/no3ToGroundwaterInorganicFertiliser.py,sha256=eyPfy
|
|
|
241
242
|
hestia_earth/models/ipcc2019/no3ToGroundwaterOrganicFertiliser.py,sha256=px2SN-uaus2cftXzlsYCUAxLuon6BnDXmaFI9xhQrgU,3347
|
|
242
243
|
hestia_earth/models/ipcc2019/noxToAirInorganicFertiliser.py,sha256=fmmFgjtvOD2TrrLY03jYly_KvDnCsAXqhL_tmZQQt-A,4480
|
|
243
244
|
hestia_earth/models/ipcc2019/noxToAirOrganicFertiliser.py,sha256=9dx_MRTwJGxJRq6mj2EJQMdQ2w6j7lw0fQk0If_cIGc,4152
|
|
244
|
-
hestia_earth/models/ipcc2019/organicCarbonPerHa.py,sha256=
|
|
245
|
+
hestia_earth/models/ipcc2019/organicCarbonPerHa.py,sha256=3TPl6RvUlNHbc7TZiHWoqK-o2fCgAvlcLh2C__MNj8A,8728
|
|
246
|
+
hestia_earth/models/ipcc2019/organicCarbonPerHa_tier_1_utils.py,sha256=YrjsBTmFbOw2DlGgcxf1B0d_NeNhE1Fl_OG4DrCPhLU,82293
|
|
247
|
+
hestia_earth/models/ipcc2019/organicCarbonPerHa_tier_2_utils.py,sha256=W3G0LbrfQp5lnYQj7CvznLtjH_7WVPk7-zBiujgD0yE,57867
|
|
248
|
+
hestia_earth/models/ipcc2019/organicCarbonPerHa_utils.py,sha256=CrQWsDhW--wNQ2HEc_zxdFKuIdBHEwOQnVJGA3HgPpQ,10856
|
|
245
249
|
hestia_earth/models/ipcc2019/pastureGrass.py,sha256=Q3uX7IcTk0PmzxqEhU3JAcHb5LnUymZbmdRFP9xXsfo,8713
|
|
246
250
|
hestia_earth/models/ipcc2019/pastureGrass_utils.py,sha256=nUJYYkovzF7QD4LeUqhV5mBYFKdrhxeG4gyPRv0Xpuk,16002
|
|
247
251
|
hestia_earth/models/ipcc2019/utils.py,sha256=MSDMu15D9DnilFUgi4_6jYXC0FaKso3OODauGTMB6hs,6229
|
|
@@ -360,7 +364,7 @@ hestia_earth/models/linkedImpactAssessment/landTransformationFromPermanentPastur
|
|
|
360
364
|
hestia_earth/models/linkedImpactAssessment/utils.py,sha256=dGwGc2d-8_WQElTpfyPmz5vQtL-LHQRmiZnCTuPXMDs,1876
|
|
361
365
|
hestia_earth/models/mocking/__init__.py,sha256=n3Fkkrvh8zHNWiJZmnfQ7WZ91JRzAO9P6pSG1JpwtXo,687
|
|
362
366
|
hestia_earth/models/mocking/mock_search.py,sha256=dBCDRfbZmbMLKP21u_VYkxyimomqs-zztjX-_ZNKuuM,2036
|
|
363
|
-
hestia_earth/models/mocking/search-results.json,sha256
|
|
367
|
+
hestia_earth/models/mocking/search-results.json,sha256=b2D9kIA18EpfCUl36Fi0L4JL8EuTrm4-VzZoaYw9dOw,43543
|
|
364
368
|
hestia_earth/models/pooreNemecek2018/__init__.py,sha256=nPboL7ULJzL5nJD5q7q9VOZt_fxbKVm8fmn1Az5YkVY,417
|
|
365
369
|
hestia_earth/models/pooreNemecek2018/aboveGroundCropResidueTotal.py,sha256=Qt-mel4dkhK6N5uUOutNOinCTFjbjtGzITaaI0LvYc4,2396
|
|
366
370
|
hestia_earth/models/pooreNemecek2018/belowGroundCropResidue.py,sha256=JT0RybbvWVlo01FO8K0Yj41HrEaJT3Kj1xfayr2X-xw,2315
|
|
@@ -461,7 +465,7 @@ hestia_earth/models/site/flowingWater.py,sha256=0ZuSXMr3EUTY3wsy8hdfuXeZcNX-n3D4
|
|
|
461
465
|
hestia_earth/models/site/freshWater.py,sha256=z-C_Il0U6UhZUQUPwh72Z0vixmSrUNEmBN5Lz-nl9_w,1254
|
|
462
466
|
hestia_earth/models/site/management.py,sha256=o9WIvbxip6B-jbQdgko6H2l1neQ0Z5ZpcPJmM5gcYlw,8832
|
|
463
467
|
hestia_earth/models/site/netPrimaryProduction.py,sha256=UIIQkYd911qVzrWjxBLrC37e-RARIVgDwLdARY9BuLw,1849
|
|
464
|
-
hestia_earth/models/site/organicCarbonPerHa.py,sha256
|
|
468
|
+
hestia_earth/models/site/organicCarbonPerHa.py,sha256=O6t4D3Jj1kjMIBOpnIrJ58kzUP_FIlpMUEFKQAeS77c,14916
|
|
465
469
|
hestia_earth/models/site/organicCarbonPerKgSoil.py,sha256=t--wAshiAKS-JvEKhLFRadGvgSBv5NFZ68jdyms_wh4,1945
|
|
466
470
|
hestia_earth/models/site/organicCarbonPerM3Soil.py,sha256=pdv5V-ojcfhlGzPwRS9s-vEnxiHZQPZP-ESVcz2pt0g,1945
|
|
467
471
|
hestia_earth/models/site/organicMatterPerKgSoil.py,sha256=fJpFVkpuCjnrBhgV0RtwKqQHvAJWWtZO9xtmnJnl8O4,1945
|
|
@@ -473,7 +477,7 @@ hestia_earth/models/site/precipitationMonthly.py,sha256=yGUbiUCu1Prp3qVHuZodGrcf
|
|
|
473
477
|
hestia_earth/models/site/rainfallAnnual.py,sha256=Ix_B8Ny7IIRkJ_3lUvoHOjPgqCyR9I0U3_ADUUtMqsY,2003
|
|
474
478
|
hestia_earth/models/site/rainfallMonthly.py,sha256=2Uo8F-YxnTK0_txlHmiAyVp1bGfWD4bneRKyg4tdQkI,1881
|
|
475
479
|
hestia_earth/models/site/salineWater.py,sha256=HO31JcUBw5WQYGu9zHNqbARasBubNFgJ7OxSVrK3D2o,1255
|
|
476
|
-
hestia_earth/models/site/soilMeasurement.py,sha256
|
|
480
|
+
hestia_earth/models/site/soilMeasurement.py,sha256=8xUDajU_KzBVFEj7yfwIZxVXJ14C_AKAxEs4uSnFyps,7164
|
|
477
481
|
hestia_earth/models/site/temperatureAnnual.py,sha256=Q3b1RH2_hpA0JWwOYA5nKgMGcXHjV8-akXT9vB0cbwc,2012
|
|
478
482
|
hestia_earth/models/site/temperatureMonthly.py,sha256=yXwpFCGT2tUqvVBNedaPyBmN_KlzZqo5yv2TWem1pBk,1890
|
|
479
483
|
hestia_earth/models/site/totalNitrogenPerKgSoil.py,sha256=8ERrTZpN_yCRUyFg_EYaX4abE9jLcyX3lx3MO4Bi6CE,1938
|
|
@@ -517,11 +521,12 @@ hestia_earth/models/transformation/product/__init__.py,sha256=47DEQpj8HBSa-_TImW
|
|
|
517
521
|
hestia_earth/models/transformation/product/excreta.py,sha256=Yj9wMF5if-zivb6qbN3vy1X51ZNYxvoyG9f4KPp3Y18,5700
|
|
518
522
|
hestia_earth/models/usetoxV2/__init__.py,sha256=pK37V3H-KvYcvRKw4Mv8CWrB2N0LFLzmv0jKLdhGGqs,409
|
|
519
523
|
hestia_earth/models/usetoxV2/freshwaterEcotoxicityPotentialCtue.py,sha256=oYNwThnMXjZymif5buyHiczFiOq_61jOdDMOAyy8vwQ,1018
|
|
520
|
-
hestia_earth/models/utils/__init__.py,sha256=
|
|
524
|
+
hestia_earth/models/utils/__init__.py,sha256=EIuMvZCFyeUC4yyJi9LSVYpAMkjpAMMtBs1ljqJhVR4,5228
|
|
521
525
|
hestia_earth/models/utils/aggregated.py,sha256=sz6usleZmo_tC_hIvmGgYsX8-H0dulXmmhHK4EkA5Kg,4946
|
|
522
526
|
hestia_earth/models/utils/animalProduct.py,sha256=M5IunAKGY6oZv3j1Ascl34ywyeLWApqOIlBzbtlA2FE,721
|
|
523
527
|
hestia_earth/models/utils/aquacultureManagement.py,sha256=dxrbC1Xf140cohxTbSw6TxLAnAASWTdNZwBBam4yQnw,171
|
|
524
|
-
hestia_earth/models/utils/
|
|
528
|
+
hestia_earth/models/utils/array_builders.py,sha256=0_Ik0gKoh1QBijyb-55odh8_dIs-CWQ3lgUN1Hnc4Y8,18749
|
|
529
|
+
hestia_earth/models/utils/blank_node.py,sha256=PTrjipqY35g0AjlFU_pn9AdZ6I26VBizW7Elr7sF-OY,41908
|
|
525
530
|
hestia_earth/models/utils/completeness.py,sha256=2-GusD9UycobDZq8y5jar0ZcOjyqnSbzPRT_5XMc4YA,1259
|
|
526
531
|
hestia_earth/models/utils/constant.py,sha256=5H7odhRwU_LmUhYwf8c1LsdqXSYbLWkuknvtRDqUBTQ,3194
|
|
527
532
|
hestia_earth/models/utils/crop.py,sha256=kG054fryqPSBpmzvJFBy_CLiOdjrt7RMk5uTItO5ADg,2246
|
|
@@ -529,19 +534,20 @@ hestia_earth/models/utils/cropResidue.py,sha256=_0Q35CrliJeo31xGHsPWe8A2oHxijdIs
|
|
|
529
534
|
hestia_earth/models/utils/cropResidueManagement.py,sha256=nIDFjf39rDD10UHSVudfDyu-EiL261g8jyrgS-2aDKw,347
|
|
530
535
|
hestia_earth/models/utils/currency.py,sha256=f_ArJANb--pZq4LL49SXQ1AMX_oKroqwBXKRRQqZwsM,578
|
|
531
536
|
hestia_earth/models/utils/cycle.py,sha256=QgTmfds-SGEqGJNqEZ5A1iAxCZ54Ac0QPSmqECHPFeg,15927
|
|
537
|
+
hestia_earth/models/utils/descriptive_stats.py,sha256=qOyG8_TpWYmaxZ0h99n9L71gDLLiVMrMf0ChtxnZLjw,8559
|
|
532
538
|
hestia_earth/models/utils/ecoClimateZone.py,sha256=NHFt-A9EiWXC6tUNIxkgOWUZOjj4I4uwJIP9ddDZegw,1112
|
|
533
|
-
hestia_earth/models/utils/emission.py,sha256=
|
|
539
|
+
hestia_earth/models/utils/emission.py,sha256=5Dz8Z4P6QXbYSvOzVcqJy3R_oZMrp77_Iwj5xZsxsKc,3769
|
|
534
540
|
hestia_earth/models/utils/excretaManagement.py,sha256=NuWPQjFZxMVt9sYgBjcqhGWCFk_OKb3sA9Ovcff3fRQ,428
|
|
535
541
|
hestia_earth/models/utils/feedipedia.py,sha256=ImUAURcwJDtSvu1s4MDeM1VpbU8mVTp9jh9ENNOB0Mw,3515
|
|
536
542
|
hestia_earth/models/utils/fertiliser.py,sha256=DBO4OBNgnQJ0fCQMDkIk_ZGZX-uKGaTFZCEXfAnJciY,690
|
|
537
543
|
hestia_earth/models/utils/fuel.py,sha256=r1MKMMxg-PYiVlRutP83RuvY2rsdCQ1iN6ekSGGQGpA,1379
|
|
538
544
|
hestia_earth/models/utils/impact_assessment.py,sha256=H1_cvLwC8nb3A5ckS9uvWrLqUDU_9i9BdQiPpn52xIg,6890
|
|
539
545
|
hestia_earth/models/utils/indicator.py,sha256=fPq38ifd53xWbuOfoiVwiA0Nwa7jVPJLSAPpOMMil8Q,423
|
|
540
|
-
hestia_earth/models/utils/inorganicFertiliser.py,sha256=
|
|
546
|
+
hestia_earth/models/utils/inorganicFertiliser.py,sha256=_dLBY-otGkLr8PobR5dQ89bF2uwc2PB4JPrHFSksMEQ,1900
|
|
541
547
|
hestia_earth/models/utils/input.py,sha256=YycsAbSBfVDMu6PftDsisMFGnEp87wOj-3rrnHnOgzo,4927
|
|
542
548
|
hestia_earth/models/utils/liveAnimal.py,sha256=GnajBPZw5d94raf80KtLloaOqlfqGAPwUtP9bRlGWeE,1754
|
|
543
549
|
hestia_earth/models/utils/lookup.py,sha256=9yAw8JILIeAmnAC0dL1Yi6xB4h9quzV3GJQGUKe8ers,6370
|
|
544
|
-
hestia_earth/models/utils/measurement.py,sha256=
|
|
550
|
+
hestia_earth/models/utils/measurement.py,sha256=rss0nVmgL5uAWE7_aaGWIJAcg7SkWVpDUzgzHpuEpdo,12221
|
|
545
551
|
hestia_earth/models/utils/organicFertiliser.py,sha256=2HY-a0EBzUw4DkEAXClLMXVCEZTKYf0BwFHBo7lQ5Tg,363
|
|
546
552
|
hestia_earth/models/utils/pesticideAI.py,sha256=6f8b-dFm3qr-eY049_eOvj_iDk4XBam61csozdDAvyA,2361
|
|
547
553
|
hestia_earth/models/utils/practice.py,sha256=tNadOzsrNlCEt801B815XaruJXzZ5yPASam7B3sWpXE,1091
|
|
@@ -626,6 +632,7 @@ tests/models/cycle/animal/input/test_properties.py,sha256=rp-PfGijk-Sbh1NsV5nkf9
|
|
|
626
632
|
tests/models/cycle/completeness/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
627
633
|
tests/models/cycle/completeness/test_animalFeed.py,sha256=J52m1kInw8mPE_pwx0j3QGKI8ZpDGeN2TLqUuArn7WA,348
|
|
628
634
|
tests/models/cycle/completeness/test_cropResidue.py,sha256=TzPrnvAQA5GzmwL-bYOLgR3wjtMdKuPx55wT_HHfJ6c,592
|
|
635
|
+
tests/models/cycle/completeness/test_electricityFuel.py,sha256=TbaSwsx8IIS1xWXhxg798O8xTEQ7MXM4XKlfQBtQBw8,580
|
|
629
636
|
tests/models/cycle/completeness/test_excretaManagement.py,sha256=GGKQTZZj_F6EkvTOVjunVixFC584HmsCgPP5H6radc8,345
|
|
630
637
|
tests/models/cycle/completeness/test_material.py,sha256=bA1_32wmtdd77cD8vinkIjspZfheQuyeyum1fm-Ei0k,498
|
|
631
638
|
tests/models/cycle/completeness/test_seed.py,sha256=txpypNeoX08QC3wPUd92gnWuvPTsVSqT9RJb6Z5AUUE,1018
|
|
@@ -658,7 +665,7 @@ tests/models/emepEea2019/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZ
|
|
|
658
665
|
tests/models/emepEea2019/test_co2ToAirFuelCombustion.py,sha256=HXQTSIkJzCKsb-9fGStkxtkcK65KS3sJlvShW2F6EaU,1450
|
|
659
666
|
tests/models/emepEea2019/test_n2OToAirFuelCombustionDirect.py,sha256=vmZAAUkxfJyaRoioEEFmz8EtR3X_MCeaA-0VjjNNmQE,1456
|
|
660
667
|
tests/models/emepEea2019/test_nh3ToAirExcreta.py,sha256=VtZFVWaHjqlxdge1Qir-OghNZtfsIJvLpg_8UNp0akU,1363
|
|
661
|
-
tests/models/emepEea2019/test_nh3ToAirInorganicFertiliser.py,sha256=
|
|
668
|
+
tests/models/emepEea2019/test_nh3ToAirInorganicFertiliser.py,sha256=ZRU-mQiQLGX3xxOIP7r7iv08vCuRa6ElnKJs2AZ7a1E,2060
|
|
662
669
|
tests/models/emepEea2019/test_noxToAirFuelCombustion.py,sha256=drCeoaGo6Ag3fdEDDSC3D880OXxzillzHk7rPYcVwmE,1450
|
|
663
670
|
tests/models/emepEea2019/test_so2ToAirFuelCombustion.py,sha256=CNaT_z02DHDpBJ2IIkG0K7ra87WBg_iDkhx9QGAjk00,1450
|
|
664
671
|
tests/models/emepEea2019/test_utils.py,sha256=jNb4T4yXWowUvY_1d_nxDTOBX-2K8jIG2TZ6SokxYP0,1843
|
|
@@ -763,7 +770,7 @@ tests/models/ipcc2019/test_ch4ToAirEntericFermentation.py,sha256=3Hv86L4X_Va2mZL
|
|
|
763
770
|
tests/models/ipcc2019/test_ch4ToAirExcreta.py,sha256=e58NXmBW2SNVLUqQO9A66Xq6jiGTyhdFZDZk51JApF8,2902
|
|
764
771
|
tests/models/ipcc2019/test_ch4ToAirFloodedRice.py,sha256=FAp5b45WdX5Ih4yGUOZ4CmVD8smW1Lw1tnulx9AKVBI,1980
|
|
765
772
|
tests/models/ipcc2019/test_co2ToAirLimeHydrolysis.py,sha256=e5iuZ-kQNEVih0ZRgRPWqaUtXcLpfkoU7sQypbqA9_Y,1345
|
|
766
|
-
tests/models/ipcc2019/test_co2ToAirSoilOrganicCarbonStockChangeManagementChange.py,sha256=
|
|
773
|
+
tests/models/ipcc2019/test_co2ToAirSoilOrganicCarbonStockChangeManagementChange.py,sha256=cvgUMp3pIyPvyeCuL9-TIDJajIw4FoljN88JKc5GsMI,4166
|
|
767
774
|
tests/models/ipcc2019/test_co2ToAirUreaHydrolysis.py,sha256=MmtEME0xjsa3KojFk_fxOLK6RZM_6p5HIpY2DOFHVu4,1530
|
|
768
775
|
tests/models/ipcc2019/test_croppingDuration.py,sha256=gLRXeR6Tqa7ciD9KTRfsIflSeIIWT2iOpZMdcxAQla4,1871
|
|
769
776
|
tests/models/ipcc2019/test_ligninContent.py,sha256=eIKEN__ab-0R52EhlhPSBiHnmTl6xOf1XbI33O-W9A4,4146
|
|
@@ -784,7 +791,10 @@ tests/models/ipcc2019/test_no3ToGroundwaterInorganicFertiliser.py,sha256=e7REnQ9
|
|
|
784
791
|
tests/models/ipcc2019/test_no3ToGroundwaterOrganicFertiliser.py,sha256=e1ZViD12qB3bLdH3TJw3GbBP8iqMen-UJbcFkytb3VQ,1609
|
|
785
792
|
tests/models/ipcc2019/test_noxToAirInorganicFertiliser.py,sha256=NZBSBJLM_j2PEpHRON2ysgKNF8x5sHfQVoAKQdGsfzk,1537
|
|
786
793
|
tests/models/ipcc2019/test_noxToAirOrganicFertiliser.py,sha256=LR5pjV5vRbgSSQAw8kYRp_ij4CHInzgaDS6EggQuBiw,1104
|
|
787
|
-
tests/models/ipcc2019/test_organicCarbonPerHa.py,sha256=
|
|
794
|
+
tests/models/ipcc2019/test_organicCarbonPerHa.py,sha256=CtgRy-7qXBTF7ZnWV6l6hOV_d8b6um0T3grHXUOc9OM,13891
|
|
795
|
+
tests/models/ipcc2019/test_organicCarbonPerHa_tier_1_utils.py,sha256=e5RpK4GlH9tNxbwEyPQkO2lMwYBtGNp8ha8j4bZF9eg,20699
|
|
796
|
+
tests/models/ipcc2019/test_organicCarbonPerHa_tier_2_utils.py,sha256=gHAi0qr9vE2_TtyJOqOc5Wc8ZRIflQz8vKBOcvKTzCE,7020
|
|
797
|
+
tests/models/ipcc2019/test_organicCarbonPerHa_utils.py,sha256=Zd2QlN_Q3k9djuByOH62A00tryVzlvNtsd46N79TTeU,1778
|
|
788
798
|
tests/models/ipcc2019/test_pastureGrass.py,sha256=hn6tw-ifMTn00_WmYPIjRdm56SMF1w-eqETngVE29ns,3373
|
|
789
799
|
tests/models/ipcc2019/animal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
790
800
|
tests/models/ipcc2019/animal/test_pastureGrass.py,sha256=2ZbeIxxEZ9xaDkfCY2pLripmtOG89iHMTrPqa2-UuQg,1983
|
|
@@ -996,7 +1006,7 @@ tests/models/site/test_flowingWater.py,sha256=t_rxvdlmUVDsFBoDF20_zDM-0iiLKkNCV7
|
|
|
996
1006
|
tests/models/site/test_freshWater.py,sha256=GOeAxHhPW_2E1wQdQRX4W-r7mnb_LgmiAVLImitoApw,982
|
|
997
1007
|
tests/models/site/test_management.py,sha256=gVtMv_sgmHdEEA_Xdjg73Z2YrwFtm2pN6jo6ZyJx86U,4825
|
|
998
1008
|
tests/models/site/test_netPrimaryProduction.py,sha256=JCxG0MODbKVvl3hOqmKzh4FjHYn3Xs9KsVod6LvKQII,1108
|
|
999
|
-
tests/models/site/test_organicCarbonPerHa.py,sha256=
|
|
1009
|
+
tests/models/site/test_organicCarbonPerHa.py,sha256=XtGrE7ZqthTF0x8lDxJ1slNd_GvYHEyEydcRgA46jEc,3207
|
|
1000
1010
|
tests/models/site/test_organicCarbonPerKgSoil.py,sha256=0M-NMg_T3UXzGT_VlKOKhSxg4cZ0_zhd3FRgY5Hpj6o,1087
|
|
1001
1011
|
tests/models/site/test_organicCarbonPerM3Soil.py,sha256=_teZwZKVM7b6YIokWJdqkYbIlSDY8eeOX4vZo7-0Mdo,1087
|
|
1002
1012
|
tests/models/site/test_organicMatterPerKgSoil.py,sha256=ustKqQcv4GWa-0SdHvLlxJBDlY2zU9kdBCQoUIKO2BI,1087
|
|
@@ -1008,7 +1018,7 @@ tests/models/site/test_precipitationMonthly.py,sha256=iccr-_ZrseM_OT3AKZbTNQhRFS
|
|
|
1008
1018
|
tests/models/site/test_rainfallAnnual.py,sha256=4YYna66qjJptPJ_URvdcQuRC3dri9SB0xmWP8DFwslM,986
|
|
1009
1019
|
tests/models/site/test_rainfallMonthly.py,sha256=A3gIe2Yxt9CLtLcAJNCQ0-8aRB49VdfKBLBy-7eDgJw,985
|
|
1010
1020
|
tests/models/site/test_salineWater.py,sha256=by_goKU4q5Dr-ctqosfrjFPZsG9KeG26Y_xMWEHBhpA,985
|
|
1011
|
-
tests/models/site/test_soilMeasurement.py,sha256=
|
|
1021
|
+
tests/models/site/test_soilMeasurement.py,sha256=hZVgNmN5fgrHyTeXO1HrZ4tPm6Ko0yiTNbBfkDsdrUE,4398
|
|
1012
1022
|
tests/models/site/test_temperatureAnnual.py,sha256=nOJG9ZJ8NCMM8T47uxxBeloIYLFN6-xtvUBqJsqt8xk,992
|
|
1013
1023
|
tests/models/site/test_temperatureMonthly.py,sha256=C2lv-lpYqH7VUGOlxNLE6d7k_dFS6NYe8BvMlrJorCw,991
|
|
1014
1024
|
tests/models/site/test_totalNitrogenPerKgSoil.py,sha256=2ILrA0jQKGniiKwS5FF3ZLtudgUgjcMnzFtrHpJKPTc,1161
|
|
@@ -1050,18 +1060,20 @@ tests/models/transformation/product/test_excreta.py,sha256=Q9OQpk8qVPv3alIz2i5XQ
|
|
|
1050
1060
|
tests/models/usetoxV2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
1051
1061
|
tests/models/usetoxV2/test_freshwaterEcotoxicityPotentialCtue.py,sha256=eq7Gcmfya9g0eOKKkuBhz8vq7xi_CmZ_LTSxueBwZt4,835
|
|
1052
1062
|
tests/models/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
1063
|
+
tests/models/utils/test_array_builders.py,sha256=1zTc5r6Y9fcQ3x67S9Am0G3ip4Kp9_MmiSqIvY-M6yc,6470
|
|
1053
1064
|
tests/models/utils/test_blank_node.py,sha256=hgom8mJPWqylnf4AfLgVlbYgAHAEcH8DngOdFidFMcw,34343
|
|
1054
1065
|
tests/models/utils/test_crop.py,sha256=ve_BqT2XuLTWAH-8YOnVY4nzMUSXYYXPB8S-5RtGlf4,463
|
|
1055
1066
|
tests/models/utils/test_cropResidueManagement.py,sha256=RQt8lexeJzCyxZceIutgDpw7BpcqmjsUB0C0yZC2QpY,930
|
|
1056
1067
|
tests/models/utils/test_currency.py,sha256=BPsojPsY9QW2aj8vgbjkPQXU8GU6wDwwtPZ3HdC4KTU,277
|
|
1057
1068
|
tests/models/utils/test_dataCompleteness.py,sha256=mW6rA7ddhtjZsLxwo5xDnvBdxmqTsivy4RTIU-2Lvk0,1713
|
|
1058
|
-
tests/models/utils/
|
|
1069
|
+
tests/models/utils/test_descriptive_stats.py,sha256=S-N4-JavFw8UQKju7QhvtimsAIe0TI4DjQT-0q_Y-Sk,3988
|
|
1070
|
+
tests/models/utils/test_emission.py,sha256=3KfhQGV5Vh_WXTPt6McvZ2dBp9TVM7eAUTLgRHkBOvU,2146
|
|
1059
1071
|
tests/models/utils/test_feedipedia.py,sha256=S7c1W4bJ5xWXPh42pPbl3R7lDX_iEeaEtFaPXgB7hgE,906
|
|
1060
1072
|
tests/models/utils/test_impact_assessment.py,sha256=qEm4Y5txWnkSJKP1puvwgKFXkv06c7vUKmwDyIJxkdc,1114
|
|
1061
1073
|
tests/models/utils/test_indicator.py,sha256=GwYKV5N_yEPcJWz7FirRnK48rl62ofAn_TkAo0MioIM,639
|
|
1062
1074
|
tests/models/utils/test_input.py,sha256=bSG6YKmT2ofY2oD5CGbNwR8-To-ihyNyr14Td5-jNRU,585
|
|
1063
1075
|
tests/models/utils/test_liveAnimal.py,sha256=bntT4vULWsDF2DOigtiMjpS0gJS5ipalPsfrk-JxC-I,986
|
|
1064
|
-
tests/models/utils/test_measurement.py,sha256=
|
|
1076
|
+
tests/models/utils/test_measurement.py,sha256=8_sdjySFeZOAS9USZg_CxSSmSSxawutfG_zS-lwcnVI,4436
|
|
1065
1077
|
tests/models/utils/test_practice.py,sha256=ILaxkb3qICor9AquAGYiOtA-YKnq0hppmJQzNC_VNyA,612
|
|
1066
1078
|
tests/models/utils/test_product.py,sha256=kwvgAeeEoRgkeStX0zQcFd-4DJhoUhX6Apaks0MU2L0,2305
|
|
1067
1079
|
tests/models/utils/test_property.py,sha256=t2npw86IK7C6G4ypiPtanFi0db4PB7G5VBR1GjRGl34,618
|
|
@@ -1070,8 +1082,8 @@ tests/models/utils/test_source.py,sha256=mv3vHZV5cjpoLA2I1109-YUkuzAiuhbRSnv_76_
|
|
|
1070
1082
|
tests/models/utils/test_term.py,sha256=M5Sa26v2gzQYbZ4H_fo7DspnaCx__-WtL-MULGapCWk,3509
|
|
1071
1083
|
tests/models/webbEtAl2012AndSintermannEtAl2012/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
1072
1084
|
tests/models/webbEtAl2012AndSintermannEtAl2012/test_nh3ToAirOrganicFertiliser.py,sha256=qi2FNXS5Af2WDtm7nq_FsprH3BfCF0XxnE0XHmC4aIY,2244
|
|
1073
|
-
hestia_earth_models-0.61.
|
|
1074
|
-
hestia_earth_models-0.61.
|
|
1075
|
-
hestia_earth_models-0.61.
|
|
1076
|
-
hestia_earth_models-0.61.
|
|
1077
|
-
hestia_earth_models-0.61.
|
|
1085
|
+
hestia_earth_models-0.61.8.dist-info/LICENSE,sha256=AC7h7GAgCZGJK_Tzh6LUCrML9gQEfowWwecEw2w54QM,1154
|
|
1086
|
+
hestia_earth_models-0.61.8.dist-info/METADATA,sha256=IWeDTAdOnEFZ1vddHFUvLfz428gHnUaA3OSm-n0-NG8,3350
|
|
1087
|
+
hestia_earth_models-0.61.8.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
|
1088
|
+
hestia_earth_models-0.61.8.dist-info/top_level.txt,sha256=1dqA9TqpOLTEgpqa-YBsmbCmmNU1y56AtfFGEceZ2A0,19
|
|
1089
|
+
hestia_earth_models-0.61.8.dist-info/RECORD,,
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import json
|
|
2
|
+
from tests.utils import fixtures_path
|
|
3
|
+
|
|
4
|
+
from hestia_earth.models.cycle.completeness.electricityFuel import MODEL, MODEL_KEY, run
|
|
5
|
+
|
|
6
|
+
class_path = f"hestia_earth.models.cycle.{MODEL}.{MODEL_KEY}"
|
|
7
|
+
fixtures_folder = f"{fixtures_path}/cycle/{MODEL}/{MODEL_KEY}"
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
def test_run():
|
|
11
|
+
with open(f"{fixtures_folder}/cycle.jsonld", encoding='utf-8') as f:
|
|
12
|
+
cycle = json.load(f)
|
|
13
|
+
|
|
14
|
+
assert run(cycle) is True
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
def test_run_invalid():
|
|
18
|
+
with open(f"{fixtures_folder}/cycle-invalid.jsonld", encoding='utf-8') as f:
|
|
19
|
+
cycle = json.load(f)
|
|
20
|
+
|
|
21
|
+
assert not run(cycle)
|
|
@@ -21,8 +21,8 @@ def test_should_run(mock_measurement, *args):
|
|
|
21
21
|
should_run, *args = _should_run(cycle)
|
|
22
22
|
assert not should_run
|
|
23
23
|
|
|
24
|
-
#
|
|
25
|
-
cycle['
|
|
24
|
+
# is complete => run
|
|
25
|
+
cycle['completeness'] = {'fertiliser': True}
|
|
26
26
|
should_run, *args = _should_run(cycle)
|
|
27
27
|
assert should_run is True
|
|
28
28
|
|
|
@@ -1,27 +1,17 @@
|
|
|
1
1
|
from functools import reduce
|
|
2
2
|
import json
|
|
3
|
+
from os.path import isfile
|
|
3
4
|
from pytest import mark
|
|
4
5
|
from unittest.mock import patch
|
|
5
6
|
|
|
6
|
-
from hestia_earth.schema import MeasurementMethodClassification
|
|
7
|
+
from hestia_earth.schema import EmissionMethodTier, MeasurementMethodClassification
|
|
7
8
|
|
|
8
9
|
from hestia_earth.models.ipcc2019.co2ToAirSoilOrganicCarbonStockChangeManagementChange import (
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
_get_max_measurement_method,
|
|
12
|
-
_get_min_measurement_method,
|
|
13
|
-
_linear_interpolate_soc_stock,
|
|
14
|
-
_nodes_to_soc_stock,
|
|
15
|
-
MODEL,
|
|
16
|
-
run,
|
|
17
|
-
SocStock,
|
|
18
|
-
TERM_ID
|
|
10
|
+
calc_soc_stock_change, calc_soc_stock_change_emission, convert_c_to_co2, lerp_soc_stocks, MODEL, run, TERM_ID,
|
|
11
|
+
SocStock, SocStockChange, SocStockChangeEmission
|
|
19
12
|
)
|
|
20
13
|
|
|
21
|
-
from tests.utils import
|
|
22
|
-
fake_new_emission,
|
|
23
|
-
fixtures_path
|
|
24
|
-
)
|
|
14
|
+
from tests.utils import fake_new_emission, fixtures_path
|
|
25
15
|
|
|
26
16
|
class_path = f"hestia_earth.models.{MODEL}.{TERM_ID}"
|
|
27
17
|
fixtures_folder = f"{fixtures_path}/{MODEL}/{TERM_ID}"
|
|
@@ -31,10 +21,19 @@ RUN_SCENARIOS = [
|
|
|
31
21
|
("overlapping-cycles", 4),
|
|
32
22
|
("complex-overlapping-cycles", 5),
|
|
33
23
|
("missing-measurement-dates", 3),
|
|
34
|
-
("no-organic-carbon-measurements", 1) # Closes issue #700
|
|
24
|
+
("no-organic-carbon-measurements", 1), # Closes issue #700
|
|
25
|
+
("multiple-method-classifications", 5) # Closes issue #764
|
|
35
26
|
]
|
|
36
27
|
"""List of (subfolder: str, num_cycles: int)."""
|
|
37
28
|
|
|
29
|
+
|
|
30
|
+
def _load_fixture(path: str, default=None):
|
|
31
|
+
if isfile(path):
|
|
32
|
+
with open(path, encoding="utf-8") as f:
|
|
33
|
+
return json.load(f)
|
|
34
|
+
return default
|
|
35
|
+
|
|
36
|
+
|
|
38
37
|
RUN_PARAMS = reduce(
|
|
39
38
|
lambda params, scenario: params + [(scenario[0], scenario[1], i) for i in range(scenario[1])],
|
|
40
39
|
RUN_SCENARIOS,
|
|
@@ -45,163 +44,20 @@ RUN_PARAMS = reduce(
|
|
|
45
44
|
RUN_IDS = [f"{param[0]}, cycle{param[2]}" for param in RUN_PARAMS]
|
|
46
45
|
|
|
47
46
|
|
|
48
|
-
def _load_fixture(path: str):
|
|
49
|
-
with open(path, encoding="utf-8") as f:
|
|
50
|
-
fixture = json.load(f)
|
|
51
|
-
return fixture
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
def _get_site_path(subfolder: str) -> str:
|
|
55
|
-
return f"{fixtures_folder}/{subfolder}/site.jsonld"
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
def _get_cycle_path(subfolder: str, index: int) -> str:
|
|
59
|
-
return f"{fixtures_folder}/{subfolder}/cycle{index}.jsonld"
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
def _get_result_path(subfolder: str, index: int) -> str:
|
|
63
|
-
return f"{fixtures_folder}/{subfolder}/result{index}.jsonld"
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
def test_calc_soc_stock_change():
|
|
67
|
-
START_SOC_STOCK = SocStock(20000, MeasurementMethodClassification.ON_SITE_PHYSICAL_MEASUREMENT)
|
|
68
|
-
END_SOC_STOCK = SocStock(21000, MeasurementMethodClassification.TIER_1_MODEL)
|
|
69
|
-
EXPECTED = SocStock(1000, MeasurementMethodClassification.TIER_1_MODEL)
|
|
70
|
-
|
|
71
|
-
result = _calc_soc_stock_change(START_SOC_STOCK, END_SOC_STOCK)
|
|
72
|
-
assert result == EXPECTED
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
def test_convert_c_to_co2():
|
|
76
|
-
KG_C = 1000
|
|
77
|
-
EXPECTED = 3663.836163836164
|
|
78
|
-
|
|
79
|
-
assert _convert_c_to_co2(KG_C) == EXPECTED
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
def test_get_max_measurement_method():
|
|
83
|
-
EXPECTED = MeasurementMethodClassification.ON_SITE_PHYSICAL_MEASUREMENT
|
|
84
|
-
result = _get_max_measurement_method(
|
|
85
|
-
MeasurementMethodClassification.ON_SITE_PHYSICAL_MEASUREMENT,
|
|
86
|
-
MeasurementMethodClassification.TIER_2_MODEL,
|
|
87
|
-
MeasurementMethodClassification.TIER_1_MODEL
|
|
88
|
-
)
|
|
89
|
-
assert result == EXPECTED
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
def test_get_max_measurement_method_list():
|
|
93
|
-
EXPECTED = MeasurementMethodClassification.ON_SITE_PHYSICAL_MEASUREMENT
|
|
94
|
-
METHODS = [
|
|
95
|
-
MeasurementMethodClassification.ON_SITE_PHYSICAL_MEASUREMENT,
|
|
96
|
-
MeasurementMethodClassification.TIER_2_MODEL,
|
|
97
|
-
MeasurementMethodClassification.TIER_1_MODEL
|
|
98
|
-
]
|
|
99
|
-
result = _get_max_measurement_method(METHODS)
|
|
100
|
-
assert result == EXPECTED
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
def test_get_max_measurement_method_no_methods():
|
|
104
|
-
EXPECTED = MeasurementMethodClassification.ON_SITE_PHYSICAL_MEASUREMENT
|
|
105
|
-
result = _get_max_measurement_method()
|
|
106
|
-
assert result == EXPECTED
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
def test_get_min_measurement_method():
|
|
110
|
-
EXPECTED = MeasurementMethodClassification.TIER_1_MODEL
|
|
111
|
-
result = _get_min_measurement_method(
|
|
112
|
-
MeasurementMethodClassification.ON_SITE_PHYSICAL_MEASUREMENT,
|
|
113
|
-
MeasurementMethodClassification.TIER_2_MODEL,
|
|
114
|
-
MeasurementMethodClassification.TIER_1_MODEL
|
|
115
|
-
)
|
|
116
|
-
assert result == EXPECTED
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
def test_get_min_measurement_method_list():
|
|
120
|
-
EXPECTED = MeasurementMethodClassification.TIER_1_MODEL
|
|
121
|
-
METHODS = [
|
|
122
|
-
MeasurementMethodClassification.ON_SITE_PHYSICAL_MEASUREMENT,
|
|
123
|
-
MeasurementMethodClassification.TIER_2_MODEL,
|
|
124
|
-
MeasurementMethodClassification.TIER_1_MODEL
|
|
125
|
-
]
|
|
126
|
-
result = _get_min_measurement_method(METHODS)
|
|
127
|
-
assert result == EXPECTED
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
def test_get_min_measurement_method_no_methods():
|
|
131
|
-
EXPECTED = MeasurementMethodClassification.UNSOURCED_ASSUMPTION
|
|
132
|
-
result = _get_min_measurement_method()
|
|
133
|
-
assert result == EXPECTED
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
def test_linear_interpolate_soc_stock():
|
|
137
|
-
START_YEAR = 2000
|
|
138
|
-
END_YEAR = 2002
|
|
139
|
-
START_SOC_STOCK = SocStock(20000, MeasurementMethodClassification.ON_SITE_PHYSICAL_MEASUREMENT)
|
|
140
|
-
END_SOC_STOCK = SocStock(22000, MeasurementMethodClassification.ON_SITE_PHYSICAL_MEASUREMENT)
|
|
141
|
-
TARGET_YEAR = 2001
|
|
142
|
-
EXPECTED = SocStock(21000, MeasurementMethodClassification.TIER_1_MODEL)
|
|
143
|
-
|
|
144
|
-
result = _linear_interpolate_soc_stock(
|
|
145
|
-
START_YEAR, END_YEAR, START_SOC_STOCK, END_SOC_STOCK, TARGET_YEAR
|
|
146
|
-
)
|
|
147
|
-
assert result == EXPECTED
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
def test_nodes_to_soc_stock_diff_dates():
|
|
151
|
-
NODES = [
|
|
152
|
-
{
|
|
153
|
-
"value": [1000],
|
|
154
|
-
"dates": ["2020"],
|
|
155
|
-
"methodClassification": "modelled using other measurements"
|
|
156
|
-
},
|
|
157
|
-
{
|
|
158
|
-
"value": [12000],
|
|
159
|
-
"dates": ["2020-12-31"],
|
|
160
|
-
"methodClassification": "tier 1 model"
|
|
161
|
-
}
|
|
162
|
-
]
|
|
163
|
-
EXPECTED = SocStock(12000, MeasurementMethodClassification.TIER_1_MODEL)
|
|
164
|
-
|
|
165
|
-
assert _nodes_to_soc_stock(2020, NODES) == EXPECTED
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
def test_nodes_to_soc_stock_same_dates():
|
|
169
|
-
NODES = [
|
|
170
|
-
{
|
|
171
|
-
"value": [10000],
|
|
172
|
-
"dates": ["2020-12-31"],
|
|
173
|
-
"methodClassification": "modelled using other measurements"
|
|
174
|
-
},
|
|
175
|
-
{
|
|
176
|
-
"value": [12000],
|
|
177
|
-
"dates": ["2020-12-31"],
|
|
178
|
-
"methodClassification": "tier 1 model"
|
|
179
|
-
},
|
|
180
|
-
{
|
|
181
|
-
"value": [11000],
|
|
182
|
-
"dates": ["2020-06-01"],
|
|
183
|
-
"methodClassification": "on-site physical measurement"
|
|
184
|
-
}
|
|
185
|
-
]
|
|
186
|
-
EXPECTED = SocStock(10000, MeasurementMethodClassification.MODELLED_USING_OTHER_MEASUREMENTS)
|
|
187
|
-
|
|
188
|
-
assert _nodes_to_soc_stock(2020, NODES) == EXPECTED
|
|
189
|
-
|
|
190
|
-
|
|
191
47
|
@mark.parametrize("subfolder, num_cycles, cycle_index", RUN_PARAMS, ids=RUN_IDS)
|
|
192
48
|
@patch(f"{class_path}._new_emission", side_effect=fake_new_emission)
|
|
193
49
|
@patch(f"{class_path}.related_cycles")
|
|
194
|
-
@patch(f"{class_path}.
|
|
50
|
+
@patch(f"{class_path}._get_site")
|
|
195
51
|
def test_run(_get_site_mock, related_cycles_mock, _new_emission_mock, subfolder, num_cycles, cycle_index):
|
|
196
52
|
"""
|
|
197
53
|
Test `run` function for each cycle in each scenario.
|
|
198
54
|
"""
|
|
199
|
-
site = _load_fixture(
|
|
200
|
-
cycle = _load_fixture(
|
|
201
|
-
expected = _load_fixture(
|
|
55
|
+
site = _load_fixture(f"{fixtures_folder}/{subfolder}/site.jsonld")
|
|
56
|
+
cycle = _load_fixture(f"{fixtures_folder}/{subfolder}/cycle{cycle_index}.jsonld")
|
|
57
|
+
expected = _load_fixture(f"{fixtures_folder}/{subfolder}/result{cycle_index}.jsonld", default=[])
|
|
202
58
|
|
|
203
59
|
cycles = [
|
|
204
|
-
_load_fixture(
|
|
60
|
+
_load_fixture(f"{fixtures_folder}/{subfolder}/cycle{i}.jsonld") for i in range(num_cycles)
|
|
205
61
|
]
|
|
206
62
|
|
|
207
63
|
_get_site_mock.return_value = site
|
|
@@ -213,7 +69,7 @@ def test_run(_get_site_mock, related_cycles_mock, _new_emission_mock, subfolder,
|
|
|
213
69
|
|
|
214
70
|
@patch(f"{class_path}._new_emission", side_effect=fake_new_emission)
|
|
215
71
|
@patch(f"{class_path}.related_cycles")
|
|
216
|
-
@patch(f"{class_path}.
|
|
72
|
+
@patch(f"{class_path}._get_site")
|
|
217
73
|
def test_run_empty(_get_site_mock, related_cycles_mock, _new_emission_mock):
|
|
218
74
|
"""
|
|
219
75
|
Test `run` function for each cycle in each scenario.
|
|
@@ -226,3 +82,36 @@ def test_run_empty(_get_site_mock, related_cycles_mock, _new_emission_mock):
|
|
|
226
82
|
|
|
227
83
|
result = run(CYCLE)
|
|
228
84
|
assert result == EXPECTED
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
def test_convert_c_to_co2():
|
|
88
|
+
KG_C = 1000
|
|
89
|
+
EXPECTED = 3663.836163836164
|
|
90
|
+
assert convert_c_to_co2(KG_C) == EXPECTED
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
def test_linear_interpolate_soc_stock():
|
|
94
|
+
START = SocStock(20000, "2000-12-31", MeasurementMethodClassification.ON_SITE_PHYSICAL_MEASUREMENT)
|
|
95
|
+
END = SocStock(22000, "2002-12-31", MeasurementMethodClassification.ON_SITE_PHYSICAL_MEASUREMENT)
|
|
96
|
+
TARGET_DATE = "2001-12-31"
|
|
97
|
+
EXPECTED = SocStock(21000, "2001-12-31", MeasurementMethodClassification.ON_SITE_PHYSICAL_MEASUREMENT)
|
|
98
|
+
|
|
99
|
+
result = lerp_soc_stocks(START, END, TARGET_DATE)
|
|
100
|
+
assert result == EXPECTED
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
def test_calc_soc_stock_change():
|
|
104
|
+
START = SocStock(20000, "2000", MeasurementMethodClassification.ON_SITE_PHYSICAL_MEASUREMENT)
|
|
105
|
+
END = SocStock(21000, "2001", MeasurementMethodClassification.TIER_1_MODEL)
|
|
106
|
+
EXPECTED = SocStockChange(1000, "2000", "2001", MeasurementMethodClassification.TIER_1_MODEL)
|
|
107
|
+
|
|
108
|
+
result = calc_soc_stock_change(START, END)
|
|
109
|
+
assert result == EXPECTED
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
def test_calc_soc_stock_change_emission():
|
|
113
|
+
SOC_STOCK_CHANGE = SocStockChange(-1000, "2000", "2001", MeasurementMethodClassification.TIER_1_MODEL)
|
|
114
|
+
EXPECTED = SocStockChangeEmission(3663.836163836164, "2000", "2001", EmissionMethodTier.TIER_1)
|
|
115
|
+
|
|
116
|
+
result = calc_soc_stock_change_emission(SOC_STOCK_CHANGE)
|
|
117
|
+
assert result == EXPECTED
|