hestia-earth-models 0.61.2__py3-none-any.whl → 0.61.4__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.

Files changed (53) hide show
  1. hestia_earth/models/cycle/startDateDefinition.py +0 -1
  2. hestia_earth/models/ecoinventV3/__init__.py +6 -2
  3. hestia_earth/models/ecoinventV3AndEmberClimate/__init__.py +125 -0
  4. hestia_earth/models/ecoinventV3AndEmberClimate/utils.py +125 -0
  5. hestia_earth/models/emepEea2019/nh3ToAirInorganicFertiliser.py +10 -4
  6. hestia_earth/models/ipcc2006/n2OToAirInorganicFertiliserDirect.py +16 -8
  7. hestia_earth/models/ipcc2006/n2OToAirInorganicFertiliserIndirect.py +16 -8
  8. hestia_earth/models/ipcc2006/n2OToAirOrganicFertiliserDirect.py +15 -7
  9. hestia_earth/models/ipcc2006/n2OToAirOrganicFertiliserIndirect.py +15 -7
  10. hestia_earth/models/ipcc2019/animal/pastureGrass.py +1 -1
  11. hestia_earth/models/ipcc2019/animal/weightAtMaturity.py +104 -0
  12. hestia_earth/models/ipcc2019/ch4ToAirFloodedRice.py +15 -2
  13. hestia_earth/models/ipcc2019/n2OToAirInorganicFertiliserDirect.py +16 -8
  14. hestia_earth/models/ipcc2019/n2OToAirOrganicFertiliserDirect.py +16 -9
  15. hestia_earth/models/ipcc2019/nh3ToAirInorganicFertiliser.py +6 -0
  16. hestia_earth/models/ipcc2019/nh3ToAirOrganicFertiliser.py +9 -3
  17. hestia_earth/models/ipcc2019/no3ToGroundwaterInorganicFertiliser.py +16 -8
  18. hestia_earth/models/ipcc2019/no3ToGroundwaterOrganicFertiliser.py +6 -0
  19. hestia_earth/models/ipcc2019/noxToAirInorganicFertiliser.py +6 -0
  20. hestia_earth/models/ipcc2019/noxToAirOrganicFertiliser.py +9 -3
  21. hestia_earth/models/mocking/search-results.json +165 -114
  22. hestia_earth/models/pooreNemecek2018/no3ToGroundwaterInorganicFertiliser.py +16 -8
  23. hestia_earth/models/pooreNemecek2018/no3ToGroundwaterOrganicFertiliser.py +16 -8
  24. hestia_earth/models/schererPfister2015/pToDrainageWaterSoilFlux.py +13 -1
  25. hestia_earth/models/schererPfister2015/pToSurfaceWaterSoilFlux.py +13 -1
  26. hestia_earth/models/schererPfister2015/utils.py +3 -3
  27. hestia_earth/models/site/management.py +13 -6
  28. hestia_earth/models/site/organicCarbonPerHa.py +6 -4
  29. hestia_earth/models/stehfestBouwman2006/n2OToAirInorganicFertiliserDirect.py +16 -8
  30. hestia_earth/models/stehfestBouwman2006/n2OToAirOrganicFertiliserDirect.py +16 -8
  31. hestia_earth/models/stehfestBouwman2006/noxToAirInorganicFertiliser.py +16 -8
  32. hestia_earth/models/stehfestBouwman2006/noxToAirOrganicFertiliser.py +16 -8
  33. hestia_earth/models/stehfestBouwman2006GisImplementation/noxToAirInorganicFertiliser.py +16 -8
  34. hestia_earth/models/stehfestBouwman2006GisImplementation/noxToAirOrganicFertiliser.py +16 -8
  35. hestia_earth/models/utils/blank_node.py +29 -0
  36. hestia_earth/models/utils/cycle.py +6 -4
  37. hestia_earth/models/utils/fertiliser.py +14 -0
  38. hestia_earth/models/utils/inorganicFertiliser.py +7 -0
  39. hestia_earth/models/utils/organicFertiliser.py +9 -0
  40. hestia_earth/models/utils/pesticideAI.py +6 -17
  41. hestia_earth/models/utils/term.py +22 -0
  42. hestia_earth/models/version.py +1 -1
  43. hestia_earth/models/webbEtAl2012AndSintermannEtAl2012/nh3ToAirOrganicFertiliser.py +17 -9
  44. {hestia_earth_models-0.61.2.dist-info → hestia_earth_models-0.61.4.dist-info}/METADATA +2 -2
  45. {hestia_earth_models-0.61.2.dist-info → hestia_earth_models-0.61.4.dist-info}/RECORD +53 -46
  46. tests/models/ipcc2019/animal/test_weightAtMaturity.py +20 -0
  47. tests/models/ipcc2019/test_ch4ToAirEntericFermentation.py +0 -5
  48. tests/models/site/test_management.py +8 -4
  49. tests/models/test_ecoinventV3.py +1 -1
  50. tests/models/test_ecoinventV3AndEmberClimate.py +93 -0
  51. {hestia_earth_models-0.61.2.dist-info → hestia_earth_models-0.61.4.dist-info}/LICENSE +0 -0
  52. {hestia_earth_models-0.61.2.dist-info → hestia_earth_models-0.61.4.dist-info}/WHEEL +0 -0
  53. {hestia_earth_models-0.61.2.dist-info → hestia_earth_models-0.61.4.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,5 @@
1
1
  from enum import Enum
2
- from hestia_earth.schema import EmissionMethodTier, TermTermType
3
- from hestia_earth.utils.model import filter_list_term_type
2
+ from hestia_earth.schema import EmissionMethodTier
4
3
  from hestia_earth.utils.tools import list_sum
5
4
 
6
5
  from hestia_earth.models.log import logRequirements, logShouldRun
@@ -9,17 +8,26 @@ from hestia_earth.models.utils.emission import _new_emission
9
8
  from hestia_earth.models.utils.input import match_lookup_value
10
9
  from hestia_earth.models.utils.completeness import _is_term_type_complete
11
10
  from hestia_earth.models.utils.property import _get_nitrogen_tan_content
11
+ from hestia_earth.models.utils.organicFertiliser import get_cycle_inputs as get_organicFertiliser_inputs
12
12
  from . import MODEL
13
13
 
14
14
  REQUIREMENTS = {
15
15
  "Cycle": {
16
16
  "completeness.fertiliser": "",
17
- "inputs": [{
18
- "@type": "Input",
19
- "value": "",
20
- "term.termType": "organicFertiliser",
21
- "properties": [{"@type": "Property", "value": "", "term.@id": "totalAmmoniacalNitrogenContentAsN"}]
22
- }]
17
+ "inputs": [
18
+ {
19
+ "@type": "Input",
20
+ "value": "",
21
+ "term.termType": "organicFertiliser",
22
+ "properties": [{"@type": "Property", "value": "", "term.@id": "totalAmmoniacalNitrogenContentAsN"}]
23
+ },
24
+ {
25
+ "@type": "Input",
26
+ "value": "",
27
+ "term.termType": "fertiliserBrandName",
28
+ "properties": [{"@type": "Property", "value": "", "key.termType": "organicFertiliser"}]
29
+ }
30
+ ]
23
31
  }
24
32
  }
25
33
  RETURNS = {
@@ -68,7 +76,7 @@ def _run(organic_fertiliser_values: list):
68
76
 
69
77
 
70
78
  def _get_N_grouped_values(cycle: dict, classification: Classification):
71
- inputs = filter_list_term_type(cycle.get('inputs', []), TermTermType.ORGANICFERTILISER)
79
+ inputs = get_organicFertiliser_inputs(cycle)
72
80
  values = [
73
81
  list_sum(get_total_value([i])) * _get_nitrogen_tan_content(i) / 100 for i in inputs
74
82
  if match_lookup_value(i, col_name=LOOKUPS['organicFertiliser'], col_value=classification.value)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: hestia-earth-models
3
- Version: 0.61.2
3
+ Version: 0.61.4
4
4
  Summary: Hestia's set of modules for filling gaps in the activity data using external datasets (e.g. populating soil properties with a geospatial dataset using provided coordinates) and internal lookups (e.g. populating machinery use from fuel use). Includes rules for when gaps should be filled versus not (e.g. never gap fill yield, gap fill crop residue if yield provided etc.).
5
5
  Home-page: https://gitlab.com/hestia-earth/hestia-engine-models
6
6
  Author: Hestia Team
@@ -12,7 +12,7 @@ Classifier: Programming Language :: Python :: 3.6
12
12
  Description-Content-Type: text/markdown
13
13
  License-File: LICENSE
14
14
  Requires-Dist: hestia-earth.schema ==28.*
15
- Requires-Dist: hestia-earth.utils >=0.12.2
15
+ Requires-Dist: hestia-earth.utils >=0.12.6
16
16
  Requires-Dist: python-dateutil >=2.8.1
17
17
  Requires-Dist: CurrencyConverter ==0.16.8
18
18
  Requires-Dist: haversine >=2.7.0
@@ -3,7 +3,7 @@ hestia_earth/models/__init__.py,sha256=qEFeq3yuf3lQKVseALmL8aPM8fpCS54B_5pry00M3
3
3
  hestia_earth/models/cache_sites.py,sha256=KQp9cUKE-aIcYJoMWEtKFYS8gBFfsx5LKQhqoWpUSoM,6065
4
4
  hestia_earth/models/log.py,sha256=b63I3qyTtQs17xxbq8RI0Fv2lvZ1oDZ9k0njhxqiFFk,3459
5
5
  hestia_earth/models/requirements.py,sha256=znNZJAhwX2iYiKcAQXPftY7z_1MsNa0QxCXkXyHm_U0,17363
6
- hestia_earth/models/version.py,sha256=amopnk8te0u-l3gxv2ipWoe58Bto8__cIri9jh_O02U,19
6
+ hestia_earth/models/version.py,sha256=bmj37UzUxTNwdA4_HAC8XTpOEahYZizn-7UE1L4CEyc,19
7
7
  hestia_earth/models/agribalyse2016/__init__.py,sha256=WvK0qCQbnYtg9oZxrACd1wGormZyXibPtpCnIQeDqbw,415
8
8
  hestia_earth/models/agribalyse2016/fuelElectricity.py,sha256=mrh8seYSYdTgcMDCETLiknuPeJehg071YoG4UiyW0yU,4404
9
9
  hestia_earth/models/agribalyse2016/machineryInfrastructureDepreciatedAmountPerCycle.py,sha256=_Rbngu0DzHKa62JwBl58ZC_ui1zLF2que_nB7ukhOQc,3392
@@ -56,7 +56,7 @@ hestia_earth/models/cycle/residueLeftOnField.py,sha256=qYxKGAdUORN7Vjqj7AZC2VGV_
56
56
  hestia_earth/models/cycle/residueRemoved.py,sha256=jxDu_Jfcyd-rm-qo8ZuRIf-GGxtFBMpmGy1zHOavwy0,2135
57
57
  hestia_earth/models/cycle/siteDuration.py,sha256=XAxCA_51kQaWh4_0L_Y08cGn-qsMRUcyaPrn84rfafI,1058
58
58
  hestia_earth/models/cycle/startDate.py,sha256=OnuMf4TkDb0WwCntjXNy3ipLS-b4drMWSkXWeXU142Q,1507
59
- hestia_earth/models/cycle/startDateDefinition.py,sha256=4C7Gh3x7nBtAK7q1LbNUInwPpS5Vv7ivnkxP5QFhHBs,2273
59
+ hestia_earth/models/cycle/startDateDefinition.py,sha256=nCFeKjZjC3MoYNFH0N66WNW4HJUzKD_UkznvTMl_KfM,2244
60
60
  hestia_earth/models/cycle/transformation.py,sha256=06KTfVubh2I47dfnG9Iv6AbuUBbURM8BAVOkRu7XmHw,1255
61
61
  hestia_earth/models/cycle/utils.py,sha256=ZcVwvRwVNK48jZfnhrHl2ai4a96YzcmRgO-eQXwQNjo,1408
62
62
  hestia_earth/models/cycle/animal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -105,12 +105,14 @@ hestia_earth/models/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZ
105
105
  hestia_earth/models/data/ecoinventV3/__init__.py,sha256=oevyurRuioXy_CsQCtG-S_FXEpiEDeQ-UK5a0jPBXcI,1155
106
106
  hestia_earth/models/deRuijterEtAl2010/__init__.py,sha256=lbH6mB98dmZZlwdZctNYtEmVwAow957l80Dv7JSPDsI,418
107
107
  hestia_earth/models/deRuijterEtAl2010/nh3ToAirCropResidueDecomposition.py,sha256=2z10WqMsGUDDO8xJ3lmXvSUHgzz2t6PPRDha5NHoT5s,3291
108
- hestia_earth/models/ecoinventV3/__init__.py,sha256=707dH-dusGSjW7eqeBHTcIeNbWbN4EONWaBquQkNYjo,6166
108
+ hestia_earth/models/ecoinventV3/__init__.py,sha256=nSktsE0c9ohx1FyDEEi-YlnGgMGNd-actCwPs_htzC0,6309
109
+ hestia_earth/models/ecoinventV3AndEmberClimate/__init__.py,sha256=-5FCTS2EA8D7hbuqsTN0E1SOTPwJ5ChfJBDJapbtzGc,4388
110
+ hestia_earth/models/ecoinventV3AndEmberClimate/utils.py,sha256=Vh8cGkgvbcq3b8tE8Y_8LI1PYqrt9E53fPwInKoYmaY,4577
109
111
  hestia_earth/models/emepEea2019/__init__.py,sha256=l90-pWrqIzt1ap1WNk0gF4iZeF5_TSG62hE83bIi4rQ,412
110
112
  hestia_earth/models/emepEea2019/co2ToAirFuelCombustion.py,sha256=DfoGlB5HjA1gafO0OutJjfsA6yPP_PsAd-p16evwCiQ,1609
111
113
  hestia_earth/models/emepEea2019/n2OToAirFuelCombustionDirect.py,sha256=R3lRF5-Md4Jd7irvTe8WJZJPc9-wa1pD6UWVk7lnGtQ,1616
112
114
  hestia_earth/models/emepEea2019/nh3ToAirExcreta.py,sha256=lWo1AaorIk4HtTCQAND3RFbCHO-em1DbA5ZOxv0Ldn8,3750
113
- hestia_earth/models/emepEea2019/nh3ToAirInorganicFertiliser.py,sha256=w9Cti3pBKVRsTbFJJorFy1-vREB0iIi9UkZKwRezOE4,6469
115
+ hestia_earth/models/emepEea2019/nh3ToAirInorganicFertiliser.py,sha256=Ypq6Zw0zFRb4-lrIY9FyMsHL8EykfSlzm3iCre_gZSk,6647
114
116
  hestia_earth/models/emepEea2019/noxToAirFuelCombustion.py,sha256=y49RvO5OkrZ4iK7o2Kmx5xW52y8SS9xEKAmlXlTQtWc,1609
115
117
  hestia_earth/models/emepEea2019/so2ToAirFuelCombustion.py,sha256=bo_0mFcwicpOkPsvZRAnL2tDBDRBAQqsPD_Wc5e20K4,1609
116
118
  hestia_earth/models/emepEea2019/utils.py,sha256=ikoZn3JPe9wz-_voVlIqVwh4jBgmnfKi2oyLhi7_7E4,1398
@@ -199,10 +201,10 @@ hestia_earth/models/ipcc2006/n2OToAirCropResidueDecompositionDirect.py,sha256=_2
199
201
  hestia_earth/models/ipcc2006/n2OToAirCropResidueDecompositionIndirect.py,sha256=kf4WjdMzs6d8h433LFuUH9LJKJ_aMHTqEHDToGY5-Xk,2315
200
202
  hestia_earth/models/ipcc2006/n2OToAirExcretaDirect.py,sha256=VvQTIh58JyhrdPk5FdJQBkjBDr5-Cv7CnGkNEcco3P4,1986
201
203
  hestia_earth/models/ipcc2006/n2OToAirExcretaIndirect.py,sha256=me1MLX2WI5A_VZ11774CRxwRC6seOaxgMg_GGYCckIk,2243
202
- hestia_earth/models/ipcc2006/n2OToAirInorganicFertiliserDirect.py,sha256=hhFioTDxWZ2g_SjDt0k5tq6P8AJrq48i65qUpAfW_sU,2144
203
- hestia_earth/models/ipcc2006/n2OToAirInorganicFertiliserIndirect.py,sha256=Wy8-k96xq-auFW99w9KpBgX-mJ8Vf2ONPpP9nXkF4Fk,2863
204
- hestia_earth/models/ipcc2006/n2OToAirOrganicFertiliserDirect.py,sha256=MZUmA3ajGkpi4wr020OU6m4WJdujjKkRhUVsbPgUVb8,2094
205
- hestia_earth/models/ipcc2006/n2OToAirOrganicFertiliserIndirect.py,sha256=pgNG18EwgTA7kmVw9QFtucMn8ScVeEKJAsSPxcExbI8,2801
204
+ hestia_earth/models/ipcc2006/n2OToAirInorganicFertiliserDirect.py,sha256=0Lyhqh3-RWRkiJHRORaEgG2RO6VEFAPppnfakk_oPvY,2452
205
+ hestia_earth/models/ipcc2006/n2OToAirInorganicFertiliserIndirect.py,sha256=s5-pnhzz3fEYkdMZEGGlecp7XlPh_9vxyN78VoOUP2Y,3171
206
+ hestia_earth/models/ipcc2006/n2OToAirOrganicFertiliserDirect.py,sha256=xB-5jp551knTSWvJeeowO1ERpLCdXrZJKttN7xU_6RY,2396
207
+ hestia_earth/models/ipcc2006/n2OToAirOrganicFertiliserIndirect.py,sha256=NAdGaG6-5Mrrwe17ED8R_3en-zuMqHFDtrRlqi9USSI,3103
206
208
  hestia_earth/models/ipcc2006/n2OToAirOrganicSoilCultivationDirect.py,sha256=0J6ntZxYyLg3pUQeSQelDe36fb0nQtbMLjIBtwzHUyc,3038
207
209
  hestia_earth/models/ipcc2006/utils.py,sha256=flB7HWrynzOorKlmrpbETGD63NMv45H8Wxjj3RCav98,739
208
210
  hestia_earth/models/ipcc2013ExcludingFeedbacks/__init__.py,sha256=v4Qe-X4w3tqIHGJBNnEAK81x4ZuQMwYxQYXRncugmcU,427
@@ -215,7 +217,7 @@ hestia_earth/models/ipcc2019/belowGroundCropResidue.py,sha256=mk4nq40qI4p1A44mrE
215
217
  hestia_earth/models/ipcc2019/carbonContent.py,sha256=I76bJaO1OYSrIjwDKxhwY-DZGZJubgVJSxtZHx5jQxY,7237
216
218
  hestia_earth/models/ipcc2019/ch4ToAirEntericFermentation.py,sha256=khX90NjkmlvosyRZ77QxgwTKwg42Z_ftOWTTAanHViw,11420
217
219
  hestia_earth/models/ipcc2019/ch4ToAirExcreta.py,sha256=IzYHdnzT8Z-WQGoZIt9-O98VqriA5rKr38He_TbYadk,6723
218
- hestia_earth/models/ipcc2019/ch4ToAirFloodedRice.py,sha256=f3orp6tDZ7f8bE9-lLZC0H_SgCKsDASAlphVRAHKJ0I,6885
220
+ hestia_earth/models/ipcc2019/ch4ToAirFloodedRice.py,sha256=TJ4J7VA5n4RPrJYZQeR3lc3ZoCw7T1E5Cb1XJewr834,7331
219
221
  hestia_earth/models/ipcc2019/co2ToAirLimeHydrolysis.py,sha256=7z0zdqiiWQwkyJCgSNMoK2mft3cJkTRlqwKrMuSKdWI,2454
220
222
  hestia_earth/models/ipcc2019/co2ToAirSoilOrganicCarbonStockChangeManagementChange.py,sha256=kWrWxhr-48jmbyt57EIjth8IWsl5-Yt1I-uTBSUqFuA,25381
221
223
  hestia_earth/models/ipcc2019/co2ToAirUreaHydrolysis.py,sha256=071H3ykjzJFW2K5PKvbAaeIj0aL8LTzMiG_pIeYEpEc,3520
@@ -225,25 +227,26 @@ hestia_earth/models/ipcc2019/n2OToAirCropResidueDecompositionDirect.py,sha256=Fa
225
227
  hestia_earth/models/ipcc2019/n2OToAirCropResidueDecompositionIndirect.py,sha256=_Oj6Jw8F4rce7FmhWkzeqyB7W3ZQWpOiA10p6xrfSwc,3777
226
228
  hestia_earth/models/ipcc2019/n2OToAirExcretaDirect.py,sha256=9rpp5NvFZOGRSnkfLhBoMqArdzKSd4fH-fgQEnbTT4I,1722
227
229
  hestia_earth/models/ipcc2019/n2OToAirExcretaIndirect.py,sha256=4TfJg5OhTnj_ulW-IH8Jz1hMRB0zKMQdh0vBZKL6nqg,3650
228
- hestia_earth/models/ipcc2019/n2OToAirInorganicFertiliserDirect.py,sha256=NfS6EiEVSf-hpWHqO3r-1PKPuHPVb6ijTNLTbOlRCp0,4062
230
+ hestia_earth/models/ipcc2019/n2OToAirInorganicFertiliserDirect.py,sha256=cvhwJMlISQaNxgcMVXOK3s6SL4v-HQzfWTWPPNQb59I,4370
229
231
  hestia_earth/models/ipcc2019/n2OToAirInorganicFertiliserIndirect.py,sha256=iNjwTyktLqD0HpwfwAEnAHbQUDNQmT7ekONF_lJobzE,3715
230
- hestia_earth/models/ipcc2019/n2OToAirOrganicFertiliserDirect.py,sha256=pMyl6UtUVgPWfczgA_cdm1RUdMGi4Ln16qWrw1eesv4,4138
232
+ hestia_earth/models/ipcc2019/n2OToAirOrganicFertiliserDirect.py,sha256=Tq0lw-zGqA6S9ZWi2OTSWXA7nVp_STJeNT4X8Cra2rU,4358
231
233
  hestia_earth/models/ipcc2019/n2OToAirOrganicFertiliserIndirect.py,sha256=9YbaR8h7P-4rLHgcwtDLnQ_hT7cKzyELjCVJ9lWV2jI,3701
232
- hestia_earth/models/ipcc2019/nh3ToAirInorganicFertiliser.py,sha256=IASHAUO_tV043qLxll9M7Bp9WM5N290lkmkh1yQr-1U,4226
233
- hestia_earth/models/ipcc2019/nh3ToAirOrganicFertiliser.py,sha256=mPAoC6mRc4F7bXRt02JQWqhJvds-bEIEnk2XbdJzmEU,3911
234
+ hestia_earth/models/ipcc2019/nh3ToAirInorganicFertiliser.py,sha256=gvfv4VBHmEkppEMoHUIicAelYICdOjKxKBUw5f3meiQ,4480
235
+ hestia_earth/models/ipcc2019/nh3ToAirOrganicFertiliser.py,sha256=Oih-34cGl7AZ_sIYWXktOWrzmj3_onvk3EW5f8-7QKI,4152
234
236
  hestia_earth/models/ipcc2019/nitrogenContent.py,sha256=6fGG7diDp9zAidVH75gXz9c8uxURx0Q2COo8KrkT3I4,7191
235
237
  hestia_earth/models/ipcc2019/no3ToGroundwaterCropResidueDecomposition.py,sha256=8NOjbqJuQ-wnLz3bYmwaygSzKBdaF3N7hoELGNnO4YQ,3115
236
238
  hestia_earth/models/ipcc2019/no3ToGroundwaterExcreta.py,sha256=mJUXLGtg9EOZq9LH0KFOKvzER1ypCUucs0ZMaNYMShc,2991
237
- hestia_earth/models/ipcc2019/no3ToGroundwaterInorganicFertiliser.py,sha256=wTvMBthqmiKMn4nLbL4VD6_8_gGI2WGR3OYz3KK8sXs,3105
238
- hestia_earth/models/ipcc2019/no3ToGroundwaterOrganicFertiliser.py,sha256=zOhp6NhYUuUNU_LMMwhZBP78YC2XRWRlGnajBUX2AN8,3095
239
- hestia_earth/models/ipcc2019/noxToAirInorganicFertiliser.py,sha256=D-UyzY55mOiIcXRzEtvPY-r1bDFgb9YqA08SmHsQeNA,4226
240
- hestia_earth/models/ipcc2019/noxToAirOrganicFertiliser.py,sha256=SVgVNp76bIv9oUjrZZuI6xYLo4Gw2DRU5tbp14gydOE,3911
239
+ hestia_earth/models/ipcc2019/no3ToGroundwaterInorganicFertiliser.py,sha256=eyPfyIi8EqigOTsEA0BSyoUePyy_AjMlQNJ6Z8yyJ_Q,3413
240
+ hestia_earth/models/ipcc2019/no3ToGroundwaterOrganicFertiliser.py,sha256=px2SN-uaus2cftXzlsYCUAxLuon6BnDXmaFI9xhQrgU,3347
241
+ hestia_earth/models/ipcc2019/noxToAirInorganicFertiliser.py,sha256=fmmFgjtvOD2TrrLY03jYly_KvDnCsAXqhL_tmZQQt-A,4480
242
+ hestia_earth/models/ipcc2019/noxToAirOrganicFertiliser.py,sha256=9dx_MRTwJGxJRq6mj2EJQMdQ2w6j7lw0fQk0If_cIGc,4152
241
243
  hestia_earth/models/ipcc2019/organicCarbonPerHa.py,sha256=omxrtnAZ58qHQYIhi38R7VFn7SRzf8Kk89KgP0VELFQ,141507
242
244
  hestia_earth/models/ipcc2019/pastureGrass.py,sha256=Q3uX7IcTk0PmzxqEhU3JAcHb5LnUymZbmdRFP9xXsfo,8713
243
245
  hestia_earth/models/ipcc2019/pastureGrass_utils.py,sha256=nUJYYkovzF7QD4LeUqhV5mBYFKdrhxeG4gyPRv0Xpuk,16002
244
246
  hestia_earth/models/ipcc2019/utils.py,sha256=MSDMu15D9DnilFUgi4_6jYXC0FaKso3OODauGTMB6hs,6229
245
247
  hestia_earth/models/ipcc2019/animal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
246
- hestia_earth/models/ipcc2019/animal/pastureGrass.py,sha256=naNAVtNkij7NOBbycijklXHMPP-LB26QnrJV2bb8_Gw,10688
248
+ hestia_earth/models/ipcc2019/animal/pastureGrass.py,sha256=xPtuTiKeAvBhv9d7B6Upw_cbP6YxKykVJ3_p0S_EtZg,10689
249
+ hestia_earth/models/ipcc2019/animal/weightAtMaturity.py,sha256=PlT11hX2nBIwDMsQs3E0XeJZ5BCA023_ibpXPreTncI,3558
247
250
  hestia_earth/models/ipcc2021/__init__.py,sha256=VTgGFKhwMmk_nuI1RRq0in27fHYVPBonlXlPK00K8no,409
248
251
  hestia_earth/models/ipcc2021/gwp100.py,sha256=v-DYU-11XnWI1Ns1GEiKrJqL3JafxvhTsLmuBuFcxJU,1021
249
252
  hestia_earth/models/jarvisAndPain1994/__init__.py,sha256=ercUwy29sV7oPIESj8UjsGB5lqiBCss9OZcbjxeeG8E,418
@@ -356,7 +359,7 @@ hestia_earth/models/linkedImpactAssessment/landTransformationFromPermanentPastur
356
359
  hestia_earth/models/linkedImpactAssessment/utils.py,sha256=dGwGc2d-8_WQElTpfyPmz5vQtL-LHQRmiZnCTuPXMDs,1876
357
360
  hestia_earth/models/mocking/__init__.py,sha256=kmSeOTSvurMUxw7Ajhf3G-SVPQ1NgmirMTk4TSOEicY,765
358
361
  hestia_earth/models/mocking/mock_search.py,sha256=V-ycVBTkJu7PP37Ivy_16hpKBV4aEtJb5S9DfChPNSU,2038
359
- hestia_earth/models/mocking/search-results.json,sha256=wuCsl3UPweeod7xuTDd3akdqaoWyyUF9KDJwru81dKg,40203
362
+ hestia_earth/models/mocking/search-results.json,sha256=FuWHaK_s8PNp46cP3fBfE7kwkm4Tu_HlMGz8Y62UWLk,41248
360
363
  hestia_earth/models/pooreNemecek2018/__init__.py,sha256=nPboL7ULJzL5nJD5q7q9VOZt_fxbKVm8fmn1Az5YkVY,417
361
364
  hestia_earth/models/pooreNemecek2018/aboveGroundCropResidueTotal.py,sha256=Qt-mel4dkhK6N5uUOutNOinCTFjbjtGzITaaI0LvYc4,2396
362
365
  hestia_earth/models/pooreNemecek2018/belowGroundCropResidue.py,sha256=JT0RybbvWVlo01FO8K0Yj41HrEaJT3Kj1xfayr2X-xw,2315
@@ -371,8 +374,8 @@ hestia_earth/models/pooreNemecek2018/n2ToAirAquacultureSystems.py,sha256=SoZlogD
371
374
  hestia_earth/models/pooreNemecek2018/nh3ToAirAquacultureSystems.py,sha256=4TDILoagYMVBSBbVXEecIOv-pzQ-W2Hg6rpL58t1-J4,4001
372
375
  hestia_earth/models/pooreNemecek2018/no3ToGroundwaterCropResidueDecomposition.py,sha256=HlH4Mr_p6fGXDhasxaWZaj0ctSIJricTWgERlD1cQ6U,1981
373
376
  hestia_earth/models/pooreNemecek2018/no3ToGroundwaterExcreta.py,sha256=x-Tv7dJvHEnrVlqvZarI3iunwcVZ3VJFSAiu_K2Gam4,2156
374
- hestia_earth/models/pooreNemecek2018/no3ToGroundwaterInorganicFertiliser.py,sha256=2P2bac61-iPL63TOtj3jucqDD55nWTmrZZBS8wEXjyU,2024
375
- hestia_earth/models/pooreNemecek2018/no3ToGroundwaterOrganicFertiliser.py,sha256=CLTXBjf1owETJgDnXG6MG6LvGcovZGggDkSC-GW8VHQ,1992
377
+ hestia_earth/models/pooreNemecek2018/no3ToGroundwaterInorganicFertiliser.py,sha256=M05wzZxJuDShN9_N0m9vec_texuL8d9AhzSxoEu4mJU,2332
378
+ hestia_earth/models/pooreNemecek2018/no3ToGroundwaterOrganicFertiliser.py,sha256=ussLIjMsJT0_GmikEBpGqHzDZ5KqJYH8T-B2qN4LRzE,2298
376
379
  hestia_earth/models/pooreNemecek2018/no3ToGroundwaterSoilFlux.py,sha256=G0D_YBCP29Yl_hmQ7jpZP6i0I708PiiaaVRoNrI01MI,6058
377
380
  hestia_earth/models/pooreNemecek2018/noxToAirAquacultureSystems.py,sha256=NfuCdx-rt5mhUxGSsJSudSMp9YkiHRMAiWVyR6m8faM,2733
378
381
  hestia_earth/models/pooreNemecek2018/nurseryDensity.py,sha256=oVoMNWF64ps2SkazFhbdq4CPGqYiHYu0Tum75ACRICU,1010
@@ -440,10 +443,10 @@ hestia_earth/models/recipe2016Individualist/terrestrialEcotoxicityPotential14Dcb
440
443
  hestia_earth/models/schererPfister2015/__init__.py,sha256=_6FJKfWeAbbS3jFzQ8gEVzoX1LZdPWUTLrow6Hz90U0,419
441
444
  hestia_earth/models/schererPfister2015/nErosionSoilFlux.py,sha256=0l2AByDtq8Ci-36duTnwFvjeelnQ-_TOaeah5A2Yv8U,4924
442
445
  hestia_earth/models/schererPfister2015/pErosionSoilFlux.py,sha256=aWvcphQU4JMGiISXjPLqnakTObFn0VOn1T9z8e4xds0,5029
443
- hestia_earth/models/schererPfister2015/pToDrainageWaterSoilFlux.py,sha256=yuXUt4qFzJ3rAC1TvTOcodGDv_z2iN0O8NldEOpzF04,1974
446
+ hestia_earth/models/schererPfister2015/pToDrainageWaterSoilFlux.py,sha256=P-rlpEyfm7JVhStYLDZEe4m7Rn3b-5qRhQCiZqJkoSg,2310
444
447
  hestia_earth/models/schererPfister2015/pToGroundwaterSoilFlux.py,sha256=8krSt0i8gZBqv4pd82rKcJpVSJM-BPT4KQ-s60GnvaM,1972
445
- hestia_earth/models/schererPfister2015/pToSurfaceWaterSoilFlux.py,sha256=CuqIsy3GEeLiCwQs_2EXHckdZcBrGF3_SRzjz40X98s,2611
446
- hestia_earth/models/schererPfister2015/utils.py,sha256=LEvz9guqto0kuF5rXcQjgYsD3CvEmORvJQqRA1f7uMI,3130
448
+ hestia_earth/models/schererPfister2015/pToSurfaceWaterSoilFlux.py,sha256=evd2jmFZ9lq-uwXiBTgP5wJ-KTjNBVztjSp8eW9-8qg,2947
449
+ hestia_earth/models/schererPfister2015/utils.py,sha256=lb2s_RL8Y3i6DRitpsd8Ri3HSyT442MmUHsBPqXb13U,3150
447
450
  hestia_earth/models/schmidt2007/__init__.py,sha256=xheSN6LOGXpWx7Hnv83onhe60Xk1_jk1PJg1nH_aZOQ,412
448
451
  hestia_earth/models/schmidt2007/ch4ToAirWasteTreatment.py,sha256=-N5uLvVHlA2djOs_lwR_8RmbeCfkPw5p3vmbqG2kzkI,1474
449
452
  hestia_earth/models/schmidt2007/h2SToAirWasteTreatment.py,sha256=f8a5ZRuCltpO8GWwQ0l1laWrw2yPGqOPaq8j6ZOJFTE,1474
@@ -455,9 +458,9 @@ hestia_earth/models/site/brackishWater.py,sha256=dl-R_vwFlXwAkir3grhCYZTLf05FYrf
455
458
  hestia_earth/models/site/cationExchangeCapacityPerKgSoil.py,sha256=0eH4A-tXJ0hvIkiYXWxlx8TfrdbIKUGYUDk97-yQJgg,3653
456
459
  hestia_earth/models/site/flowingWater.py,sha256=0ZuSXMr3EUTY3wsy8hdfuXeZcNX-n3D45MfX3dwyaeA,1728
457
460
  hestia_earth/models/site/freshWater.py,sha256=z-C_Il0U6UhZUQUPwh72Z0vixmSrUNEmBN5Lz-nl9_w,1254
458
- hestia_earth/models/site/management.py,sha256=gYmFaWIYtki112b3A3qf_1hLl9bb98T6oYMG4KbaXzQ,8628
461
+ hestia_earth/models/site/management.py,sha256=F_zcXlW100pwdSfRyT8GxB_l1LMnAWzyVMe40qjV9ws,8843
459
462
  hestia_earth/models/site/netPrimaryProduction.py,sha256=UIIQkYd911qVzrWjxBLrC37e-RARIVgDwLdARY9BuLw,1849
460
- hestia_earth/models/site/organicCarbonPerHa.py,sha256=gcmhZavc2EWvkroKkpFM5xXowPTgyXGh1XL6lgs3CX4,14303
463
+ hestia_earth/models/site/organicCarbonPerHa.py,sha256=-qQWy1BI4vZJJNMS1RCluZ34dOTqR0lblXSOZLjkhOo,14362
461
464
  hestia_earth/models/site/organicCarbonPerKgSoil.py,sha256=t--wAshiAKS-JvEKhLFRadGvgSBv5NFZ68jdyms_wh4,1945
462
465
  hestia_earth/models/site/organicCarbonPerM3Soil.py,sha256=pdv5V-ojcfhlGzPwRS9s-vEnxiHZQPZP-ESVcz2pt0g,1945
463
466
  hestia_earth/models/site/organicMatterPerKgSoil.py,sha256=fJpFVkpuCjnrBhgV0RtwKqQHvAJWWtZO9xtmnJnl8O4,1945
@@ -486,19 +489,19 @@ hestia_earth/models/site/pre_checks/cache_years.py,sha256=qGwTaHlWxnVT7iVxXVcpJ-
486
489
  hestia_earth/models/stehfestBouwman2006/__init__.py,sha256=EhvD4NK6oEPevusLb1WdYV3GT_fCtQx4gvdMhK_dEIQ,420
487
490
  hestia_earth/models/stehfestBouwman2006/n2OToAirCropResidueDecompositionDirect.py,sha256=Q94yXDQardk-uTFoKnvNTlSLJxzj25QigpZJ6OQtpoI,2241
488
491
  hestia_earth/models/stehfestBouwman2006/n2OToAirExcretaDirect.py,sha256=FEsFng_OIGSd50E5lTSvbxJOCPiqTJuFKq7YHWnAHFg,2429
489
- hestia_earth/models/stehfestBouwman2006/n2OToAirInorganicFertiliserDirect.py,sha256=zHturwGr6gQn18n6r2KHGS_XHojQSU5ax_bIHhJ9yTE,2294
490
- hestia_earth/models/stehfestBouwman2006/n2OToAirOrganicFertiliserDirect.py,sha256=EuFFYJHiKXQ5FoYk7ImkMQ6Yq3dRw3qb-la4DdVlZpM,2283
492
+ hestia_earth/models/stehfestBouwman2006/n2OToAirInorganicFertiliserDirect.py,sha256=qkH8ObKmfC5K1g-mv48kF2_0UmxRoy5SWzKyx_j5dvw,2602
493
+ hestia_earth/models/stehfestBouwman2006/n2OToAirOrganicFertiliserDirect.py,sha256=n2XB5SrUVYoDti7MQ32rONnei1RKVhirT5ady3ZBGCM,2589
491
494
  hestia_earth/models/stehfestBouwman2006/n2OToAirSoilFlux.py,sha256=9vRDBWFdBrT9nV7smBBZK547bBv-L7hDk4SjtRaVwuc,7233
492
495
  hestia_earth/models/stehfestBouwman2006/noxToAirCropResidueDecomposition.py,sha256=g25xowuEEsSB2H9tXNBxCT6UShml7nrGpQx8ug4HroU,1904
493
496
  hestia_earth/models/stehfestBouwman2006/noxToAirExcreta.py,sha256=FkgyDizmWASDvMi70jDcElm-rltPf6cfyAbe9havDUw,2092
494
- hestia_earth/models/stehfestBouwman2006/noxToAirInorganicFertiliser.py,sha256=k4UPW3-j9oRJgm3vxBeD5uUvEF3NOaa5f0G2X-Gc0dM,1960
495
- hestia_earth/models/stehfestBouwman2006/noxToAirOrganicFertiliser.py,sha256=zHUCFEvnr13wu1lPeFu961NY0tGJmhtGw-ts1a14Tho,1946
497
+ hestia_earth/models/stehfestBouwman2006/noxToAirInorganicFertiliser.py,sha256=NWN5i7CHN-4uEzo8Nyh2pJS_HKCUeYnaDQUnzRHvbcw,2268
498
+ hestia_earth/models/stehfestBouwman2006/noxToAirOrganicFertiliser.py,sha256=jcA2YkYiNuDBgA1eGACB2nyCR_pnRDE7c43oCE5bqJA,2252
496
499
  hestia_earth/models/stehfestBouwman2006/noxToAirSoilFlux.py,sha256=shWEXw4uXkZ2vr21aQdO-86f8FiIQuiu7kbVk6TCBlY,4846
497
500
  hestia_earth/models/stehfestBouwman2006GisImplementation/__init__.py,sha256=hPufyIt8yDk35sR669ywh3YH3FhViWi5PC5WD9d39WE,437
498
501
  hestia_earth/models/stehfestBouwman2006GisImplementation/noxToAirCropResidueDecomposition.py,sha256=ShuCta4TyWbjfXq28hh3bLHVOyKjqVvQJprO6fzsMc8,1619
499
502
  hestia_earth/models/stehfestBouwman2006GisImplementation/noxToAirExcreta.py,sha256=aTMj_8UWPoG6QLYl_hORCwc0yCBFn07os8WTEo-YkOg,1807
500
- hestia_earth/models/stehfestBouwman2006GisImplementation/noxToAirInorganicFertiliser.py,sha256=KFEbcBtVxxIssDbtt9KkKNuloN7FHvRBjHTge0c5koo,1682
501
- hestia_earth/models/stehfestBouwman2006GisImplementation/noxToAirOrganicFertiliser.py,sha256=bSMrhxcN50dfYRMSM1d-XkaZ5SkfJhDRnwHnCx6dc50,1668
503
+ hestia_earth/models/stehfestBouwman2006GisImplementation/noxToAirInorganicFertiliser.py,sha256=hOZwGYExTJW4x007BknLSoHIrn43q918ms_v4MWKDh4,1990
504
+ hestia_earth/models/stehfestBouwman2006GisImplementation/noxToAirOrganicFertiliser.py,sha256=nQ6PaFsQzhUvGITXmaYcoCFKizWCrgl6b1zdx1RAkaA,1974
502
505
  hestia_earth/models/stehfestBouwman2006GisImplementation/noxToAirSoilFlux.py,sha256=yRsk-WcI13mVz4jerCAxJY91hqNs2JelXhbufP83Km0,3403
503
506
  hestia_earth/models/transformation/__init__.py,sha256=63Y_fXFBn4sX2l7F0hMsWkgIvxk5Tw9XoDBQr6bUBQQ,352
504
507
  hestia_earth/models/transformation/input/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -517,27 +520,29 @@ hestia_earth/models/utils/__init__.py,sha256=5FY8tpFa7QjwAIsMTt2-QLB5_0Gy5AkAKk_
517
520
  hestia_earth/models/utils/aggregated.py,sha256=sz6usleZmo_tC_hIvmGgYsX8-H0dulXmmhHK4EkA5Kg,4946
518
521
  hestia_earth/models/utils/animalProduct.py,sha256=M5IunAKGY6oZv3j1Ascl34ywyeLWApqOIlBzbtlA2FE,721
519
522
  hestia_earth/models/utils/aquacultureManagement.py,sha256=3uSTSMDNNPa26NTJGZCYwByv3QZVyxj6bh2aFCoBzHk,126
520
- hestia_earth/models/utils/blank_node.py,sha256=VviIxvHSTxKYr0KaWR56b2ro1WEN-BwKvQ5LndyWgks,40879
523
+ hestia_earth/models/utils/blank_node.py,sha256=VcWvWRG4hlurgQG8PzklIa7SiZnuR6fnhC_TpE_9wuM,41977
521
524
  hestia_earth/models/utils/completeness.py,sha256=2-GusD9UycobDZq8y5jar0ZcOjyqnSbzPRT_5XMc4YA,1259
522
525
  hestia_earth/models/utils/constant.py,sha256=5H7odhRwU_LmUhYwf8c1LsdqXSYbLWkuknvtRDqUBTQ,3194
523
526
  hestia_earth/models/utils/crop.py,sha256=S8UycHpkgx_TznW3Q7pchEMlCQ623T_SqU6V5fBLBLc,1520
524
527
  hestia_earth/models/utils/cropResidue.py,sha256=_0Q35CrliJeo31xGHsPWe8A2oHxijdIsOrf3gBEqhlA,612
525
528
  hestia_earth/models/utils/cropResidueManagement.py,sha256=nIDFjf39rDD10UHSVudfDyu-EiL261g8jyrgS-2aDKw,347
526
529
  hestia_earth/models/utils/currency.py,sha256=f_ArJANb--pZq4LL49SXQ1AMX_oKroqwBXKRRQqZwsM,578
527
- hestia_earth/models/utils/cycle.py,sha256=F5dykDeHJfnSm6m7YCqQT3Ip3OZsAB-oipbKwbvslBE,16647
530
+ hestia_earth/models/utils/cycle.py,sha256=FMUqDnklfirQwode4dtgk5NyApBCHzPNKn9Jyvt3Wg8,16639
528
531
  hestia_earth/models/utils/ecoClimateZone.py,sha256=NHFt-A9EiWXC6tUNIxkgOWUZOjj4I4uwJIP9ddDZegw,1112
529
532
  hestia_earth/models/utils/emission.py,sha256=AVp-ngrb4VHYT8BG1QA5EEb17edT3cLonsXV3cNm04U,1576
530
533
  hestia_earth/models/utils/excretaManagement.py,sha256=NuWPQjFZxMVt9sYgBjcqhGWCFk_OKb3sA9Ovcff3fRQ,428
531
534
  hestia_earth/models/utils/feedipedia.py,sha256=ImUAURcwJDtSvu1s4MDeM1VpbU8mVTp9jh9ENNOB0Mw,3515
535
+ hestia_earth/models/utils/fertiliser.py,sha256=DBO4OBNgnQJ0fCQMDkIk_ZGZX-uKGaTFZCEXfAnJciY,690
532
536
  hestia_earth/models/utils/fuel.py,sha256=r1MKMMxg-PYiVlRutP83RuvY2rsdCQ1iN6ekSGGQGpA,1379
533
537
  hestia_earth/models/utils/impact_assessment.py,sha256=H1_cvLwC8nb3A5ckS9uvWrLqUDU_9i9BdQiPpn52xIg,6890
534
538
  hestia_earth/models/utils/indicator.py,sha256=fPq38ifd53xWbuOfoiVwiA0Nwa7jVPJLSAPpOMMil8Q,423
535
- hestia_earth/models/utils/inorganicFertiliser.py,sha256=T48wQlPAAZNpmbAq-58y7wlR7HxdIyOulWfuOKkbBZg,1573
539
+ hestia_earth/models/utils/inorganicFertiliser.py,sha256=wTQKnr_fPse-G8aP3Dxrj8mzNSQgXvNL9auy_RWzY5Q,1894
536
540
  hestia_earth/models/utils/input.py,sha256=YycsAbSBfVDMu6PftDsisMFGnEp87wOj-3rrnHnOgzo,4927
537
541
  hestia_earth/models/utils/liveAnimal.py,sha256=GnajBPZw5d94raf80KtLloaOqlfqGAPwUtP9bRlGWeE,1754
538
542
  hestia_earth/models/utils/lookup.py,sha256=3tXnOaTGF91NhL9NsM0hQ05Vm_bQQG6aNgC5dEq0KdQ,6255
539
543
  hestia_earth/models/utils/measurement.py,sha256=c0Zkz0a5hWxpYJ83aWsWTeSsukfh-dzjKlCmuj1vCY4,8070
540
- hestia_earth/models/utils/pesticideAI.py,sha256=oAQTUlgXnSJrBGvIphlmVcjx2gbCHH6k5zqfuitJD_I,2789
544
+ hestia_earth/models/utils/organicFertiliser.py,sha256=2HY-a0EBzUw4DkEAXClLMXVCEZTKYf0BwFHBo7lQ5Tg,363
545
+ hestia_earth/models/utils/pesticideAI.py,sha256=6f8b-dFm3qr-eY049_eOvj_iDk4XBam61csozdDAvyA,2361
541
546
  hestia_earth/models/utils/practice.py,sha256=tNadOzsrNlCEt801B815XaruJXzZ5yPASam7B3sWpXE,1091
542
547
  hestia_earth/models/utils/product.py,sha256=H9UqJNzTqtMWXDQnbRkZlTpv_hg4s-Tya469fBk8InA,10143
543
548
  hestia_earth/models/utils/productivity.py,sha256=bUBVCZInGqHuHZvHDSYPQkjWXQxOtTjEk-1-f_BsFOo,594
@@ -545,13 +550,14 @@ hestia_earth/models/utils/property.py,sha256=gHPEmy3Sw599ox64Gv-LCvjhP1THlBXBaBl
545
550
  hestia_earth/models/utils/site.py,sha256=oLuai82WdN_qAAG09XmLEbhf7-jr7AT7BGxRBUs1Bno,3292
546
551
  hestia_earth/models/utils/source.py,sha256=HhZkvQoFdy6j6FC2cwP5EbHXHFM4pif9gpnuzeDwEh4,1746
547
552
  hestia_earth/models/utils/temperature.py,sha256=ljlG4-yCgFFb6LRZweb18cZKLrr7K2mqd4E4Hz_D1f8,476
548
- hestia_earth/models/utils/term.py,sha256=XH3-xTkv8WNB0obOjo6Y5YLT8B3zcON6Z-JeskCsCXY,17112
553
+ hestia_earth/models/utils/term.py,sha256=n_T1Qp_0z9ZUgrbVACNKue-5yDePOCkDw8g8dlMKSTM,17763
549
554
  hestia_earth/models/utils/transformation.py,sha256=nyT5Mz4_VgFwhkL8JoNX9kxxow0zuxzsYl3W8xOu2p0,370
550
555
  hestia_earth/models/webbEtAl2012AndSintermannEtAl2012/__init__.py,sha256=Niv7ZFMBCwThlbCKGOwA17QdkpOUDFrqrFItGNqnZAA,434
551
- hestia_earth/models/webbEtAl2012AndSintermannEtAl2012/nh3ToAirOrganicFertiliser.py,sha256=G2eq00XGdr1ZEZ5Ru1nBIR-sD7iM9hGYhvk8r5wL3dA,3910
556
+ hestia_earth/models/webbEtAl2012AndSintermannEtAl2012/nh3ToAirOrganicFertiliser.py,sha256=TGXyusrRd9shT842iqbrI6MkQhICgw7uYdrl4jsDrg8,4193
552
557
  tests/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
553
558
  tests/models/test_cache_sites.py,sha256=AsZSGb4ruFqag74wRaQxpoZxbMxexPY8q8sMb2ergzg,1986
554
- tests/models/test_ecoinventV3.py,sha256=zyIWeeS7VndjXAHcROhDi3E0I52U8uQu8u-t1EXwqW8,1492
559
+ tests/models/test_ecoinventV3.py,sha256=gde7ny9ThMmezkDcTmS3ZKn82MNOaNSrpMcbkTjFJxk,1491
560
+ tests/models/test_ecoinventV3AndEmberClimate.py,sha256=hMyCkDMLzUihfQpSTVPlycerqiDplBCJZlW1SrJxGjo,3622
555
561
  tests/models/test_emissionNotRelevant.py,sha256=YXTdRfcdR_JepHuj2P3Y3r0aFMKNOmsXQHY48tmLTQo,1316
556
562
  tests/models/agribalyse2016/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
557
563
  tests/models/agribalyse2016/test_fuelElectricity.py,sha256=u_wNlqngJc8NELPr16kYsYQ-_2PcL8BnrfJucY7dccU,1353
@@ -752,7 +758,7 @@ tests/models/ipcc2019/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3h
752
758
  tests/models/ipcc2019/test_aboveGroundCropResidueTotal.py,sha256=AADYB1g9vftH7YSvNyihHu8GQOiA7VhXxVQ-oJQNT88,2581
753
759
  tests/models/ipcc2019/test_belowGroundCropResidue.py,sha256=HUxHZLBdLX_E_oc3wqTwNtGY4M4yCWcxx-1iBYPF7_s,2576
754
760
  tests/models/ipcc2019/test_carbonContent.py,sha256=_GWF5nGy-PxiqBZ5V7W_sHMz75YRzmxr79R-sZZg7yk,4146
755
- tests/models/ipcc2019/test_ch4ToAirEntericFermentation.py,sha256=eqHm9JexHOx_Qbi25oDCYXJqPC8wdWxGUnqnfEAqQsQ,7996
761
+ tests/models/ipcc2019/test_ch4ToAirEntericFermentation.py,sha256=3Hv86L4X_Va2mZL4KI-36AV00z-KBbKo0cb2ABg6Rv8,7928
756
762
  tests/models/ipcc2019/test_ch4ToAirExcreta.py,sha256=e58NXmBW2SNVLUqQO9A66Xq6jiGTyhdFZDZk51JApF8,2902
757
763
  tests/models/ipcc2019/test_ch4ToAirFloodedRice.py,sha256=FAp5b45WdX5Ih4yGUOZ4CmVD8smW1Lw1tnulx9AKVBI,1980
758
764
  tests/models/ipcc2019/test_co2ToAirLimeHydrolysis.py,sha256=e5iuZ-kQNEVih0ZRgRPWqaUtXcLpfkoU7sQypbqA9_Y,1345
@@ -781,6 +787,7 @@ tests/models/ipcc2019/test_organicCarbonPerHa.py,sha256=TO3ubi8z8-iYEAdf295Z30ft
781
787
  tests/models/ipcc2019/test_pastureGrass.py,sha256=hn6tw-ifMTn00_WmYPIjRdm56SMF1w-eqETngVE29ns,3373
782
788
  tests/models/ipcc2019/animal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
783
789
  tests/models/ipcc2019/animal/test_pastureGrass.py,sha256=2ZbeIxxEZ9xaDkfCY2pLripmtOG89iHMTrPqa2-UuQg,1983
790
+ tests/models/ipcc2019/animal/test_weightAtMaturity.py,sha256=Tss9bTVz66yXVEBZT31KMm6gd45B9E1DJLqwYArPuYY,665
784
791
  tests/models/ipcc2021/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
785
792
  tests/models/ipcc2021/test_gwp100.py,sha256=JRklKMSg-OXopb9ZufGgl94deuMuJSsfNXRZDBtOZrE,1119
786
793
  tests/models/jarvisAndPain1994/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -986,7 +993,7 @@ tests/models/site/test_brackishWater.py,sha256=YGCp4glaWudKklYBSp-50KbfvIRtp3F4Q
986
993
  tests/models/site/test_cationExchangeCapacityPerKgSoil.py,sha256=tNMhN998vcjQ15I-5mNnFh2d7mHzEBIBO6o1VSfQNUE,1075
987
994
  tests/models/site/test_flowingWater.py,sha256=t_rxvdlmUVDsFBoDF20_zDM-0iiLKkNCV7knO9l1T7o,1370
988
995
  tests/models/site/test_freshWater.py,sha256=GOeAxHhPW_2E1wQdQRX4W-r7mnb_LgmiAVLImitoApw,982
989
- tests/models/site/test_management.py,sha256=CO9wghyFmnG5ynU6iuKcJ3LkZCoV9pY35hQedrY6-kk,4470
996
+ tests/models/site/test_management.py,sha256=gVtMv_sgmHdEEA_Xdjg73Z2YrwFtm2pN6jo6ZyJx86U,4825
990
997
  tests/models/site/test_netPrimaryProduction.py,sha256=JCxG0MODbKVvl3hOqmKzh4FjHYn3Xs9KsVod6LvKQII,1108
991
998
  tests/models/site/test_organicCarbonPerHa.py,sha256=6Qtc0Xmveir7MmNF4Ekv5YkV92TNp8GfDnURPVg05-4,3471
992
999
  tests/models/site/test_organicCarbonPerKgSoil.py,sha256=0M-NMg_T3UXzGT_VlKOKhSxg4cZ0_zhd3FRgY5Hpj6o,1087
@@ -1062,8 +1069,8 @@ tests/models/utils/test_source.py,sha256=mv3vHZV5cjpoLA2I1109-YUkuzAiuhbRSnv_76_
1062
1069
  tests/models/utils/test_term.py,sha256=M5Sa26v2gzQYbZ4H_fo7DspnaCx__-WtL-MULGapCWk,3509
1063
1070
  tests/models/webbEtAl2012AndSintermannEtAl2012/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1064
1071
  tests/models/webbEtAl2012AndSintermannEtAl2012/test_nh3ToAirOrganicFertiliser.py,sha256=qi2FNXS5Af2WDtm7nq_FsprH3BfCF0XxnE0XHmC4aIY,2244
1065
- hestia_earth_models-0.61.2.dist-info/LICENSE,sha256=AC7h7GAgCZGJK_Tzh6LUCrML9gQEfowWwecEw2w54QM,1154
1066
- hestia_earth_models-0.61.2.dist-info/METADATA,sha256=IOg7YfChXiX8HburiPlB4M9cIeGXSUe1NurYTLHqNT0,3134
1067
- hestia_earth_models-0.61.2.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
1068
- hestia_earth_models-0.61.2.dist-info/top_level.txt,sha256=1dqA9TqpOLTEgpqa-YBsmbCmmNU1y56AtfFGEceZ2A0,19
1069
- hestia_earth_models-0.61.2.dist-info/RECORD,,
1072
+ hestia_earth_models-0.61.4.dist-info/LICENSE,sha256=AC7h7GAgCZGJK_Tzh6LUCrML9gQEfowWwecEw2w54QM,1154
1073
+ hestia_earth_models-0.61.4.dist-info/METADATA,sha256=KxbGs2wQWB_3PbEeCUhb6j5W5DB9X6C-IJVMuFC7P8A,3134
1074
+ hestia_earth_models-0.61.4.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
1075
+ hestia_earth_models-0.61.4.dist-info/top_level.txt,sha256=1dqA9TqpOLTEgpqa-YBsmbCmmNU1y56AtfFGEceZ2A0,19
1076
+ hestia_earth_models-0.61.4.dist-info/RECORD,,
@@ -0,0 +1,20 @@
1
+ from unittest.mock import patch
2
+ import json
3
+ from tests.utils import fixtures_path, fake_new_property
4
+
5
+ from hestia_earth.models.ipcc2019.animal.weightAtMaturity import MODEL, TERM_ID, run
6
+
7
+ class_path = f"hestia_earth.models.{MODEL}.animal.{TERM_ID}"
8
+ fixtures_folder = f"{fixtures_path}/{MODEL}/animal/{TERM_ID}"
9
+
10
+
11
+ @patch(f"{class_path}._new_property", side_effect=fake_new_property)
12
+ def test_run(*args):
13
+ with open(f"{fixtures_folder}/cycle.jsonld", encoding='utf-8') as f:
14
+ cycle = json.load(f)
15
+
16
+ with open(f"{fixtures_folder}/result.jsonld", encoding='utf-8') as f:
17
+ expected = json.load(f)
18
+
19
+ value = run(cycle)
20
+ assert value == expected
@@ -177,11 +177,6 @@ def test_run_with_system(*args):
177
177
  assert result == expected
178
178
 
179
179
 
180
- def fake_get_node_property(*args):
181
- print(*args)
182
- return {}
183
-
184
-
185
180
  @patch(f"hestia_earth.models.{MODEL}.utils.get_milkYield_terms", return_value=[])
186
181
  @patch("hestia_earth.models.utils.property.download_hestia", return_value={})
187
182
  @patch(f"{class_path}._new_emission", side_effect=fake_new_emission)
@@ -11,7 +11,10 @@ CLASS_PATH = f"hestia_earth.models.{MODEL}.{MODEL_KEY}"
11
11
  fixtures_folder = f"{fixtures_path}/{MODEL}/{MODEL_KEY}"
12
12
 
13
13
  TERM_BY_ID = {
14
- 'genericCropPlant': {'@type': 'Term', '@id': 'genericCropPlant', 'termType': TermTermType.LANDCOVER.value}
14
+ 'genericCropPlant': {'@type': 'Term', '@id': 'genericCropPlant', 'termType': TermTermType.LANDCOVER.value},
15
+ 'wheatPlant': {'@type': 'Term', '@id': 'wheatPlant', 'termType': TermTermType.LANDCOVER.value},
16
+ 'oatPlant': {'@type': 'Term', '@id': 'oatPlant', 'termType': TermTermType.LANDCOVER.value},
17
+ 'agatiTree': {'@type': 'Term', '@id': 'agatiTree', 'termType': TermTermType.LANDCOVER.value}
15
18
  }
16
19
 
17
20
 
@@ -106,8 +109,8 @@ def test_should_run(mock_related_cycles, *args):
106
109
  assert args[0] == [{
107
110
  'term': TERM_BY_ID['genericCropPlant'],
108
111
  'value': 100,
109
- 'endDate': '2002',
110
- 'startDate': '2001',
112
+ 'endDate': '2022',
113
+ 'startDate': '2021',
111
114
  'properties': {'test': 'properties'}
112
115
  }]
113
116
 
@@ -117,7 +120,8 @@ def test_should_run(mock_related_cycles, *args):
117
120
  [
118
121
  ("Example 1", f"{fixtures_folder}/inputs/example1"),
119
122
  ("Example 2", f"{fixtures_folder}/inputs/example2"),
120
- ("Example 3", f"{fixtures_folder}/inputs/example3")
123
+ ("Example 3", f"{fixtures_folder}/inputs/example3"),
124
+ ("Example 4", f"{fixtures_folder}/inputs/example4")
121
125
  ]
122
126
  )
123
127
  @patch(f"{CLASS_PATH}.download_hestia", side_effect=lambda id, *args: TERM_BY_ID[id])
@@ -40,7 +40,7 @@ TERM_BY_ID = {
40
40
  }
41
41
 
42
42
 
43
- @patch('hestia_earth.models.utils.pesticideAI.download_hestia', side_effect=lambda id, *args: TERM_BY_ID[id])
43
+ @patch('hestia_earth.models.utils.blank_node.download_hestia', side_effect=lambda id, *args: TERM_BY_ID[id])
44
44
  @patch(f"{class_path}._new_emission", side_effect=fake_new_emission)
45
45
  def test_run(*args):
46
46
  with open(f"{fixtures_folder}/cycle.jsonld", encoding='utf-8') as f:
@@ -0,0 +1,93 @@
1
+ import csv
2
+ from typing import Tuple, Dict, List
3
+ from unittest.mock import patch
4
+ import json
5
+ import pytest
6
+
7
+ from tests.utils import fixtures_path, fake_new_emission
8
+ from hestia_earth.models.ecoinventV3AndEmberClimate import MODEL, _should_run_emission, run
9
+
10
+ class_path = f"hestia_earth.models.{MODEL}"
11
+ fixtures_folder = f"{fixtures_path}/{MODEL}"
12
+
13
+ cycle_with_country = {"site": {"country": {"@type": "Term", "termType": "region"}}}
14
+ cycle_without_country = {"site": {"country": {}}}
15
+ ELECTRICITY_TERMS = [
16
+ {"@type": "Term", "@id": "electricityGridMarketMix"},
17
+ {"@type": "Term", "@id": "electricityGridRenewableMix"}
18
+ ]
19
+
20
+
21
+ @pytest.mark.parametrize(
22
+ "cycle,inputs,complete,expected_should_run",
23
+ [
24
+ (cycle_without_country, [], False, (False, [])),
25
+ (
26
+ cycle_without_country,
27
+ [{"@type": "Input", "term": {"@id": "electricityGridMarketMix"}}],
28
+ True,
29
+ (False, [{"@type": "Input", "term": {"@id": "electricityGridMarketMix"}}])
30
+ ),
31
+ (cycle_with_country, [], True, (False, [])),
32
+ (
33
+ cycle_with_country,
34
+ [{"@type": "Input", "term": {"@id": "electricityGridRenewableMix"}}],
35
+ False,
36
+ (False, [{"@type": "Input", "term": {"@id": "electricityGridRenewableMix"}}])
37
+ ),
38
+ (
39
+ cycle_with_country,
40
+ [{"@type": "Input", "term": {"@id": "electricityGridMarketMix"}}],
41
+ True,
42
+ (True, [{"@type": "Input", "term": {"@id": "electricityGridMarketMix"}}])
43
+ ),
44
+ ]
45
+ )
46
+ @patch(f"{class_path}.get_electricity_grid_mix_terms", return_value=ELECTRICITY_TERMS)
47
+ @patch(f"{class_path}._is_term_type_complete")
48
+ def test_should_run_emission(
49
+ mock_complete, mock_get_terms, cycle: Dict, inputs: List, complete: bool, expected_should_run: Tuple
50
+ ):
51
+ mock_complete.return_value = complete
52
+ cycle["inputs"] = inputs
53
+ assert _should_run_emission(cycle, ELECTRICITY_TERMS, term_id="test") == expected_should_run
54
+
55
+
56
+ @patch(f"{class_path}.get_electricity_grid_mix_terms", return_value=ELECTRICITY_TERMS)
57
+ @patch(f"{class_path}._new_emission", side_effect=fake_new_emission)
58
+ @patch(f"{class_path}.utils.ecoinventV3_emissions")
59
+ def test_run(mock_ecoinventV3_emissions, *args):
60
+ with open(f"{fixtures_path}/ecoinventV3_excerpt.csv", encoding="utf-8") as f:
61
+ reader = csv.DictReader(f, quotechar='"')
62
+ ecoinvent_fixture_rows = list(reader)
63
+
64
+ test_terms = {
65
+ "ch4ToAirInputsProductionFossil", # 0.4
66
+ "ch4ToAirInputsProductionNonFossil", # 0.5
67
+ "co2ToAirInputsProduction", # 0.2
68
+ "n2OToAirInputsProduction" # 0.3
69
+ }
70
+
71
+ # Create a dictionary indexed by eco_invent_name
72
+ # with list of tuples (emissions_term, value)
73
+ mock_dict = dict()
74
+ for row_dict in ecoinvent_fixture_rows:
75
+ # create list of (emissions terms, values)
76
+ terms_values_list = []
77
+ for k in filter(lambda x: x.endswith(".term.@id"), row_dict.keys()):
78
+ if row_dict[k] in test_terms:
79
+ terms_values_list.append((row_dict[k], row_dict[f"emissionsResourceUse.{k.split('.')[1]}.value"]))
80
+
81
+ mock_dict[row_dict["ecoinventName"]] = terms_values_list
82
+
83
+ name = "electricity, high voltage, electricity production, wood, future"
84
+ mock_ecoinventV3_emissions.return_value = mock_dict[name]
85
+
86
+ with open(f"{fixtures_folder}/cycle.jsonld", encoding="utf-8") as f:
87
+ cycle = json.load(f)
88
+
89
+ with open(f"{fixtures_folder}/result.jsonld", encoding="utf-8") as f:
90
+ expected = json.load(f)
91
+
92
+ value = run('all', cycle)
93
+ assert value == expected