hestia-earth-models 0.70.2__py3-none-any.whl → 0.70.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.
- hestia_earth/models/config/Cycle.json +8 -0
- hestia_earth/models/cycle/practice/landCover.py +181 -0
- hestia_earth/models/emepEea2019/nh3ToAirExcreta.py +1 -1
- hestia_earth/models/geospatialDatabase/altitude.py +1 -0
- hestia_earth/models/geospatialDatabase/clayContent.py +3 -3
- hestia_earth/models/geospatialDatabase/sandContent.py +3 -3
- hestia_earth/models/geospatialDatabase/utils.py +1 -2
- hestia_earth/models/hestia/landCover.py +25 -12
- hestia_earth/models/hestia/management.py +11 -107
- hestia_earth/models/ipcc2019/ch4ToAirOrganicSoilCultivation.py +7 -7
- hestia_earth/models/ipcc2019/co2ToAirOrganicSoilCultivation.py +5 -4
- hestia_earth/models/ipcc2019/n2OToAirOrganicSoilCultivationDirect.py +7 -7
- hestia_earth/models/ipcc2019/no3ToGroundwaterExcreta.py +1 -1
- hestia_earth/models/ipcc2019/organicCarbonPerHa_tier_1.py +2 -2
- hestia_earth/models/ipcc2019/organicCarbonPerHa_tier_2.py +15 -4
- hestia_earth/models/ipcc2019/organicSoilCultivation_utils.py +11 -3
- hestia_earth/models/mocking/search-results.json +1295 -1309
- hestia_earth/models/pooreNemecek2018/excretaKgN.py +3 -1
- hestia_earth/models/utils/blank_node.py +2 -2
- hestia_earth/models/utils/excretaManagement.py +2 -2
- hestia_earth/models/utils/property.py +14 -9
- hestia_earth/models/utils/site.py +2 -1
- hestia_earth/models/version.py +1 -1
- {hestia_earth_models-0.70.2.dist-info → hestia_earth_models-0.70.4.dist-info}/METADATA +2 -2
- {hestia_earth_models-0.70.2.dist-info → hestia_earth_models-0.70.4.dist-info}/RECORD +35 -33
- tests/models/cycle/practice/test_landCover.py +27 -0
- tests/models/hestia/test_landCover.py +24 -1
- tests/models/ipcc2019/test_ch4ToAirEntericFermentation.py +2 -2
- tests/models/ipcc2019/test_ch4ToAirOrganicSoilCultivation.py +2 -1
- tests/models/ipcc2019/test_co2ToAirOrganicSoilCultivation.py +2 -1
- tests/models/ipcc2019/test_n2OToAirOrganicSoilCultivationDirect.py +2 -1
- tests/models/ipcc2019/test_organicCarbonPerHa_tier_1.py +8 -3
- {hestia_earth_models-0.70.2.dist-info → hestia_earth_models-0.70.4.dist-info}/LICENSE +0 -0
- {hestia_earth_models-0.70.2.dist-info → hestia_earth_models-0.70.4.dist-info}/WHEEL +0 -0
- {hestia_earth_models-0.70.2.dist-info → hestia_earth_models-0.70.4.dist-info}/top_level.txt +0 -0
@@ -129,7 +129,9 @@ def _should_run(cycle: dict):
|
|
129
129
|
logRequirements(cycle, model=MODEL, term=term_id, model_key=MODEL_KEY,
|
130
130
|
is_liveAquaticSpecies=is_liveAquaticSpecies,
|
131
131
|
product_value=product_value,
|
132
|
-
nitrogen_content=nitrogen_content
|
132
|
+
nitrogen_content=nitrogen_content,
|
133
|
+
inputs_n=inputs_n,
|
134
|
+
products_n=products_n)
|
133
135
|
|
134
136
|
else:
|
135
137
|
logRequirements(cycle, model=MODEL, term=term_id, model_key=MODEL_KEY,
|
@@ -434,11 +434,11 @@ def convert_to_nitrogen(node: dict, model: str, blank_nodes: list, **log_args):
|
|
434
434
|
missing_nitrogen_property = [i.get('term', {}).get('@id') for i, value in values if not value]
|
435
435
|
|
436
436
|
debugValues(node, model=model,
|
437
|
-
|
437
|
+
conversion_details=log_as_table([
|
438
438
|
{
|
439
439
|
'id': i.get('term', {}).get('@id'),
|
440
440
|
'value': list_sum(i.get('value', [])),
|
441
|
-
'
|
441
|
+
'nitrogenContent': value
|
442
442
|
}
|
443
443
|
for i, value in values
|
444
444
|
]),
|
@@ -22,7 +22,7 @@ def _get_nh3_factor(lookup_name: str, term_id: str, input: dict, **log_args):
|
|
22
22
|
return safe_parse_float(value, None)
|
23
23
|
|
24
24
|
|
25
|
-
def get_excreta_inputs_with_factor(cycle: dict, lookup_name: str,
|
25
|
+
def get_excreta_inputs_with_factor(cycle: dict, lookup_name: str, excreta_conversion_func, **log_args):
|
26
26
|
practices = filter_list_term_type(cycle.get('practices', []), TermTermType.EXCRETAMANAGEMENT)
|
27
27
|
practice_id = practices[0].get('term', {}).get('@id') if len(practices) > 0 else None
|
28
28
|
|
@@ -32,7 +32,7 @@ def get_excreta_inputs_with_factor(cycle: dict, lookup_name: str, excreta_conver
|
|
32
32
|
excreta_values = [
|
33
33
|
(
|
34
34
|
i.get('term', {}).get('@id'),
|
35
|
-
|
35
|
+
excreta_conversion_func([i]),
|
36
36
|
_get_nh3_factor(lookup_name, practice_id, i, **log_args)
|
37
37
|
) for i in excreta_inputs
|
38
38
|
]
|
@@ -77,14 +77,16 @@ def get_node_property(
|
|
77
77
|
Returns
|
78
78
|
-------
|
79
79
|
dict
|
80
|
-
The property if found, `
|
80
|
+
The property if found, `{}` otherwise.
|
81
81
|
"""
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
82
|
+
return (
|
83
|
+
(
|
84
|
+
find_term_match(node.get('properties', []), property, None)
|
85
|
+
) or (
|
86
|
+
find_term_property(node.get('term', {}), property, None) if find_default_property else None
|
87
|
+
) or (
|
88
|
+
{'term': download_term(property, TermTermType.PROPERTY)} if download_from_hestia else None
|
89
|
+
) or {}
|
88
90
|
)
|
89
91
|
|
90
92
|
|
@@ -113,9 +115,12 @@ def node_property_lookup_value(model: str, node_term: dict, prop_id: str, defaul
|
|
113
115
|
|
114
116
|
def get_node_property_value(model: str, node: dict, prop_id: str, default=None, handle_percents=True, **log_args):
|
115
117
|
prop = get_node_property(node, prop_id, download_from_hestia=True)
|
116
|
-
term =
|
118
|
+
term = prop.get('term')
|
117
119
|
units = (term or {}).get('units')
|
118
|
-
value =
|
120
|
+
value = (
|
121
|
+
prop['value'] if 'value' in prop else
|
122
|
+
node_property_lookup_value(model, node.get('term', {}), prop_id, **log_args)
|
123
|
+
)
|
119
124
|
return default if value is None else (value / 100 if units == '%' and handle_percents else value)
|
120
125
|
|
121
126
|
|
@@ -97,7 +97,8 @@ def related_cycles(site: dict, cycles_mapping: Optional[dict[str, dict]] = None)
|
|
97
97
|
|
98
98
|
|
99
99
|
def related_years(site: dict):
|
100
|
-
|
100
|
+
years = cached_value(site, CACHE_YEARS_KEY) or years_from_cycles(related_cycles(site))
|
101
|
+
return sorted(years) if years else []
|
101
102
|
|
102
103
|
|
103
104
|
def related_months(site: dict):
|
hestia_earth/models/version.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
VERSION = '0.70.
|
1
|
+
VERSION = '0.70.4'
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: hestia-earth-models
|
3
|
-
Version: 0.70.
|
3
|
+
Version: 0.70.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
|
@@ -11,7 +11,7 @@ Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
|
|
11
11
|
Classifier: Programming Language :: Python :: 3.6
|
12
12
|
Description-Content-Type: text/markdown
|
13
13
|
License-File: LICENSE
|
14
|
-
Requires-Dist: hestia-earth-schema==
|
14
|
+
Requires-Dist: hestia-earth-schema==32.*
|
15
15
|
Requires-Dist: hestia-earth-utils>=0.14.1
|
16
16
|
Requires-Dist: python-dateutil>=2.8.1
|
17
17
|
Requires-Dist: CurrencyConverter==0.16.8
|
@@ -4,7 +4,7 @@ hestia_earth/models/cache_sites.py,sha256=BOhLkkdVWLJ-4Z7kxfQ8swqrYgZ43sACn1uzxY
|
|
4
4
|
hestia_earth/models/log.py,sha256=eRuH86v7Thuw-QXdKqaqVmA_MkwnOCo0UBEwtuDq4Oc,3554
|
5
5
|
hestia_earth/models/preload_requests.py,sha256=vK_G1UzhNMhYy7ymnCtHUz_vv3cfApCSKqv29VREEBQ,1943
|
6
6
|
hestia_earth/models/requirements.py,sha256=eU4yT443fx7BnaokhrLB_PCizJI7Y6m4auyo8vQauNg,17363
|
7
|
-
hestia_earth/models/version.py,sha256=
|
7
|
+
hestia_earth/models/version.py,sha256=7q8eaZImIkwl8HS2xJTe4a8IOQPn1y4oCngs2Qu-BuM,19
|
8
8
|
hestia_earth/models/agribalyse2016/__init__.py,sha256=WvK0qCQbnYtg9oZxrACd1wGormZyXibPtpCnIQeDqbw,415
|
9
9
|
hestia_earth/models/agribalyse2016/fuelElectricity.py,sha256=1ngl8pdxeNhlVV8keAeWRwGorr_1uFXM9EoPUWx-uSc,4382
|
10
10
|
hestia_earth/models/agribalyse2016/machineryInfrastructureDepreciatedAmountPerCycle.py,sha256=queToXuzq0tQ9_XuUJ2pJgSywXmbt9uX3ZoIKgqkROM,2660
|
@@ -33,7 +33,7 @@ hestia_earth/models/cml2001Baseline/terrestrialAcidificationPotentialIncludingFa
|
|
33
33
|
hestia_earth/models/cml2001NonBaseline/__init__.py,sha256=vI8wp8Og_e8DiJqYYvp33YoI3t4ffAC31LWlnV20JTg,419
|
34
34
|
hestia_earth/models/cml2001NonBaseline/eutrophicationPotentialIncludingFateAverageEurope.py,sha256=lcgyRHY08KCBFPERJNqV4DYGEJCvyHBDnJXD0kEkVqM,1097
|
35
35
|
hestia_earth/models/cml2001NonBaseline/terrestrialAcidificationPotentialExcludingFate.py,sha256=xcrxfs9UoV_EWvV-XzMt35oPWCUsTzqg2SGA3j2MFIw,1091
|
36
|
-
hestia_earth/models/config/Cycle.json,sha256=
|
36
|
+
hestia_earth/models/config/Cycle.json,sha256=fJmIc9GK16Ob3m3Qv_jqD7Po5vB1C2R6hPJ9yDfEDCM,58937
|
37
37
|
hestia_earth/models/config/ImpactAssessment.json,sha256=R22Pa6Szl05s13xFGKmrVZ4EgKD4UyUrruxxVujsJt4,56201
|
38
38
|
hestia_earth/models/config/Site.json,sha256=vOjDsstMWe4i6PDDfpJ236Qb7gif5I0MMmscK1-LgKM,13866
|
39
39
|
hestia_earth/models/config/__init__.py,sha256=l1WqL7ezlank86ABP4zUia_hIvM9ba-sOE3z6wNrea8,2333
|
@@ -75,6 +75,7 @@ hestia_earth/models/cycle/post_checks/cache.py,sha256=UNWR3IxZyv7GvBUZOkdj1HqMDa
|
|
75
75
|
hestia_earth/models/cycle/post_checks/otherSites.py,sha256=lDiMPWduqpeYn5Z59AgcUH4ffiyLe5B6mg3tIe61hEs,694
|
76
76
|
hestia_earth/models/cycle/post_checks/site.py,sha256=Z6lWAG_R5vTL2tiD5EAHwz2j_bvn-51iG1dq60-62ec,551
|
77
77
|
hestia_earth/models/cycle/practice/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
78
|
+
hestia_earth/models/cycle/practice/landCover.py,sha256=QDXEaY3Rin9wsXEuoHoCeh7q_1fUM8UAWYYbRoeb-x0,5989
|
78
79
|
hestia_earth/models/cycle/practice/value.py,sha256=WtMLlJLX3O6K2V2EMNp0zgKprYD0iIVzCsYxhg6zWJ0,1773
|
79
80
|
hestia_earth/models/cycle/pre_checks/__init__.py,sha256=T8NfEXznq7Q1VUxqBOBP7Rz_DwoYvWYoYqe-Txznu24,352
|
80
81
|
hestia_earth/models/cycle/pre_checks/cache_sources.py,sha256=fbWmlI0q6z9iVF1YNUOwBl0GeEYDgszozl3NkTxx6GI,184
|
@@ -108,7 +109,7 @@ hestia_earth/models/edip2003/ozoneDepletionPotential.py,sha256=YkBct4eDUidGukaVd
|
|
108
109
|
hestia_earth/models/emepEea2019/__init__.py,sha256=l90-pWrqIzt1ap1WNk0gF4iZeF5_TSG62hE83bIi4rQ,412
|
109
110
|
hestia_earth/models/emepEea2019/co2ToAirFuelCombustion.py,sha256=ib_xzEbIg-iQwvW2L4BosD9lV6EYOXAiIs8gYhSD9GE,1431
|
110
111
|
hestia_earth/models/emepEea2019/n2OToAirFuelCombustionDirect.py,sha256=H4dgGqDuvYN4S7TRxYsX3hms1xMWr8clR2gkyyO8T18,1438
|
111
|
-
hestia_earth/models/emepEea2019/nh3ToAirExcreta.py,sha256=
|
112
|
+
hestia_earth/models/emepEea2019/nh3ToAirExcreta.py,sha256=DssSjl_Kug9jE5laqJs9X4xOdOrJBnsXSnk-uA_anyE,2153
|
112
113
|
hestia_earth/models/emepEea2019/nh3ToAirInorganicFertiliser.py,sha256=7G0_S0G6X9slTykxs6CDb68DvtXB7yfq1iSKg0ReXS8,6036
|
113
114
|
hestia_earth/models/emepEea2019/noxToAirFuelCombustion.py,sha256=2--8lI6C6WaYtd9LQe-WZnhvW1eUsjBVAgzT8jclcsc,1431
|
114
115
|
hestia_earth/models/emepEea2019/pm10ToAirAnimalHousing.py,sha256=7LhOEQokWMWEPspYSQO3PtsmWkygbVAonj_Nq6JAL6c,1384
|
@@ -144,9 +145,9 @@ hestia_earth/models/faostat2018/product/price.py,sha256=EdshQnQLYLnRawsDYEBKr1Ki
|
|
144
145
|
hestia_earth/models/frischknechtEtAl2000/__init__.py,sha256=Fixyy9UwoCGP5-MHyJu_ctS40SQ2imfvZo8a547029U,421
|
145
146
|
hestia_earth/models/frischknechtEtAl2000/ionisingRadiationKbqU235Eq.py,sha256=W2R5rjnorfWhderyDy3iGpcIZdL3rYvRh5wh0wlvI0k,4430
|
146
147
|
hestia_earth/models/geospatialDatabase/__init__.py,sha256=TH-FW3aoL7r1GquRChr7rde7uQonKQRDR00udG8tDrQ,957
|
147
|
-
hestia_earth/models/geospatialDatabase/altitude.py,sha256=
|
148
|
+
hestia_earth/models/geospatialDatabase/altitude.py,sha256=Y0XOZLnmfpEPh_fGnHdWDM190T1ZaC1yp-VH-90k9G4,1983
|
148
149
|
hestia_earth/models/geospatialDatabase/awareWaterBasinId.py,sha256=_4HFoZR5PQrEYZegMjj33rjUFR_kktt69D4J_moZXHo,1249
|
149
|
-
hestia_earth/models/geospatialDatabase/clayContent.py,sha256=
|
150
|
+
hestia_earth/models/geospatialDatabase/clayContent.py,sha256=Rre3QpoYXViJEZv8XqDdiC7_86LjYNt9DwQmhlLd0a4,3398
|
150
151
|
hestia_earth/models/geospatialDatabase/croppingIntensity.py,sha256=d1WIrxO4rFj5Oj-k8f1eaVIOR6sfke2CYH8lwtuE_BM,2565
|
151
152
|
hestia_earth/models/geospatialDatabase/drainageClass.py,sha256=CVagB2wxLnHgQQauDyYCJCfJw21OPB7Ry8BVyt2uPak,1883
|
152
153
|
hestia_earth/models/geospatialDatabase/ecoClimateZone.py,sha256=WBeaYmzer3CeviHnnfK0xIn_3inpkDKqxszFluz0xPQ,2658
|
@@ -164,7 +165,7 @@ hestia_earth/models/geospatialDatabase/precipitationAnnual.py,sha256=VMrz4z4FmA0
|
|
164
165
|
hestia_earth/models/geospatialDatabase/precipitationLongTermAnnualMean.py,sha256=wZ_QprRT9ILSNpiUhPdKtTERUsGofQT1kqUaHuJjDOs,2390
|
165
166
|
hestia_earth/models/geospatialDatabase/precipitationMonthly.py,sha256=jQ3XLN8Zh7q2LZgLmybzvwR0X2vdi6IDz301EUVbAmE,3261
|
166
167
|
hestia_earth/models/geospatialDatabase/region.py,sha256=55tjxaffUaQnJ_kqWd-eejhLMs-5N2CjUQd9FU1wWoU,1448
|
167
|
-
hestia_earth/models/geospatialDatabase/sandContent.py,sha256=
|
168
|
+
hestia_earth/models/geospatialDatabase/sandContent.py,sha256=qOMmL6MRMyVYm3PXy94Sp0ILm8iFicKB_7t57vHOyA8,3398
|
168
169
|
hestia_earth/models/geospatialDatabase/siltContent.py,sha256=rFUlQ3SlwCJFcMYQd5F6t3bnDMjcRilsXk2rShoa5Tk,3786
|
169
170
|
hestia_earth/models/geospatialDatabase/slope.py,sha256=g1SpuYks60injv2w-CMjESNfu8KM1JsiYnRT9XZfSuY,1859
|
170
171
|
hestia_earth/models/geospatialDatabase/slopeLength.py,sha256=6pGr1qR0EiiUKkeflpYut7eI6UsnXAzHDoHhAzXKFJk,1864
|
@@ -174,7 +175,7 @@ hestia_earth/models/geospatialDatabase/temperatureLongTermAnnualMean.py,sha256=y
|
|
174
175
|
hestia_earth/models/geospatialDatabase/temperatureMonthly.py,sha256=E2k2kkhVDtmeFEB4_AZhhq5od57lRDMWu6AqaurgqvQ,3194
|
175
176
|
hestia_earth/models/geospatialDatabase/totalNitrogenPerKgSoil.py,sha256=DrjiPyakM1SJ1XO-arhvjLDj2qb3M-i58gJ1kFFM6kI,2821
|
176
177
|
hestia_earth/models/geospatialDatabase/totalPhosphorusPerKgSoil.py,sha256=5oasLMYgfnPwSse0D8EEe_pV57AMusac853BgVSUh5E,2070
|
177
|
-
hestia_earth/models/geospatialDatabase/utils.py,sha256=
|
178
|
+
hestia_earth/models/geospatialDatabase/utils.py,sha256=IYLJbnGJSHpsb1eoKR9usgaWctr44fmPN7WmR4ydsjw,6714
|
178
179
|
hestia_earth/models/geospatialDatabase/waterDepth.py,sha256=Xy2UxwAJrgdOkcw59NetEHMt5vgRYE6qg4fgXb1ptlU,1643
|
179
180
|
hestia_earth/models/globalCropWaterModel2008/__init__.py,sha256=vQxexzFCl2Uv2RiIJfcppkRi9RgzBsJ68yhVDK4GvAU,425
|
180
181
|
hestia_earth/models/globalCropWaterModel2008/rootingDepth.py,sha256=5HXiZHk5iFOhOIB-0OnatgJ4PHJVvV0gH47U3EvQ6Y0,4081
|
@@ -199,12 +200,12 @@ hestia_earth/models/hestia/flowingWater.py,sha256=Iy5PCWun7GMrr0zszd0zpp9lKADpXe
|
|
199
200
|
hestia_earth/models/hestia/freshWater.py,sha256=EHUWNFmgIqr9y7DTcn1_HcpJdI7WP1cv4LMrkpaf8zQ,1262
|
200
201
|
hestia_earth/models/hestia/inorganicFertiliser.py,sha256=SQv5X4vkgmvUIUV79dJ71Y9u2EW3T5Scu2GoTr3K0Yw,8930
|
201
202
|
hestia_earth/models/hestia/irrigatedTypeUnspecified.py,sha256=VdYzfYxcRzWv21qxRkDn9HBid7-Bt_CgIv4iyXJH03g,1929
|
202
|
-
hestia_earth/models/hestia/landCover.py,sha256=
|
203
|
+
hestia_earth/models/hestia/landCover.py,sha256=Bt7zQzp8gS0oL8ljsXLYPBG5cQzxOkFaJnKwrcTDlxQ,32360
|
203
204
|
hestia_earth/models/hestia/landTransformation100YearAverageDuringCycle.py,sha256=7KWgpAo2gILzsxdgnO8gI3tAf3tF0IhyGkneYI6PEDc,1018
|
204
205
|
hestia_earth/models/hestia/landTransformation20YearAverageDuringCycle.py,sha256=1StzrYhMsX-hdwBTeLnLMZWl5EEnCoEYpGPRkqy8a-A,1016
|
205
206
|
hestia_earth/models/hestia/liveAnimal.py,sha256=95HfqgFA_qRhdIeR2X5MJ9zzIm4nMHDvJ0BCnuTYe5Q,3860
|
206
207
|
hestia_earth/models/hestia/longFallowRatio.py,sha256=LkJaER1VNDI5351-oC8tru-LgiPK3sNMg0NhB5ic9RE,1690
|
207
|
-
hestia_earth/models/hestia/management.py,sha256=
|
208
|
+
hestia_earth/models/hestia/management.py,sha256=e1horZLE0th9hazG1sGod_yWs8Hk8FiHFYzJXLNTzFA,10975
|
208
209
|
hestia_earth/models/hestia/materialAndSubstrate.py,sha256=abmM_7FOY5yaNb2yZEm-ncI4wFFcbzaebtnG9XWEA6M,5130
|
209
210
|
hestia_earth/models/hestia/milkYield.py,sha256=__3AdxRTUTWwS_GsqxFpPGklmTnnpADiN0khlRCMAss,5541
|
210
211
|
hestia_earth/models/hestia/netPrimaryProduction.py,sha256=uU4AZ7X6tbtWgR5YClA_aLpYWtlivq9lPQGZgt3-qoQ,1856
|
@@ -289,12 +290,12 @@ hestia_earth/models/ipcc2019/ch4ToAirAquacultureSystems.py,sha256=q6yyEiYQhHJ2Vy
|
|
289
290
|
hestia_earth/models/ipcc2019/ch4ToAirEntericFermentation.py,sha256=8w78X5nJkPmoXuTy1WMxSGj-D5ubajNeqnyBknSqEtA,12477
|
290
291
|
hestia_earth/models/ipcc2019/ch4ToAirExcreta.py,sha256=UTTx7US4mGTGW9dX6OAgbhDSwtHfsbWJ5d0iF0TGMpE,6564
|
291
292
|
hestia_earth/models/ipcc2019/ch4ToAirFloodedRice.py,sha256=26WZtckmb7b3sbUN7hpshEdaSdvJpL3-Oer60III_KU,10225
|
292
|
-
hestia_earth/models/ipcc2019/ch4ToAirOrganicSoilCultivation.py,sha256=
|
293
|
+
hestia_earth/models/ipcc2019/ch4ToAirOrganicSoilCultivation.py,sha256=Asv-IafB12smWg4MALIbGlEHxHPdoE1qpwPHRkah4WU,9568
|
293
294
|
hestia_earth/models/ipcc2019/co2ToAirAboveGroundBiomassStockChange.py,sha256=YRNjJgi_aBKwi-nDd0b20w3ebQ33vNgdf4zCLyTFcBw,6516
|
294
295
|
hestia_earth/models/ipcc2019/co2ToAirBelowGroundBiomassStockChange.py,sha256=5HdFdHkvMdwmA4ppSqbrAoASQaSX-Znq7WZqAaekqjk,6564
|
295
296
|
hestia_earth/models/ipcc2019/co2ToAirCarbonStockChange_utils.py,sha256=pJCdb8hysUbG9t8lOB4Nd2xGdlac_6Tg74k2CMU078o,58533
|
296
297
|
hestia_earth/models/ipcc2019/co2ToAirLimeHydrolysis.py,sha256=X3-M4Mn3fdGsUR7ZGjBXXWrPFBGD1ipV8_4O94lB7Z8,2487
|
297
|
-
hestia_earth/models/ipcc2019/co2ToAirOrganicSoilCultivation.py,sha256=
|
298
|
+
hestia_earth/models/ipcc2019/co2ToAirOrganicSoilCultivation.py,sha256=e-hUmPMv_UxUM5otGkwToa8GheHzNbmYOlG9A8Lbw7M,7633
|
298
299
|
hestia_earth/models/ipcc2019/co2ToAirSoilOrganicCarbonStockChange.py,sha256=4aRBzNpDNSw20IKNzz7zOq28sorrJUB5gxmHemgOZT0,6576
|
299
300
|
hestia_earth/models/ipcc2019/co2ToAirUreaHydrolysis.py,sha256=3TXZa2zuj-Df54qAPz3CUcml5T3MpAvGH8vDPIGha_c,3738
|
300
301
|
hestia_earth/models/ipcc2019/croppingDuration.py,sha256=wgXzEHsl2demqzKnZK6Ak7UKUu_CVU41ZsmwxG2uiOg,3055
|
@@ -307,22 +308,22 @@ hestia_earth/models/ipcc2019/n2OToAirInorganicFertiliserDirect.py,sha256=vmUhlNG
|
|
307
308
|
hestia_earth/models/ipcc2019/n2OToAirInorganicFertiliserIndirect.py,sha256=ilc6D3cgmvmdkmPbdbxS-SzsG2RQRNKaQooxbeLl43w,3714
|
308
309
|
hestia_earth/models/ipcc2019/n2OToAirOrganicFertiliserDirect.py,sha256=Tq0lw-zGqA6S9ZWi2OTSWXA7nVp_STJeNT4X8Cra2rU,4358
|
309
310
|
hestia_earth/models/ipcc2019/n2OToAirOrganicFertiliserIndirect.py,sha256=g2ssg9GEH2ShuNtY4g4R5GUIHf85u1azx4c264Hdoag,3700
|
310
|
-
hestia_earth/models/ipcc2019/n2OToAirOrganicSoilCultivationDirect.py,sha256=
|
311
|
+
hestia_earth/models/ipcc2019/n2OToAirOrganicSoilCultivationDirect.py,sha256=msMxD6m1OuVLj5eXPzD3UA-trM_W185Oy1iSvuYZkPM,5976
|
311
312
|
hestia_earth/models/ipcc2019/nh3ToAirInorganicFertiliser.py,sha256=gvfv4VBHmEkppEMoHUIicAelYICdOjKxKBUw5f3meiQ,4480
|
312
313
|
hestia_earth/models/ipcc2019/nh3ToAirOrganicFertiliser.py,sha256=Oih-34cGl7AZ_sIYWXktOWrzmj3_onvk3EW5f8-7QKI,4152
|
313
314
|
hestia_earth/models/ipcc2019/nitrogenContent.py,sha256=YxlcDF0D9F79rYHTeuhl5kEtmb01UcspFInKi6I_zKM,7209
|
314
315
|
hestia_earth/models/ipcc2019/no3ToGroundwaterCropResidueDecomposition.py,sha256=8NOjbqJuQ-wnLz3bYmwaygSzKBdaF3N7hoELGNnO4YQ,3115
|
315
|
-
hestia_earth/models/ipcc2019/no3ToGroundwaterExcreta.py,sha256=
|
316
|
+
hestia_earth/models/ipcc2019/no3ToGroundwaterExcreta.py,sha256=kf8KzTALAQ_pRVNEfpAG-aM94UgP6Q9T47UrXfOp_go,4517
|
316
317
|
hestia_earth/models/ipcc2019/no3ToGroundwaterInorganicFertiliser.py,sha256=eyPfyIi8EqigOTsEA0BSyoUePyy_AjMlQNJ6Z8yyJ_Q,3413
|
317
318
|
hestia_earth/models/ipcc2019/no3ToGroundwaterOrganicFertiliser.py,sha256=px2SN-uaus2cftXzlsYCUAxLuon6BnDXmaFI9xhQrgU,3347
|
318
319
|
hestia_earth/models/ipcc2019/nonCo2EmissionsToAirNaturalVegetationBurning.py,sha256=vvq-GAzFtPw9BTKs7RnwRJwzZJDmU3vPVAzIC7WxrhM,34600
|
319
320
|
hestia_earth/models/ipcc2019/noxToAirInorganicFertiliser.py,sha256=fmmFgjtvOD2TrrLY03jYly_KvDnCsAXqhL_tmZQQt-A,4480
|
320
321
|
hestia_earth/models/ipcc2019/noxToAirOrganicFertiliser.py,sha256=9dx_MRTwJGxJRq6mj2EJQMdQ2w6j7lw0fQk0If_cIGc,4152
|
321
322
|
hestia_earth/models/ipcc2019/organicCarbonPerHa.py,sha256=D8Lph5clGjXb5F7sk-jlnqE30C2lokhqndpA0hUMwTk,7791
|
322
|
-
hestia_earth/models/ipcc2019/organicCarbonPerHa_tier_1.py,sha256=
|
323
|
-
hestia_earth/models/ipcc2019/organicCarbonPerHa_tier_2.py,sha256=
|
323
|
+
hestia_earth/models/ipcc2019/organicCarbonPerHa_tier_1.py,sha256=bG2djvq4_C1mxkuLIL2DNmNU1Fk8tTmPJfGnS85JVlQ,78565
|
324
|
+
hestia_earth/models/ipcc2019/organicCarbonPerHa_tier_2.py,sha256=5_AltohTyRMBT8dFdULOdTS79Ydpbb2CaYZGlYQEFQY,69244
|
324
325
|
hestia_earth/models/ipcc2019/organicCarbonPerHa_utils.py,sha256=s_F3fyHhPuqragrHxluqdK0GCGnEor17jGlGKue0UsA,9867
|
325
|
-
hestia_earth/models/ipcc2019/organicSoilCultivation_utils.py,sha256=
|
326
|
+
hestia_earth/models/ipcc2019/organicSoilCultivation_utils.py,sha256=mJCKYZxqk5vFknckjIjGw478BjZbvKC_xQ-zYpvJ8xM,5628
|
326
327
|
hestia_earth/models/ipcc2019/pastureGrass.py,sha256=_EwlAooSfrkcSy4rl_rk4PpeX1pcIiQcb7HE2lQkyn8,9847
|
327
328
|
hestia_earth/models/ipcc2019/pastureGrass_utils.py,sha256=KvjIQ3xwbq1rk3thHlkGgQaWKgh0hCkNnzC53JW9634,14178
|
328
329
|
hestia_earth/models/ipcc2019/utils.py,sha256=MSDMu15D9DnilFUgi4_6jYXC0FaKso3OODauGTMB6hs,6229
|
@@ -443,12 +444,12 @@ hestia_earth/models/linkedImpactAssessment/utils.py,sha256=S1zlux02gU2Lajrtoq-zQ
|
|
443
444
|
hestia_earth/models/mocking/__init__.py,sha256=9VX50c-grz-snfd-7MBS0KfF7AadtbKuj7kK6PqtsgE,687
|
444
445
|
hestia_earth/models/mocking/build_mock_search.py,sha256=p15ccEUmkmLp1RiGNznxMz3OFHbI8P1-29ExuohiQN8,1355
|
445
446
|
hestia_earth/models/mocking/mock_search.py,sha256=ccFe_WrI73JElFmxp4hPNLCX7eeU--lBC1JFR901KJY,1069
|
446
|
-
hestia_earth/models/mocking/search-results.json,sha256=
|
447
|
+
hestia_earth/models/mocking/search-results.json,sha256=F6U3nD8mxFGo1q8NNatlR0mkjOYL4kjvaN2eXLN_xH0,162465
|
447
448
|
hestia_earth/models/pooreNemecek2018/__init__.py,sha256=nPboL7ULJzL5nJD5q7q9VOZt_fxbKVm8fmn1Az5YkVY,417
|
448
449
|
hestia_earth/models/pooreNemecek2018/aboveGroundCropResidueTotal.py,sha256=Qt-mel4dkhK6N5uUOutNOinCTFjbjtGzITaaI0LvYc4,2396
|
449
450
|
hestia_earth/models/pooreNemecek2018/belowGroundCropResidue.py,sha256=JT0RybbvWVlo01FO8K0Yj41HrEaJT3Kj1xfayr2X-xw,2315
|
450
451
|
hestia_earth/models/pooreNemecek2018/ch4ToAirAquacultureSystems.py,sha256=k_dB5iwOg6swQWb4fvfMCZ1dm1PnRff8Rpm1aclKOqA,6517
|
451
|
-
hestia_earth/models/pooreNemecek2018/excretaKgN.py,sha256=
|
452
|
+
hestia_earth/models/pooreNemecek2018/excretaKgN.py,sha256=EKVQK_wfDGRvj3lsSYp4xCjVEobOVt04fNhiZZXXfDk,5956
|
452
453
|
hestia_earth/models/pooreNemecek2018/excretaKgVs.py,sha256=eIiiZPWjLya0ZOqiYXFKH10K693cAKFygP2p-WPcLyg,9278
|
453
454
|
hestia_earth/models/pooreNemecek2018/freshwaterWithdrawalsDuringCycle.py,sha256=QWWS9P_q_mPruvCYm4PJ0PNcYJJ8QS3WEV7HN-6MneY,3920
|
454
455
|
hestia_earth/models/pooreNemecek2018/landOccupationDuringCycle.py,sha256=gSUzPuzzLwQsBiX_Tgx6mWJ4pEB5qhlKoOtaEdmDGQ4,3431
|
@@ -590,7 +591,7 @@ hestia_earth/models/utils/animalProduct.py,sha256=M5IunAKGY6oZv3j1Ascl34ywyeLWAp
|
|
590
591
|
hestia_earth/models/utils/aquacultureManagement.py,sha256=dxrbC1Xf140cohxTbSw6TxLAnAASWTdNZwBBam4yQnw,171
|
591
592
|
hestia_earth/models/utils/array_builders.py,sha256=ko1pDZKaUudZqxOZ99vJamKAdoR6ND4ZmxVrYH6YjPc,19498
|
592
593
|
hestia_earth/models/utils/background_emissions.py,sha256=R0tCA63q1_2DaZ87oI7FFjZsxAZ4Zds3Rr4fDf9KhkM,1850
|
593
|
-
hestia_earth/models/utils/blank_node.py,sha256=
|
594
|
+
hestia_earth/models/utils/blank_node.py,sha256=KZizahEIqZafxJ_OXL0za7QILc4AledEnHDQoxyaNI8,55961
|
594
595
|
hestia_earth/models/utils/cache_sources.py,sha256=MBkrPpjwNiC4ApDjeYVHZjWBbpvAerXRDrMHpjasAZ0,377
|
595
596
|
hestia_earth/models/utils/completeness.py,sha256=iRG4uviOAQQ4T2Nr4LlelPVTS_F1felGZNJYxek_JG8,1239
|
596
597
|
hestia_earth/models/utils/constant.py,sha256=DmB3VVuoh7Pz2QDBJqiUG6yAML2i0fOy1BPuPHmhT1w,3442
|
@@ -602,7 +603,7 @@ hestia_earth/models/utils/cycle.py,sha256=Lx085Eonp2W7EOi9BSlLWqtwY0ocZ5F1KY9dDG
|
|
602
603
|
hestia_earth/models/utils/descriptive_stats.py,sha256=EMVwFvg2OnZgKRAfireAoWY2EbrSvqR0V0bK9B53p28,1583
|
603
604
|
hestia_earth/models/utils/ecoClimateZone.py,sha256=etsWsAQeYHCnDJJi-ezTrzjoaFILC1e3SMfSNsdRnPs,4241
|
604
605
|
hestia_earth/models/utils/emission.py,sha256=vzQQ4eKiC8KlmwFqT00lSV1V2dmTGMSzddOYNgFyka8,3636
|
605
|
-
hestia_earth/models/utils/excretaManagement.py,sha256=
|
606
|
+
hestia_earth/models/utils/excretaManagement.py,sha256=cez_Rm69n8CzXuoil0fhi8XSOIEh2yfJzYFzhf9T5EM,2257
|
606
607
|
hestia_earth/models/utils/feedipedia.py,sha256=mfGd3EaTQGh9aZaF9pxVJRH_vLEIqktwbwTKQWHv7hs,3967
|
607
608
|
hestia_earth/models/utils/fertiliser.py,sha256=DBO4OBNgnQJ0fCQMDkIk_ZGZX-uKGaTFZCEXfAnJciY,690
|
608
609
|
hestia_earth/models/utils/fuel.py,sha256=XzOELV3dn506PkMKjFQ_ZKVZInd2lL2x6PKdsa6Po4M,1429
|
@@ -621,8 +622,8 @@ hestia_earth/models/utils/pesticideAI.py,sha256=_mlhKnA1TxF-x39CPNnOGXk6754SoSQq
|
|
621
622
|
hestia_earth/models/utils/practice.py,sha256=GEu2G2yMPbcIHldOzgv5OFp8bQ1Jt9OFgj0c_0F_kUc,372
|
622
623
|
hestia_earth/models/utils/product.py,sha256=Oha4lMvediC1Lc5DksA6sAUT94Q1Cs9F4LFVe_uaqP4,11177
|
623
624
|
hestia_earth/models/utils/productivity.py,sha256=rTJX_nemxHpOcPN7jiM2hFHknoLUIW8y-hFxVxIkg70,593
|
624
|
-
hestia_earth/models/utils/property.py,sha256=
|
625
|
-
hestia_earth/models/utils/site.py,sha256=
|
625
|
+
hestia_earth/models/utils/property.py,sha256=oz3x-sJkNmORlDwb4o1q5I-azj0hteriUSZBP7S5idc,5390
|
626
|
+
hestia_earth/models/utils/site.py,sha256=88b30OI2rly_2YJTps7x4JrAg4TuoqlzcG5-w2F-J5c,4084
|
626
627
|
hestia_earth/models/utils/source.py,sha256=D_QlW7Ul_NV1iOucMNE3szT64b1RdSdecIEm6OukYhw,2459
|
627
628
|
hestia_earth/models/utils/stats.py,sha256=-0vvhSDAhp4ZYXD1l6sO2hdok8_HgUM6OjCSYGSTHqU,15291
|
628
629
|
hestia_earth/models/utils/temperature.py,sha256=ljlG4-yCgFFb6LRZweb18cZKLrr7K2mqd4E4Hz_D1f8,476
|
@@ -719,6 +720,7 @@ tests/models/cycle/post_checks/test_cache.py,sha256=5QD8Yk9HbDePHSIXOJUM_ptZCroO
|
|
719
720
|
tests/models/cycle/post_checks/test_otherSites.py,sha256=SHCA82MvWy-CsuquvLgmiwAhIKJQONIc07z51QH5RpQ,359
|
720
721
|
tests/models/cycle/post_checks/test_site.py,sha256=In0Q0Tw3w_hV8_uAnOcL_iS2FoI_75lsq7MdoWLa5js,621
|
721
722
|
tests/models/cycle/practice/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
723
|
+
tests/models/cycle/practice/test_landCover.py,sha256=3Fi-p0-ArgTbrBPnm02vikpFrInIFQuXx7VVpPtjmVI,955
|
722
724
|
tests/models/cycle/practice/test_value.py,sha256=sYPoTkllrEt2oB92uA2q37FFtOjSX49749Nv1pUvqdw,1315
|
723
725
|
tests/models/cycle/pre_checks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
724
726
|
tests/models/cycle/pre_checks/test_otherSites.py,sha256=IEWvG2hwmladHctZUy6jTg01ZnCvWJUtPgD4GHKcumQ,502
|
@@ -834,7 +836,7 @@ tests/models/hestia/test_flowingWater.py,sha256=0-70Iyr0HKQHHC5jFEF9LUQQZ23spOo5
|
|
834
836
|
tests/models/hestia/test_freshWater.py,sha256=v2UD69csKrniKP3MXkOEHxQeE6O3-lvIViCvLA7Zgws,984
|
835
837
|
tests/models/hestia/test_inorganicFertiliser.py,sha256=v2Zs1Ig-ChOaq9gXuurcBt12izkH2bRUUuzW6rh3rqQ,643
|
836
838
|
tests/models/hestia/test_irrigatedTypeUnspecified.py,sha256=bluZADFagxfXW4QyI0CIJzG97D2V33w333Z9Vwjqo0M,2015
|
837
|
-
tests/models/hestia/test_landCover.py,sha256=
|
839
|
+
tests/models/hestia/test_landCover.py,sha256=XwzHCbJQt-jBpCnXcWLumTREyMNEEkUAuM2GViJl3iU,7492
|
838
840
|
tests/models/hestia/test_landTransformation100YearAverageDuringCycle.py,sha256=3qa4rWUFqP1VM5-vm_182rhiBYJDxPqJwWtBqJ5K028,956
|
839
841
|
tests/models/hestia/test_landTransformation20YearAverageDuringCycle.py,sha256=bUByojQuVeuCfko1_2YtNJi1PT9yktHlcbPi_p-MPvk,1001
|
840
842
|
tests/models/hestia/test_liveAnimal.py,sha256=3K9cL1fwr6LlBl1_D8zIaeCOuiExqkDEU7BXx1JK_dk,2139
|
@@ -914,15 +916,15 @@ tests/models/ipcc2019/test_belowGroundCropResidue.py,sha256=no71pfxgOhn_tEWc_Ewu
|
|
914
916
|
tests/models/ipcc2019/test_biomass_utils.py,sha256=I2q4pDGAD0aY_kpZCMPJoC-KbRYxdzY1rhr4xtJFWIA,3592
|
915
917
|
tests/models/ipcc2019/test_carbonContent.py,sha256=_GWF5nGy-PxiqBZ5V7W_sHMz75YRzmxr79R-sZZg7yk,4146
|
916
918
|
tests/models/ipcc2019/test_ch4ToAirAquacultureSystems.py,sha256=o7bHOS4JkwexRrDhLzpfr8nyYCctgRL32YZbam5RBrI,1891
|
917
|
-
tests/models/ipcc2019/test_ch4ToAirEntericFermentation.py,sha256=
|
919
|
+
tests/models/ipcc2019/test_ch4ToAirEntericFermentation.py,sha256=nmmxxJFX_VFOgvNxmj4q825vVEtEq-B61DVNo3inirs,8567
|
918
920
|
tests/models/ipcc2019/test_ch4ToAirExcreta.py,sha256=e58NXmBW2SNVLUqQO9A66Xq6jiGTyhdFZDZk51JApF8,2902
|
919
921
|
tests/models/ipcc2019/test_ch4ToAirFloodedRice.py,sha256=YRyxNaGPAgsCJBRXhwhEsZ6r44dawHMSN-Qmi-yS0xI,1025
|
920
|
-
tests/models/ipcc2019/test_ch4ToAirOrganicSoilCultivation.py,sha256=
|
922
|
+
tests/models/ipcc2019/test_ch4ToAirOrganicSoilCultivation.py,sha256=7AzKbCrNa3C2miC98ALCtlkIBMV12cOTSIvxxHjLSgw,1759
|
921
923
|
tests/models/ipcc2019/test_co2ToAirAboveGroundBiomassStockChange.py,sha256=1lei99xqneCU3a_2fOTcnAmRKKN6_mYU7uOyfLhXqJ4,4546
|
922
924
|
tests/models/ipcc2019/test_co2ToAirBelowGroundBiomassStockChange.py,sha256=ZoxBDNmNXutv5MUfKzoASCeBTEavjRC75ZSI0irWSG0,4481
|
923
925
|
tests/models/ipcc2019/test_co2ToAirCarbonStockChange_utils.py,sha256=wCEtrbMl6zef8V-n_Ci_rtlQAlfuKm3khUVltr8eAcc,2173
|
924
926
|
tests/models/ipcc2019/test_co2ToAirLimeHydrolysis.py,sha256=r7QmCH0YURS41JZxH2mFAC0J29WqmdkKG9EoEgv27AA,1350
|
925
|
-
tests/models/ipcc2019/test_co2ToAirOrganicSoilCultivation.py,sha256=
|
927
|
+
tests/models/ipcc2019/test_co2ToAirOrganicSoilCultivation.py,sha256=w4MBn2bYwyiv001xEU2RI9Q8L2Eu9lFC0CoxBcOzkWU,1761
|
926
928
|
tests/models/ipcc2019/test_co2ToAirSoilOrganicCarbonStockChange.py,sha256=gPT_yyQBRoISSizW-7qE32VEeFXxsc55K3-3eZMJlOU,5688
|
927
929
|
tests/models/ipcc2019/test_co2ToAirUreaHydrolysis.py,sha256=MmtEME0xjsa3KojFk_fxOLK6RZM_6p5HIpY2DOFHVu4,1530
|
928
930
|
tests/models/ipcc2019/test_croppingDuration.py,sha256=1oRW1QaEwQvBadyVhaDi-jlkjuNqodyAinl88TdPmiY,1879
|
@@ -935,7 +937,7 @@ tests/models/ipcc2019/test_n2OToAirInorganicFertiliserDirect.py,sha256=uSdklDRTx
|
|
935
937
|
tests/models/ipcc2019/test_n2OToAirInorganicFertiliserIndirect.py,sha256=RnU8CkUCYBBO1bgJALnoVgjTHLL1L1sja2nsyeVA_cg,2113
|
936
938
|
tests/models/ipcc2019/test_n2OToAirOrganicFertiliserDirect.py,sha256=ofEcYrwvvXfoZHRWaaMtKMK2NbEtX_67laDeu_lDTXg,2714
|
937
939
|
tests/models/ipcc2019/test_n2OToAirOrganicFertiliserIndirect.py,sha256=hW84sTlhB8mKRSFJX_iQS4gYo74zCtY-9zr1VHLC5GU,2111
|
938
|
-
tests/models/ipcc2019/test_n2OToAirOrganicSoilCultivationDirect.py,sha256=
|
940
|
+
tests/models/ipcc2019/test_n2OToAirOrganicSoilCultivationDirect.py,sha256=VrBvbs9AVrRDwjGQAYfr_5rpB-fas0QQBGwQJBEax0o,1766
|
939
941
|
tests/models/ipcc2019/test_nh3ToAirInorganicFertiliser.py,sha256=xmRHSTmyh--EZX29Z5NHD4LqEZl7Lkc5HntBCXlIRHE,1537
|
940
942
|
tests/models/ipcc2019/test_nh3ToAirOrganicFertiliser.py,sha256=Z4a20I2UnZdzm6FqHnlHRXXVCY993_SHT7nG-zAhx-c,1104
|
941
943
|
tests/models/ipcc2019/test_nitrogenContent.py,sha256=rKl_05PCC0OSsAhG0cHJOqnt9LsCaFnRpJorkm1TShA,3704
|
@@ -947,7 +949,7 @@ tests/models/ipcc2019/test_nonCo2EmissionsToAirNaturalVegetationBurning.py,sha25
|
|
947
949
|
tests/models/ipcc2019/test_noxToAirInorganicFertiliser.py,sha256=NZBSBJLM_j2PEpHRON2ysgKNF8x5sHfQVoAKQdGsfzk,1537
|
948
950
|
tests/models/ipcc2019/test_noxToAirOrganicFertiliser.py,sha256=LR5pjV5vRbgSSQAw8kYRp_ij4CHInzgaDS6EggQuBiw,1104
|
949
951
|
tests/models/ipcc2019/test_organicCarbonPerHa.py,sha256=g_uOqzj6EiyvoAZRpd4PakMYQ7Vfn0QiDGLCTVz92A8,15607
|
950
|
-
tests/models/ipcc2019/test_organicCarbonPerHa_tier_1.py,sha256=
|
952
|
+
tests/models/ipcc2019/test_organicCarbonPerHa_tier_1.py,sha256=7vmjes9efXPCUcRDZ6HuW8CNFGXnbpmyfXdgBPGbZEE,20621
|
951
953
|
tests/models/ipcc2019/test_organicCarbonPerHa_tier_2.py,sha256=OKkISE_gcF1yrEHzHowk65MbDRdgy-ILdzGWIy6X8JU,5502
|
952
954
|
tests/models/ipcc2019/test_organicCarbonPerHa_utils.py,sha256=Zd2QlN_Q3k9djuByOH62A00tryVzlvNtsd46N79TTeU,1778
|
953
955
|
tests/models/ipcc2019/test_pastureGrass.py,sha256=6B8ZmuI1w4rA4wGduWx0l6e0BgGz8b2knTUIcT0GDOg,2725
|
@@ -1241,8 +1243,8 @@ tests/orchestrator/strategies/run/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeR
|
|
1241
1243
|
tests/orchestrator/strategies/run/test_add_blank_node_if_missing.py,sha256=K4xg4UAXfNhSaLyknKVPO7MGBF44Z_gD7CuZ_pe28gU,3512
|
1242
1244
|
tests/orchestrator/strategies/run/test_add_key_if_missing.py,sha256=hKwvk1ohcBVnQUCTiDhRW99J0xEa29BpwFi1KC0yWLE,329
|
1243
1245
|
tests/orchestrator/strategies/run/test_always.py,sha256=w5-Dhp6yLzgZGAeMRz3OrqZbbAed9gZ1O266a3z9k7w,134
|
1244
|
-
hestia_earth_models-0.70.
|
1245
|
-
hestia_earth_models-0.70.
|
1246
|
-
hestia_earth_models-0.70.
|
1247
|
-
hestia_earth_models-0.70.
|
1248
|
-
hestia_earth_models-0.70.
|
1246
|
+
hestia_earth_models-0.70.4.dist-info/LICENSE,sha256=TD25LoiRJsA5CPUNrcyt1PXlGcbUGFMAeZoBcfCrCNE,1154
|
1247
|
+
hestia_earth_models-0.70.4.dist-info/METADATA,sha256=HEELN8DDxe3Qa6j7Ach7OnNlGpjQnMIVXWkW6dUVyNo,4045
|
1248
|
+
hestia_earth_models-0.70.4.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
|
1249
|
+
hestia_earth_models-0.70.4.dist-info/top_level.txt,sha256=1dqA9TqpOLTEgpqa-YBsmbCmmNU1y56AtfFGEceZ2A0,19
|
1250
|
+
hestia_earth_models-0.70.4.dist-info/RECORD,,
|
@@ -0,0 +1,27 @@
|
|
1
|
+
import os
|
2
|
+
import json
|
3
|
+
import pytest
|
4
|
+
from unittest.mock import Mock, patch
|
5
|
+
|
6
|
+
from tests.utils import fixtures_path, fake_new_practice
|
7
|
+
from hestia_earth.models.cycle.practice.landCover import MODEL, MODEL_KEY, run
|
8
|
+
|
9
|
+
class_path = f"hestia_earth.models.{MODEL}.practice.{MODEL_KEY}"
|
10
|
+
fixtures_folder = os.path.join(fixtures_path, MODEL, 'practice', MODEL_KEY)
|
11
|
+
|
12
|
+
_folders = [d for d in os.listdir(fixtures_folder) if os.path.isdir(os.path.join(fixtures_folder, d))]
|
13
|
+
|
14
|
+
|
15
|
+
@pytest.mark.parametrize('folder', _folders)
|
16
|
+
@patch(f"{class_path}._new_practice", side_effect=fake_new_practice)
|
17
|
+
def test_run(mock_new_practice: Mock, folder: str):
|
18
|
+
fixture_path = os.path.join(fixtures_folder, folder)
|
19
|
+
|
20
|
+
with open(f"{fixture_path}/cycle.jsonld", encoding='utf-8') as f:
|
21
|
+
cycle = json.load(f)
|
22
|
+
|
23
|
+
with open(f"{fixture_path}/result.jsonld", encoding='utf-8') as f:
|
24
|
+
expected = json.load(f)
|
25
|
+
|
26
|
+
result = run(cycle)
|
27
|
+
assert result == expected, fixture_path
|
@@ -7,7 +7,8 @@ from tests.utils import fixtures_path, fake_new_management
|
|
7
7
|
from hestia_earth.models.faostat2018.utils import MODEL as FAOSTAT_MODEL
|
8
8
|
from hestia_earth.models.hestia.landCover import (
|
9
9
|
MODEL, MODEL_KEY, get_changes, _estimate_maximum_forest_change,
|
10
|
-
run, site_area_sum_to_100, _get_sums_of_crop_expansion, _get_sum_for_land_category, scale_values_to_one
|
10
|
+
run, site_area_sum_to_100, _get_sums_of_crop_expansion, _get_sum_for_land_category, scale_values_to_one,
|
11
|
+
_get_most_common_or_alphabetically_first
|
11
12
|
)
|
12
13
|
|
13
14
|
CLASS_PATH = f"hestia_earth.models.{MODEL}.{MODEL_KEY}"
|
@@ -42,6 +43,28 @@ BRAZIL_SITE = {
|
|
42
43
|
}
|
43
44
|
|
44
45
|
|
46
|
+
@pytest.mark.parametrize(
|
47
|
+
"terms,expected_output",
|
48
|
+
[
|
49
|
+
( # Only term
|
50
|
+
["Annual crops", "Annual crops"],
|
51
|
+
"Annual crops"
|
52
|
+
),
|
53
|
+
( # Most common
|
54
|
+
["Perennial crops", "Perennial crops", "Annual crops"],
|
55
|
+
"Perennial crops"
|
56
|
+
),
|
57
|
+
( # Tied frequency, Alphabetically first
|
58
|
+
["Perennial crops", "Perennial crops", "Annual crops", "Annual crops"],
|
59
|
+
"Annual crops"
|
60
|
+
)
|
61
|
+
]
|
62
|
+
)
|
63
|
+
def test_get_most_common_or_alphabetically_first(terms, expected_output):
|
64
|
+
actual_result = _get_most_common_or_alphabetically_first(terms)
|
65
|
+
assert actual_result == expected_output
|
66
|
+
|
67
|
+
|
45
68
|
def test_get_changes():
|
46
69
|
result, missing_values = get_changes(
|
47
70
|
country_id="GADM-AFG",
|
@@ -55,7 +55,7 @@ def test_should_run(mock_feed, mock_lookup_value, *args):
|
|
55
55
|
@patch(f"hestia_earth.models.{MODEL}.utils.get_milkYield_terms", return_value=[])
|
56
56
|
@patch("hestia_earth.models.utils.property.download_term", side_effect=fake_download_term)
|
57
57
|
# patch get_node_property to read value from lookups only
|
58
|
-
@patch('hestia_earth.models.utils.property.get_node_property', return_value=
|
58
|
+
@patch('hestia_earth.models.utils.property.get_node_property', return_value={})
|
59
59
|
@patch(f"{class_path}._new_emission", side_effect=fake_new_emission)
|
60
60
|
def test_run(*args):
|
61
61
|
with open(f"{fixtures_folder}/cycle.jsonld", encoding="utf-8") as f:
|
@@ -72,7 +72,7 @@ def test_run(*args):
|
|
72
72
|
@patch(f"hestia_earth.models.{MODEL}.utils.get_milkYield_terms", return_value=[])
|
73
73
|
@patch("hestia_earth.models.utils.property.download_term", side_effect=fake_download_term)
|
74
74
|
# patch get_node_property to read value from lookups only
|
75
|
-
@patch('hestia_earth.models.utils.property.get_node_property', return_value=
|
75
|
+
@patch('hestia_earth.models.utils.property.get_node_property', return_value={})
|
76
76
|
@patch(f"{class_path}._new_emission", side_effect=fake_new_emission)
|
77
77
|
def test_run_dairy(*args):
|
78
78
|
with open(f"{fixtures_folder}/dairy-buffalo-cows/cycle.jsonld", encoding="utf-8") as f:
|
@@ -21,7 +21,8 @@ PARAMS_SHOULD_RUN = [
|
|
21
21
|
("polar", False),
|
22
22
|
("mineral-soil", True),
|
23
23
|
("unknown-soil", False),
|
24
|
-
("unknown-land-occupation", False)
|
24
|
+
("unknown-land-occupation", False),
|
25
|
+
("unknown-eco-climate-zone", False) # Closes 1233
|
25
26
|
]
|
26
27
|
IDS_SHOULD_RUN = [p[0] for p in PARAMS_SHOULD_RUN]
|
27
28
|
|
@@ -22,7 +22,8 @@ PARAMS_SHOULD_RUN = [
|
|
22
22
|
("polar", False),
|
23
23
|
("mineral-soil", True),
|
24
24
|
("unknown-soil", False),
|
25
|
-
("unknown-land-occupation", False)
|
25
|
+
("unknown-land-occupation", False),
|
26
|
+
("unknown-eco-climate-zone", False) # Closes 1233
|
26
27
|
]
|
27
28
|
IDS_SHOULD_RUN = [p[0] for p in PARAMS_SHOULD_RUN]
|
28
29
|
|
@@ -21,7 +21,8 @@ PARAMS_SHOULD_RUN = [
|
|
21
21
|
("polar", False),
|
22
22
|
("mineral-soil", True),
|
23
23
|
("unknown-soil", False),
|
24
|
-
("unknown-land-occupation", False)
|
24
|
+
("unknown-land-occupation", False),
|
25
|
+
("unknown-eco-climate-zone", False) # Closes 1233
|
25
26
|
]
|
26
27
|
IDS_SHOULD_RUN = [p[0] for p in PARAMS_SHOULD_RUN]
|
27
28
|
|
@@ -196,13 +196,18 @@ MANAGEMENT_CATEGORY_PARAMS = [
|
|
196
196
|
("high-intensity-grazing", IpccLandUseCategory.GRASSLAND, IpccManagementCategory.HIGH_INTENSITY_GRAZING),
|
197
197
|
("improved-grassland", IpccLandUseCategory.GRASSLAND, IpccManagementCategory.IMPROVED_GRASSLAND),
|
198
198
|
("no-tillage", IpccLandUseCategory.ANNUAL_CROPS, IpccManagementCategory.NO_TILLAGE),
|
199
|
-
("nominally-managed", IpccLandUseCategory.GRASSLAND, IpccManagementCategory.NOMINALLY_MANAGED),
|
199
|
+
("nominally-managed/native-pasture", IpccLandUseCategory.GRASSLAND, IpccManagementCategory.NOMINALLY_MANAGED),
|
200
|
+
(
|
201
|
+
"nominally-managed/nominally-managed-pasture",
|
202
|
+
IpccLandUseCategory.GRASSLAND,
|
203
|
+
IpccManagementCategory.NOMINALLY_MANAGED
|
204
|
+
),
|
205
|
+
("nominally-managed/unknown", IpccLandUseCategory.GRASSLAND, IpccManagementCategory.NOMINALLY_MANAGED),
|
200
206
|
("not-relevant", IpccLandUseCategory.OTHER, IpccManagementCategory.NOT_RELEVANT),
|
201
207
|
("reduced-tillage", IpccLandUseCategory.ANNUAL_CROPS, IpccManagementCategory.REDUCED_TILLAGE),
|
202
208
|
("severely-degraded", IpccLandUseCategory.GRASSLAND, IpccManagementCategory.SEVERELY_DEGRADED),
|
203
209
|
("unknown/annual-crops", IpccLandUseCategory.ANNUAL_CROPS, IpccManagementCategory.UNKNOWN),
|
204
|
-
("unknown/annual-crops-wet", IpccLandUseCategory.ANNUAL_CROPS_WET, IpccManagementCategory.UNKNOWN)
|
205
|
-
("unknown/grassland", IpccLandUseCategory.GRASSLAND, IpccManagementCategory.UNKNOWN)
|
210
|
+
("unknown/annual-crops-wet", IpccLandUseCategory.ANNUAL_CROPS_WET, IpccManagementCategory.UNKNOWN)
|
206
211
|
]
|
207
212
|
|
208
213
|
|
File without changes
|
File without changes
|
File without changes
|