hestia-earth-models 0.74.10__py3-none-any.whl → 0.74.12__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 (410) hide show
  1. hestia_earth/models/agribalyse2016/fuelElectricity.py +1 -2
  2. hestia_earth/models/agribalyse2016/machineryInfrastructureDepreciatedAmountPerCycle.py +1 -7
  3. hestia_earth/models/akagiEtAl2011/utils.py +2 -6
  4. hestia_earth/models/aware/scarcityWeightedWaterUse.py +1 -4
  5. hestia_earth/models/aware2_0/scarcityWeightedWaterUse.py +1 -4
  6. hestia_earth/models/chaudharyBrooks2018/damageToTerrestrialEcosystemsLandOccupation.py +1 -4
  7. hestia_earth/models/chaudharyBrooks2018/damageToTerrestrialEcosystemsLandTransformation.py +1 -4
  8. hestia_earth/models/chaudharyBrooks2018/damageToTerrestrialEcosystemsTotalLandUseEffects.py +1 -4
  9. hestia_earth/models/cml2001Baseline/abioticResourceDepletionFossilFuels.py +1 -4
  10. hestia_earth/models/cml2001Baseline/abioticResourceDepletionMineralsAndMetals.py +1 -4
  11. hestia_earth/models/cml2001Baseline/eutrophicationPotentialExcludingFate.py +1 -4
  12. hestia_earth/models/cml2001Baseline/resourceUseEnergyDepletionDuringCycle.py +12 -10
  13. hestia_earth/models/cml2001Baseline/resourceUseMineralsAndMetalsDuringCycle.py +5 -5
  14. hestia_earth/models/cml2001Baseline/terrestrialAcidificationPotentialIncludingFateAverageEurope.py +1 -7
  15. hestia_earth/models/cml2001NonBaseline/eutrophicationPotentialIncludingFateAverageEurope.py +1 -7
  16. hestia_earth/models/cml2001NonBaseline/terrestrialAcidificationPotentialExcludingFate.py +1 -7
  17. hestia_earth/models/config/ImpactAssessment.json +12 -6
  18. hestia_earth/models/config/Site.json +16 -0
  19. hestia_earth/models/cycle/aboveGroundCropResidueTotal.py +1 -6
  20. hestia_earth/models/cycle/practice/landCover.py +9 -9
  21. hestia_earth/models/dammgen2009/noxToAirExcreta.py +1 -2
  22. hestia_earth/models/deRuijterEtAl2010/nh3ToAirCropResidueDecomposition.py +1 -2
  23. hestia_earth/models/ecoalimV9/cycle.py +1 -2
  24. hestia_earth/models/ecoalimV9/impact_assessment.py +10 -3
  25. hestia_earth/models/ecoinventV3/cycle.py +1 -2
  26. hestia_earth/models/ecoinventV3AndEmberClimate/cycle.py +1 -2
  27. hestia_earth/models/edip2003/ozoneDepletionPotential.py +1 -7
  28. hestia_earth/models/emepEea2019/utils.py +1 -2
  29. hestia_earth/models/emissionNotRelevant/__init__.py +2 -2
  30. hestia_earth/models/environmentalFootprintV3_1/environmentalFootprintSingleOverallScore.py +1 -4
  31. hestia_earth/models/environmentalFootprintV3_1/freshwaterEcotoxicityPotentialCtue.py +1 -7
  32. hestia_earth/models/environmentalFootprintV3_1/marineEutrophicationPotential.py +1 -7
  33. hestia_earth/models/environmentalFootprintV3_1/photochemicalOzoneCreationPotentialHumanHealthNmvocEq.py +1 -7
  34. hestia_earth/models/environmentalFootprintV3_1/scarcityWeightedWaterUse.py +1 -7
  35. hestia_earth/models/environmentalFootprintV3_1/soilQualityIndexLandOccupation.py +2 -7
  36. hestia_earth/models/environmentalFootprintV3_1/soilQualityIndexLandTransformation.py +2 -7
  37. hestia_earth/models/environmentalFootprintV3_1/soilQualityIndexTotalLandUseEffects.py +2 -7
  38. hestia_earth/models/epa2014/no3ToGroundwaterExcreta.py +1 -2
  39. hestia_earth/models/fantkeEtAl2016/damageToHumanHealthParticulateMatterFormation.py +2 -11
  40. hestia_earth/models/faostat2018/liveweightPerHead.py +11 -7
  41. hestia_earth/models/faostat2018/product/price.py +9 -5
  42. hestia_earth/models/faostat2018/seed.py +5 -12
  43. hestia_earth/models/faostat2018/utils.py +14 -6
  44. hestia_earth/models/frischknechtEtAl2000/ionisingRadiationKbqU235Eq.py +4 -8
  45. hestia_earth/models/geospatialDatabase/altitude.py +1 -2
  46. hestia_earth/models/geospatialDatabase/clayContent.py +1 -2
  47. hestia_earth/models/geospatialDatabase/croppingIntensity.py +1 -3
  48. hestia_earth/models/geospatialDatabase/drainageClass.py +1 -2
  49. hestia_earth/models/geospatialDatabase/ecoClimateZone.py +1 -2
  50. hestia_earth/models/geospatialDatabase/erodibility.py +1 -2
  51. hestia_earth/models/geospatialDatabase/heavyWinterPrecipitation.py +1 -2
  52. hestia_earth/models/geospatialDatabase/histosol.py +1 -2
  53. hestia_earth/models/geospatialDatabase/longFallowRatio.py +1 -3
  54. hestia_earth/models/geospatialDatabase/nutrientLossToAquaticEnvironment.py +1 -2
  55. hestia_earth/models/geospatialDatabase/organicCarbonPerKgSoil.py +1 -2
  56. hestia_earth/models/geospatialDatabase/potentialEvapotranspirationAnnual.py +1 -2
  57. hestia_earth/models/geospatialDatabase/potentialEvapotranspirationLongTermAnnualMean.py +1 -2
  58. hestia_earth/models/geospatialDatabase/potentialEvapotranspirationMonthly.py +1 -2
  59. hestia_earth/models/geospatialDatabase/precipitationAnnual.py +1 -2
  60. hestia_earth/models/geospatialDatabase/precipitationLongTermAnnualMean.py +1 -2
  61. hestia_earth/models/geospatialDatabase/precipitationMonthly.py +1 -2
  62. hestia_earth/models/geospatialDatabase/sandContent.py +1 -2
  63. hestia_earth/models/geospatialDatabase/siltContent.py +1 -2
  64. hestia_earth/models/geospatialDatabase/slope.py +1 -2
  65. hestia_earth/models/geospatialDatabase/slopeLength.py +1 -2
  66. hestia_earth/models/geospatialDatabase/soilPh.py +1 -2
  67. hestia_earth/models/geospatialDatabase/temperatureAnnual.py +1 -2
  68. hestia_earth/models/geospatialDatabase/temperatureLongTermAnnualMean.py +1 -2
  69. hestia_earth/models/geospatialDatabase/temperatureMonthly.py +1 -2
  70. hestia_earth/models/geospatialDatabase/totalNitrogenPerKgSoil.py +1 -2
  71. hestia_earth/models/geospatialDatabase/totalPhosphorusPerKgSoil.py +1 -2
  72. hestia_earth/models/geospatialDatabase/waterDepth.py +1 -2
  73. hestia_earth/models/hestia/aboveGroundCropResidue.py +1 -2
  74. hestia_earth/models/hestia/aboveGroundCropResidueTotal.py +1 -6
  75. hestia_earth/models/hestia/brackishWater.py +1 -2
  76. hestia_earth/models/hestia/cationExchangeCapacityPerKgSoil.py +1 -2
  77. hestia_earth/models/hestia/cropResidueManagement.py +1 -2
  78. hestia_earth/models/hestia/croppingIntensity.py +1 -7
  79. hestia_earth/models/hestia/default_emissions.py +3 -5
  80. hestia_earth/models/hestia/default_resourceUse.py +4 -11
  81. hestia_earth/models/hestia/excretaKgMass.py +9 -6
  82. hestia_earth/models/hestia/excretaKgN.py +8 -7
  83. hestia_earth/models/hestia/excretaKgVs.py +8 -7
  84. hestia_earth/models/hestia/feedConversionRatio/__init__.py +5 -7
  85. hestia_earth/models/hestia/flowingWater.py +1 -2
  86. hestia_earth/models/hestia/freshWater.py +1 -2
  87. hestia_earth/models/hestia/histosol.py +1 -2
  88. hestia_earth/models/hestia/inorganicFertiliser.py +2 -14
  89. hestia_earth/models/hestia/irrigatedTypeUnspecified.py +1 -7
  90. hestia_earth/models/hestia/landCover.py +192 -911
  91. hestia_earth/models/hestia/landCover_utils.py +769 -0
  92. hestia_earth/models/hestia/landOccupationDuringCycle.py +1 -2
  93. hestia_earth/models/hestia/liveAnimal.py +1 -3
  94. hestia_earth/models/hestia/longFallowRatio.py +1 -7
  95. hestia_earth/models/hestia/management.py +14 -8
  96. hestia_earth/models/hestia/materialAndSubstrate.py +1 -2
  97. hestia_earth/models/hestia/milkYield.py +2 -12
  98. hestia_earth/models/hestia/netPrimaryProduction.py +1 -2
  99. hestia_earth/models/hestia/organicCarbonPerHa.py +1 -2
  100. hestia_earth/models/hestia/pToSurfaceWaterAquacultureSystems.py +2 -4
  101. hestia_earth/models/hestia/pastureGrass.py +3 -4
  102. hestia_earth/models/hestia/pastureSystem.py +1 -7
  103. hestia_earth/models/hestia/potentialEvapotranspirationAnnual.py +1 -2
  104. hestia_earth/models/hestia/potentialEvapotranspirationMonthly.py +1 -2
  105. hestia_earth/models/hestia/precipitationAnnual.py +1 -2
  106. hestia_earth/models/hestia/precipitationMonthly.py +1 -2
  107. hestia_earth/models/hestia/rainfallAnnual.py +1 -2
  108. hestia_earth/models/hestia/rainfallMonthly.py +1 -2
  109. hestia_earth/models/hestia/residueBurnt.py +1 -7
  110. hestia_earth/models/hestia/residueIncorporated.py +1 -7
  111. hestia_earth/models/hestia/residueLeftOnField.py +1 -7
  112. hestia_earth/models/hestia/residueRemoved.py +3 -8
  113. hestia_earth/models/hestia/resourceUse_utils.py +4 -20
  114. hestia_earth/models/hestia/salineWater.py +1 -2
  115. hestia_earth/models/hestia/seed_emissions.py +5 -6
  116. hestia_earth/models/hestia/slope.py +44 -0
  117. hestia_earth/models/hestia/slopeLength.py +44 -0
  118. hestia_earth/models/hestia/soilMeasurement.py +1 -2
  119. hestia_earth/models/hestia/stockingDensityAnimalHousingAverage.py +1 -7
  120. hestia_earth/models/hestia/temperatureAnnual.py +1 -2
  121. hestia_earth/models/hestia/temperatureMonthly.py +1 -2
  122. hestia_earth/models/hestia/totalNitrogenPerKgSoil.py +1 -2
  123. hestia_earth/models/hestia/unknownPreSeasonWaterRegime.py +1 -7
  124. hestia_earth/models/hestia/utils.py +5 -5
  125. hestia_earth/models/hestia/waterDepth.py +1 -2
  126. hestia_earth/models/hestia/waterSalinity.py +1 -2
  127. hestia_earth/models/impact_assessment/emissions.py +8 -9
  128. hestia_earth/models/impact_assessment/post_checks/cycle.py +1 -1
  129. hestia_earth/models/impact_assessment/pre_checks/cycle.py +1 -1
  130. hestia_earth/models/ipcc2006/aboveGroundCropResidueRemoved.py +1 -3
  131. hestia_earth/models/ipcc2006/aboveGroundCropResidueTotal.py +1 -3
  132. hestia_earth/models/ipcc2006/belowGroundCropResidue.py +1 -3
  133. hestia_earth/models/ipcc2006/n2OToAirCropResidueDecompositionDirect.py +2 -6
  134. hestia_earth/models/ipcc2006/n2OToAirCropResidueDecompositionIndirect.py +1 -2
  135. hestia_earth/models/ipcc2006/n2OToAirExcretaDirect.py +1 -2
  136. hestia_earth/models/ipcc2006/n2OToAirExcretaIndirect.py +1 -2
  137. hestia_earth/models/ipcc2006/n2OToAirInorganicFertiliserDirect.py +1 -2
  138. hestia_earth/models/ipcc2006/n2OToAirInorganicFertiliserIndirect.py +1 -2
  139. hestia_earth/models/ipcc2006/n2OToAirOrganicFertiliserDirect.py +1 -2
  140. hestia_earth/models/ipcc2006/n2OToAirOrganicFertiliserIndirect.py +1 -2
  141. hestia_earth/models/ipcc2013ExcludingFeedbacks/gwp100.py +1 -7
  142. hestia_earth/models/ipcc2013IncludingFeedbacks/gwp100.py +1 -7
  143. hestia_earth/models/ipcc2019/aboveGroundBiomass.py +1 -1
  144. hestia_earth/models/ipcc2019/aboveGroundCropResidueTotal.py +1 -3
  145. hestia_earth/models/ipcc2019/animal/milkYieldPerAnimal.py +3 -7
  146. hestia_earth/models/ipcc2019/animal/pastureGrass.py +1 -2
  147. hestia_earth/models/ipcc2019/belowGroundBiomass.py +1 -1
  148. hestia_earth/models/ipcc2019/belowGroundCropResidue.py +1 -3
  149. hestia_earth/models/ipcc2019/biocharOrganicCarbonPerHa.py +1 -1
  150. hestia_earth/models/ipcc2019/ch4ToAirAquacultureSystems.py +2 -6
  151. hestia_earth/models/ipcc2019/ch4ToAirEntericFermentation.py +2 -12
  152. hestia_earth/models/ipcc2019/ch4ToAirExcreta.py +1 -2
  153. hestia_earth/models/ipcc2019/ch4ToAirFloodedRice.py +2 -10
  154. hestia_earth/models/ipcc2019/ch4ToAirOrganicSoilCultivation.py +1 -1
  155. hestia_earth/models/ipcc2019/co2ToAirAboveGroundBiomassStockChange.py +1 -1
  156. hestia_earth/models/ipcc2019/co2ToAirBelowGroundBiomassStockChange.py +1 -1
  157. hestia_earth/models/ipcc2019/co2ToAirBiocharStockChange.py +1 -1
  158. hestia_earth/models/ipcc2019/co2ToAirLimeHydrolysis.py +1 -2
  159. hestia_earth/models/ipcc2019/co2ToAirOrganicSoilCultivation.py +1 -1
  160. hestia_earth/models/ipcc2019/co2ToAirSoilOrganicCarbonStockChange.py +1 -1
  161. hestia_earth/models/ipcc2019/co2ToAirUreaHydrolysis.py +1 -2
  162. hestia_earth/models/ipcc2019/croppingDuration.py +1 -2
  163. hestia_earth/models/ipcc2019/n2OToAirCropResidueBurningDirect.py +1 -2
  164. hestia_earth/models/ipcc2019/n2OToAirCropResidueDecompositionDirect.py +2 -7
  165. hestia_earth/models/ipcc2019/n2OToAirExcretaDirect.py +1 -2
  166. hestia_earth/models/ipcc2019/n2OToAirInorganicFertiliserDirect.py +2 -7
  167. hestia_earth/models/ipcc2019/n2OToAirOrganicFertiliserDirect.py +2 -7
  168. hestia_earth/models/ipcc2019/n2OToAirOrganicSoilCultivationDirect.py +2 -7
  169. hestia_earth/models/ipcc2019/n2OToAir_indirect_emissions_utils.py +3 -9
  170. hestia_earth/models/ipcc2019/nh3ToAirInorganicFertiliser.py +2 -6
  171. hestia_earth/models/ipcc2019/nh3ToAirOrganicFertiliser.py +2 -6
  172. hestia_earth/models/ipcc2019/no3ToGroundwaterCropResidueDecomposition.py +2 -7
  173. hestia_earth/models/ipcc2019/no3ToGroundwaterExcreta.py +2 -8
  174. hestia_earth/models/ipcc2019/no3ToGroundwaterInorganicFertiliser.py +2 -7
  175. hestia_earth/models/ipcc2019/no3ToGroundwaterOrganicFertiliser.py +2 -7
  176. hestia_earth/models/ipcc2019/nonCo2EmissionsToAirNaturalVegetationBurning.py +1 -1
  177. hestia_earth/models/ipcc2019/noxToAirInorganicFertiliser.py +2 -6
  178. hestia_earth/models/ipcc2019/noxToAirOrganicFertiliser.py +2 -6
  179. hestia_earth/models/ipcc2019/organicCarbonPerHa_tier_1.py +1 -1
  180. hestia_earth/models/ipcc2019/organicCarbonPerHa_tier_2.py +1 -1
  181. hestia_earth/models/ipcc2019/pastureGrass.py +1 -2
  182. hestia_earth/models/ipcc2021/gwp100.py +2 -11
  183. hestia_earth/models/jarvisAndPain1994/n2ToAirExcreta.py +1 -2
  184. hestia_earth/models/koble2014/utils.py +1 -3
  185. hestia_earth/models/lcImpactAllEffects100Years/damageToFreshwaterEcosystemsClimateChange.py +1 -7
  186. hestia_earth/models/lcImpactAllEffects100Years/damageToFreshwaterEcosystemsFreshwaterEcotoxicity.py +1 -7
  187. hestia_earth/models/lcImpactAllEffects100Years/damageToFreshwaterEcosystemsFreshwaterEutrophication.py +1 -7
  188. hestia_earth/models/lcImpactAllEffects100Years/damageToFreshwaterEcosystemsPdfYear.py +1 -7
  189. hestia_earth/models/lcImpactAllEffects100Years/damageToFreshwaterEcosystemsWaterStress.py +1 -7
  190. hestia_earth/models/lcImpactAllEffects100Years/damageToHumanHealth.py +1 -7
  191. hestia_earth/models/lcImpactAllEffects100Years/damageToHumanHealthClimateChange.py +1 -7
  192. hestia_earth/models/lcImpactAllEffects100Years/damageToHumanHealthHumanToxicityCancerogenic.py +1 -7
  193. hestia_earth/models/lcImpactAllEffects100Years/damageToHumanHealthHumanToxicityNonCancerogenic.py +1 -7
  194. hestia_earth/models/lcImpactAllEffects100Years/damageToHumanHealthParticulateMatterFormation.py +1 -7
  195. hestia_earth/models/lcImpactAllEffects100Years/damageToHumanHealthPhotochemicalOzoneFormation.py +1 -7
  196. hestia_earth/models/lcImpactAllEffects100Years/damageToHumanHealthStratosphericOzoneDepletion.py +1 -7
  197. hestia_earth/models/lcImpactAllEffects100Years/damageToHumanHealthWaterStress.py +1 -7
  198. hestia_earth/models/lcImpactAllEffects100Years/damageToMarineEcosystemsMarineEcotoxicity.py +1 -7
  199. hestia_earth/models/lcImpactAllEffects100Years/damageToMarineEcosystemsMarineEutrophication.py +1 -7
  200. hestia_earth/models/lcImpactAllEffects100Years/damageToMarineEcosystemsPdfYear.py +1 -7
  201. hestia_earth/models/lcImpactAllEffects100Years/damageToTerrestrialEcosystemsClimateChange.py +1 -7
  202. hestia_earth/models/lcImpactAllEffects100Years/damageToTerrestrialEcosystemsPdfYear.py +1 -7
  203. hestia_earth/models/lcImpactAllEffects100Years/damageToTerrestrialEcosystemsPhotochemicalOzoneFormation.py +1 -7
  204. hestia_earth/models/lcImpactAllEffects100Years/damageToTerrestrialEcosystemsTerrestrialAcidification.py +1 -7
  205. hestia_earth/models/lcImpactAllEffects100Years/damageToTerrestrialEcosystemsTerrestrialEcotoxicity.py +1 -7
  206. hestia_earth/models/lcImpactAllEffectsInfinite/damageToFreshwaterEcosystemsClimateChange.py +1 -7
  207. hestia_earth/models/lcImpactAllEffectsInfinite/damageToFreshwaterEcosystemsFreshwaterEcotoxicity.py +1 -7
  208. hestia_earth/models/lcImpactAllEffectsInfinite/damageToFreshwaterEcosystemsFreshwaterEutrophication.py +1 -7
  209. hestia_earth/models/lcImpactAllEffectsInfinite/damageToFreshwaterEcosystemsPdfYear.py +1 -7
  210. hestia_earth/models/lcImpactAllEffectsInfinite/damageToFreshwaterEcosystemsWaterStress.py +1 -7
  211. hestia_earth/models/lcImpactAllEffectsInfinite/damageToHumanHealth.py +1 -7
  212. hestia_earth/models/lcImpactAllEffectsInfinite/damageToHumanHealthClimateChange.py +1 -7
  213. hestia_earth/models/lcImpactAllEffectsInfinite/damageToHumanHealthHumanToxicityCancerogenic.py +1 -7
  214. hestia_earth/models/lcImpactAllEffectsInfinite/damageToHumanHealthHumanToxicityNonCancerogenic.py +1 -7
  215. hestia_earth/models/lcImpactAllEffectsInfinite/damageToHumanHealthParticulateMatterFormation.py +1 -7
  216. hestia_earth/models/lcImpactAllEffectsInfinite/damageToHumanHealthPhotochemicalOzoneFormation.py +1 -7
  217. hestia_earth/models/lcImpactAllEffectsInfinite/damageToHumanHealthStratosphericOzoneDepletion.py +1 -7
  218. hestia_earth/models/lcImpactAllEffectsInfinite/damageToHumanHealthWaterStress.py +1 -7
  219. hestia_earth/models/lcImpactAllEffectsInfinite/damageToMarineEcosystemsMarineEcotoxicity.py +1 -7
  220. hestia_earth/models/lcImpactAllEffectsInfinite/damageToMarineEcosystemsMarineEutrophication.py +1 -7
  221. hestia_earth/models/lcImpactAllEffectsInfinite/damageToMarineEcosystemsPdfYear.py +1 -7
  222. hestia_earth/models/lcImpactAllEffectsInfinite/damageToTerrestrialEcosystemsClimateChange.py +1 -7
  223. hestia_earth/models/lcImpactAllEffectsInfinite/damageToTerrestrialEcosystemsPdfYear.py +1 -7
  224. hestia_earth/models/lcImpactAllEffectsInfinite/damageToTerrestrialEcosystemsPhotochemicalOzoneFormation.py +1 -7
  225. hestia_earth/models/lcImpactAllEffectsInfinite/damageToTerrestrialEcosystemsTerrestrialAcidification.py +1 -7
  226. hestia_earth/models/lcImpactAllEffectsInfinite/damageToTerrestrialEcosystemsTerrestrialEcotoxicity.py +1 -7
  227. hestia_earth/models/lcImpactCertainEffects100Years/damageToFreshwaterEcosystemsFreshwaterEcotoxicity.py +1 -7
  228. hestia_earth/models/lcImpactCertainEffects100Years/damageToFreshwaterEcosystemsFreshwaterEutrophication.py +1 -7
  229. hestia_earth/models/lcImpactCertainEffects100Years/damageToFreshwaterEcosystemsPdfYear.py +1 -7
  230. hestia_earth/models/lcImpactCertainEffects100Years/damageToFreshwaterEcosystemsWaterStress.py +1 -7
  231. hestia_earth/models/lcImpactCertainEffects100Years/damageToHumanHealth.py +1 -7
  232. hestia_earth/models/lcImpactCertainEffects100Years/damageToHumanHealthClimateChange.py +1 -7
  233. hestia_earth/models/lcImpactCertainEffects100Years/damageToHumanHealthHumanToxicityCancerogenic.py +1 -7
  234. hestia_earth/models/lcImpactCertainEffects100Years/damageToHumanHealthHumanToxicityNonCancerogenic.py +1 -7
  235. hestia_earth/models/lcImpactCertainEffects100Years/damageToHumanHealthParticulateMatterFormation.py +1 -7
  236. hestia_earth/models/lcImpactCertainEffects100Years/damageToHumanHealthPhotochemicalOzoneFormation.py +1 -7
  237. hestia_earth/models/lcImpactCertainEffects100Years/damageToHumanHealthStratosphericOzoneDepletion.py +1 -7
  238. hestia_earth/models/lcImpactCertainEffects100Years/damageToHumanHealthWaterStress.py +1 -7
  239. hestia_earth/models/lcImpactCertainEffects100Years/damageToMarineEcosystemsMarineEcotoxicity.py +1 -7
  240. hestia_earth/models/lcImpactCertainEffects100Years/damageToMarineEcosystemsMarineEutrophication.py +1 -7
  241. hestia_earth/models/lcImpactCertainEffects100Years/damageToMarineEcosystemsPdfYear.py +1 -7
  242. hestia_earth/models/lcImpactCertainEffects100Years/damageToTerrestrialEcosystemsClimateChange.py +1 -7
  243. hestia_earth/models/lcImpactCertainEffects100Years/damageToTerrestrialEcosystemsPdfYear.py +1 -7
  244. hestia_earth/models/lcImpactCertainEffects100Years/damageToTerrestrialEcosystemsPhotochemicalOzoneFormation.py +1 -7
  245. hestia_earth/models/lcImpactCertainEffects100Years/damageToTerrestrialEcosystemsTerrestrialAcidification.py +1 -7
  246. hestia_earth/models/lcImpactCertainEffects100Years/damageToTerrestrialEcosystemsTerrestrialEcotoxicity.py +1 -7
  247. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToFreshwaterEcosystemsFreshwaterEcotoxicity.py +1 -7
  248. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToFreshwaterEcosystemsFreshwaterEutrophication.py +1 -7
  249. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToFreshwaterEcosystemsPdfYear.py +1 -7
  250. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToFreshwaterEcosystemsWaterStress.py +1 -7
  251. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToHumanHealth.py +1 -7
  252. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToHumanHealthClimateChange.py +1 -7
  253. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToHumanHealthHumanToxicityCancerogenic.py +1 -7
  254. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToHumanHealthHumanToxicityNonCancerogenic.py +1 -7
  255. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToHumanHealthParticulateMatterFormation.py +1 -7
  256. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToHumanHealthPhotochemicalOzoneFormation.py +1 -7
  257. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToHumanHealthStratosphericOzoneDepletion.py +1 -7
  258. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToHumanHealthWaterStress.py +1 -7
  259. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToMarineEcosystemsMarineEcotoxicity.py +1 -7
  260. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToMarineEcosystemsMarineEutrophication.py +1 -7
  261. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToMarineEcosystemsPdfYear.py +1 -7
  262. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToTerrestrialEcosystemsClimateChange.py +1 -7
  263. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToTerrestrialEcosystemsPdfYear.py +1 -7
  264. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToTerrestrialEcosystemsPhotochemicalOzoneFormation.py +1 -7
  265. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToTerrestrialEcosystemsTerrestrialAcidification.py +1 -7
  266. hestia_earth/models/lcImpactCertainEffectsInfinite/damageToTerrestrialEcosystemsTerrestrialEcotoxicity.py +1 -7
  267. hestia_earth/models/linkedImpactAssessment/emissions.py +4 -6
  268. hestia_earth/models/linkedImpactAssessment/utils.py +4 -6
  269. hestia_earth/models/mocking/search-results.json +1 -1
  270. hestia_earth/models/pooreNemecek2018/aboveGroundCropResidueTotal.py +1 -3
  271. hestia_earth/models/pooreNemecek2018/belowGroundCropResidue.py +1 -3
  272. hestia_earth/models/pooreNemecek2018/ch4ToAirAquacultureSystems.py +1 -2
  273. hestia_earth/models/pooreNemecek2018/excretaKgN.py +3 -4
  274. hestia_earth/models/pooreNemecek2018/excretaKgVs.py +4 -4
  275. hestia_earth/models/pooreNemecek2018/freshwaterWithdrawalsDuringCycle.py +3 -9
  276. hestia_earth/models/pooreNemecek2018/landOccupationDuringCycle.py +3 -7
  277. hestia_earth/models/pooreNemecek2018/longFallowDuration.py +1 -7
  278. hestia_earth/models/pooreNemecek2018/n2OToAirAquacultureSystemsDirect.py +1 -2
  279. hestia_earth/models/pooreNemecek2018/n2ToAirAquacultureSystems.py +1 -2
  280. hestia_earth/models/pooreNemecek2018/nh3ToAirAquacultureSystems.py +1 -2
  281. hestia_earth/models/pooreNemecek2018/no3ToGroundwaterCropResidueDecomposition.py +1 -2
  282. hestia_earth/models/pooreNemecek2018/no3ToGroundwaterExcreta.py +1 -2
  283. hestia_earth/models/pooreNemecek2018/no3ToGroundwaterInorganicFertiliser.py +1 -2
  284. hestia_earth/models/pooreNemecek2018/no3ToGroundwaterOrganicFertiliser.py +1 -2
  285. hestia_earth/models/pooreNemecek2018/no3ToGroundwaterSoilFlux_utils.py +1 -2
  286. hestia_earth/models/pooreNemecek2018/noxToAirAquacultureSystems.py +1 -2
  287. hestia_earth/models/pooreNemecek2018/nurseryDensity.py +1 -7
  288. hestia_earth/models/pooreNemecek2018/nurseryDuration.py +1 -7
  289. hestia_earth/models/pooreNemecek2018/plantationDensity.py +1 -7
  290. hestia_earth/models/pooreNemecek2018/plantationLifespan.py +1 -7
  291. hestia_earth/models/pooreNemecek2018/plantationProductiveLifespan.py +1 -7
  292. hestia_earth/models/pooreNemecek2018/rotationDuration.py +1 -7
  293. hestia_earth/models/pooreNemecek2018/saplingsDepreciatedAmountPerCycle.py +1 -7
  294. hestia_earth/models/poschEtAl2008/terrestrialAcidificationPotentialAccumulatedExceedance.py +1 -7
  295. hestia_earth/models/poschEtAl2008/terrestrialEutrophicationPotentialAccumulatedExceedance.py +1 -7
  296. hestia_earth/models/recipe2016Egalitarian/damageToFreshwaterEcosystemsSpeciesYear.py +1 -7
  297. hestia_earth/models/recipe2016Egalitarian/damageToHumanHealth.py +1 -7
  298. hestia_earth/models/recipe2016Egalitarian/damageToMarineEcosystemsSpeciesYear.py +1 -7
  299. hestia_earth/models/recipe2016Egalitarian/damageToResourceAvailability.py +1 -7
  300. hestia_earth/models/recipe2016Egalitarian/damageToTerrestrialEcosystemsSpeciesYear.py +1 -7
  301. hestia_earth/models/recipe2016Egalitarian/ecosystemDamageOzoneFormation.py +1 -7
  302. hestia_earth/models/recipe2016Egalitarian/fossilResourceScarcity.py +1 -7
  303. hestia_earth/models/recipe2016Egalitarian/freshwaterAquaticEcotoxicityPotential14Dcbeq.py +1 -7
  304. hestia_earth/models/recipe2016Egalitarian/freshwaterEutrophicationPotential.py +1 -7
  305. hestia_earth/models/recipe2016Egalitarian/humanCarcinogenicToxicity.py +1 -7
  306. hestia_earth/models/recipe2016Egalitarian/humanDamageOzoneFormation.py +2 -10
  307. hestia_earth/models/recipe2016Egalitarian/humanNonCarcinogenicToxicity.py +1 -7
  308. hestia_earth/models/recipe2016Egalitarian/marineAquaticEcotoxicityPotential14Dcbeq.py +1 -7
  309. hestia_earth/models/recipe2016Egalitarian/marineEutrophicationPotential.py +1 -7
  310. hestia_earth/models/recipe2016Egalitarian/ozoneDepletionPotential.py +1 -7
  311. hestia_earth/models/recipe2016Egalitarian/terrestrialAcidificationPotential.py +1 -7
  312. hestia_earth/models/recipe2016Egalitarian/terrestrialEcotoxicityPotential14Dcbeq.py +1 -7
  313. hestia_earth/models/recipe2016Hierarchist/damageToFreshwaterEcosystemsSpeciesYear.py +1 -7
  314. hestia_earth/models/recipe2016Hierarchist/damageToHumanHealth.py +1 -7
  315. hestia_earth/models/recipe2016Hierarchist/damageToMarineEcosystemsSpeciesYear.py +1 -7
  316. hestia_earth/models/recipe2016Hierarchist/damageToResourceAvailability.py +1 -7
  317. hestia_earth/models/recipe2016Hierarchist/damageToTerrestrialEcosystemsSpeciesYear.py +1 -7
  318. hestia_earth/models/recipe2016Hierarchist/ecosystemDamageOzoneFormation.py +2 -10
  319. hestia_earth/models/recipe2016Hierarchist/fossilResourceScarcity.py +1 -7
  320. hestia_earth/models/recipe2016Hierarchist/freshwaterAquaticEcotoxicityPotential14Dcbeq.py +1 -7
  321. hestia_earth/models/recipe2016Hierarchist/freshwaterEutrophicationPotential.py +1 -7
  322. hestia_earth/models/recipe2016Hierarchist/humanCarcinogenicToxicity.py +1 -7
  323. hestia_earth/models/recipe2016Hierarchist/humanDamageOzoneFormation.py +2 -10
  324. hestia_earth/models/recipe2016Hierarchist/humanNonCarcinogenicToxicity.py +1 -7
  325. hestia_earth/models/recipe2016Hierarchist/marineAquaticEcotoxicityPotential14Dcbeq.py +1 -7
  326. hestia_earth/models/recipe2016Hierarchist/marineEutrophicationPotential.py +1 -7
  327. hestia_earth/models/recipe2016Hierarchist/ozoneDepletionPotential.py +1 -7
  328. hestia_earth/models/recipe2016Hierarchist/terrestrialAcidificationPotential.py +1 -7
  329. hestia_earth/models/recipe2016Hierarchist/terrestrialEcotoxicityPotential14Dcbeq.py +1 -7
  330. hestia_earth/models/recipe2016Individualist/damageToFreshwaterEcosystemsSpeciesYear.py +1 -7
  331. hestia_earth/models/recipe2016Individualist/damageToHumanHealth.py +1 -7
  332. hestia_earth/models/recipe2016Individualist/damageToMarineEcosystemsSpeciesYear.py +1 -7
  333. hestia_earth/models/recipe2016Individualist/damageToResourceAvailability.py +1 -7
  334. hestia_earth/models/recipe2016Individualist/damageToTerrestrialEcosystemsSpeciesYear.py +1 -7
  335. hestia_earth/models/recipe2016Individualist/ecosystemDamageOzoneFormation.py +2 -10
  336. hestia_earth/models/recipe2016Individualist/fossilResourceScarcity.py +1 -7
  337. hestia_earth/models/recipe2016Individualist/freshwaterAquaticEcotoxicityPotential14Dcbeq.py +1 -7
  338. hestia_earth/models/recipe2016Individualist/freshwaterEutrophicationPotential.py +1 -7
  339. hestia_earth/models/recipe2016Individualist/humanCarcinogenicToxicity.py +1 -7
  340. hestia_earth/models/recipe2016Individualist/humanDamageOzoneFormation.py +2 -10
  341. hestia_earth/models/recipe2016Individualist/humanNonCarcinogenicToxicity.py +1 -7
  342. hestia_earth/models/recipe2016Individualist/marineAquaticEcotoxicityPotential14Dcbeq.py +1 -7
  343. hestia_earth/models/recipe2016Individualist/marineEutrophicationPotential.py +1 -7
  344. hestia_earth/models/recipe2016Individualist/ozoneDepletionPotential.py +1 -7
  345. hestia_earth/models/recipe2016Individualist/terrestrialAcidificationPotential.py +1 -7
  346. hestia_earth/models/recipe2016Individualist/terrestrialEcotoxicityPotential14Dcbeq.py +1 -7
  347. hestia_earth/models/resourceUseNotRelevant/__init__.py +2 -8
  348. hestia_earth/models/schererPfister2015/nErosionSoilFlux.py +1 -2
  349. hestia_earth/models/schererPfister2015/pErosionSoilFlux.py +1 -2
  350. hestia_earth/models/schererPfister2015/pToDrainageWaterSoilFlux.py +1 -2
  351. hestia_earth/models/schererPfister2015/pToGroundwaterSoilFlux.py +1 -2
  352. hestia_earth/models/schererPfister2015/pToSurfaceWaterSoilFlux.py +1 -2
  353. hestia_earth/models/schmidt2007/ch4ToAirWasteTreatment.py +1 -2
  354. hestia_earth/models/schmidt2007/h2SToAirWasteTreatment.py +1 -2
  355. hestia_earth/models/schmidt2007/n2OToAirWasteTreatmentDirect.py +1 -2
  356. hestia_earth/models/schmidt2007/nh3ToAirWasteTreatment.py +1 -2
  357. hestia_earth/models/site/grouped_measurement.py +2 -3
  358. hestia_earth/models/stehfestBouwman2006/n2OToAirCropResidueDecompositionDirect.py +1 -2
  359. hestia_earth/models/stehfestBouwman2006/n2OToAirExcretaDirect.py +1 -2
  360. hestia_earth/models/stehfestBouwman2006/n2OToAirInorganicFertiliserDirect.py +1 -2
  361. hestia_earth/models/stehfestBouwman2006/n2OToAirOrganicFertiliserDirect.py +1 -2
  362. hestia_earth/models/stehfestBouwman2006/n2OToAirSoilFlux_utils.py +1 -2
  363. hestia_earth/models/stehfestBouwman2006/noxToAirCropResidueDecomposition.py +1 -2
  364. hestia_earth/models/stehfestBouwman2006/noxToAirExcreta.py +1 -2
  365. hestia_earth/models/stehfestBouwman2006/noxToAirInorganicFertiliser.py +1 -2
  366. hestia_earth/models/stehfestBouwman2006/noxToAirOrganicFertiliser.py +1 -2
  367. hestia_earth/models/stehfestBouwman2006/noxToAirSoilFlux_utils.py +1 -2
  368. hestia_earth/models/stehfestBouwman2006GisImplementation/noxToAirCropResidueDecomposition.py +1 -2
  369. hestia_earth/models/stehfestBouwman2006GisImplementation/noxToAirExcreta.py +1 -2
  370. hestia_earth/models/stehfestBouwman2006GisImplementation/noxToAirInorganicFertiliser.py +1 -2
  371. hestia_earth/models/stehfestBouwman2006GisImplementation/noxToAirOrganicFertiliser.py +1 -2
  372. hestia_earth/models/stehfestBouwman2006GisImplementation/noxToAirSoilFlux_utils.py +1 -2
  373. hestia_earth/models/transformation/input/excreta.py +7 -5
  374. hestia_earth/models/transformation/product/excreta.py +4 -4
  375. hestia_earth/models/usetoxV2/freshwaterEcotoxicityPotentialCtue.py +1 -7
  376. hestia_earth/models/utils/__init__.py +26 -7
  377. hestia_earth/models/utils/background_emissions.py +3 -3
  378. hestia_earth/models/utils/blank_node.py +31 -12
  379. hestia_earth/models/utils/emission.py +24 -10
  380. hestia_earth/models/utils/indicator.py +28 -13
  381. hestia_earth/models/utils/input.py +22 -5
  382. hestia_earth/models/utils/management.py +18 -4
  383. hestia_earth/models/utils/measurement.py +14 -6
  384. hestia_earth/models/utils/practice.py +24 -4
  385. hestia_earth/models/utils/product.py +32 -14
  386. hestia_earth/models/version.py +1 -1
  387. hestia_earth/models/webbEtAl2012AndSintermannEtAl2012/nh3ToAirOrganicFertiliser.py +1 -2
  388. hestia_earth/orchestrator/models/__init__.py +22 -11
  389. {hestia_earth_models-0.74.10.dist-info → hestia_earth_models-0.74.12.dist-info}/METADATA +2 -2
  390. {hestia_earth_models-0.74.10.dist-info → hestia_earth_models-0.74.12.dist-info}/RECORD +410 -404
  391. tests/models/cml2001Baseline/test_abioticResourceDepletionFossilFuels.py +4 -9
  392. tests/models/cml2001Baseline/test_abioticResourceDepletionMineralsAndMetals.py +4 -9
  393. tests/models/environmentalFootprintV3_1/test_environmentalFootprintSingleOverallScore.py +4 -9
  394. tests/models/environmentalFootprintV3_1/test_marineEutrophicationPotential.py +1 -7
  395. tests/models/environmentalFootprintV3_1/test_scarcityWeightedWaterUse.py +2 -8
  396. tests/models/environmentalFootprintV3_1/test_soilQualityIndexLandTransformation.py +3 -13
  397. tests/models/hestia/test_default_emissions.py +2 -2
  398. tests/models/hestia/test_default_resourceUse.py +3 -3
  399. tests/models/hestia/test_landCover.py +42 -295
  400. tests/models/hestia/test_landCover_utils.py +233 -0
  401. tests/models/hestia/test_slope.py +23 -0
  402. tests/models/hestia/test_slopeLength.py +23 -0
  403. tests/models/ipcc2019/test_no3ToGroundwaterExcreta.py +1 -0
  404. tests/models/poschEtAl2008/test_terrestrialAcidificationPotentialAccumulatedExceedance.py +4 -9
  405. tests/models/poschEtAl2008/test_terrestrialEutrophicationPotentialAccumulatedExceedance.py +4 -9
  406. tests/models/utils/test_indicator.py +6 -4
  407. tests/models/utils/test_measurement.py +7 -5
  408. {hestia_earth_models-0.74.10.dist-info → hestia_earth_models-0.74.12.dist-info}/LICENSE +0 -0
  409. {hestia_earth_models-0.74.10.dist-info → hestia_earth_models-0.74.12.dist-info}/WHEEL +0 -0
  410. {hestia_earth_models-0.74.10.dist-info → hestia_earth_models-0.74.12.dist-info}/top_level.txt +0 -0
@@ -1,9 +1,9 @@
1
1
  from functools import reduce
2
2
  from hestia_earth.schema import TermTermType
3
- from hestia_earth.utils.tools import non_empty_list
3
+ from hestia_earth.utils.tools import non_empty_list, omit
4
4
  from hestia_earth.utils.date import DAY
5
5
 
6
- from hestia_earth.models.utils import _omit, first_day_of_month, last_day_of_month
6
+ from hestia_earth.models.utils import first_day_of_month, last_day_of_month
7
7
  from hestia_earth.models.utils.term import get_lookup_value
8
8
  from hestia_earth.models.utils.measurement import _new_measurement, measurement_value, has_all_months
9
9
  from . import MODEL
@@ -33,7 +33,7 @@ LAND_USE_TERMS_FOR_TRANSFORMATION = {
33
33
  ANNUAL_CROPLAND: ("annualCropland", "Annual cropland"),
34
34
  PERMANENT_CROPLAND: ("permanentCropland", "Permanent cropland"),
35
35
  PERMANENT_PASTURE: ("permanentPasture", "Permanent pasture"),
36
- OTHER_LAND: ("otherLand", OTHER_LAND) # Not used yet
36
+ OTHER_LAND: ("otherLand", OTHER_LAND)
37
37
  }
38
38
 
39
39
 
@@ -63,8 +63,8 @@ def _value_func(data: dict, apply_func, key: str = 'value'):
63
63
 
64
64
 
65
65
  def copy_measurement(term_id: str, data: dict):
66
- measurement = _new_measurement(term_id, MODEL)
67
- return _omit(data, ['description', 'method']) | measurement
66
+ measurement = _new_measurement(term=term_id, model=MODEL)
67
+ return omit(data, ['description', 'method']) | measurement
68
68
 
69
69
 
70
70
  def slice_by_year(term_id: str, dates: list, values: list):
@@ -25,8 +25,7 @@ SITE_TYPE_TO_DEPTH = {
25
25
 
26
26
 
27
27
  def _measurement(site: dict, value: float):
28
- data = _new_measurement(TERM_ID, MODEL)
29
- data['value'] = [value]
28
+ data = _new_measurement(term=TERM_ID, model=MODEL, value=value)
30
29
  data['methodClassification'] = MeasurementMethodClassification.MODELLED_USING_OTHER_MEASUREMENTS.value
31
30
  return data | get_source(site, BIBLIO_TITLE)
32
31
 
@@ -52,8 +52,7 @@ _DEFAULT_SALINITY = {
52
52
 
53
53
 
54
54
  def _measurement(value: float, start_date: str = None, end_date: str = None):
55
- data = _new_measurement(TERM_ID, MODEL)
56
- data['value'] = [value]
55
+ data = _new_measurement(term=TERM_ID, model=MODEL, value=value)
57
56
  if start_date:
58
57
  data['startDate'] = start_date
59
58
  if end_date:
@@ -1,8 +1,7 @@
1
- from hestia_earth.utils.tools import list_sum
1
+ from hestia_earth.utils.tools import list_sum, pick
2
2
  from hestia_earth.utils.emission import cycle_emissions_in_system_boundary
3
3
 
4
4
  from hestia_earth.models.log import logRequirements, logShouldRun
5
- from hestia_earth.models.utils import _include
6
5
  from hestia_earth.models.utils.impact_assessment import get_product, convert_value_from_cycle
7
6
  from hestia_earth.models.utils.indicator import _new_indicator
8
7
  from . import MODEL
@@ -39,14 +38,14 @@ def _indicator(impact_assessment: dict, product: dict):
39
38
  impact_assessment, product, list_sum(emission.get('value', [0])), model=MODEL, term_id=term_id
40
39
  )
41
40
 
42
- indicator = _new_indicator(emission.get('term', {}), emission.get('methodModel'))
43
- indicator['value'] = value
41
+ indicator = _new_indicator(
42
+ term=emission.get('term', {}),
43
+ model=emission.get('methodModel'),
44
+ value=value,
45
+ inputs=emission['inputs'] if len(emission.get('inputs', [])) else None
46
+ )
44
47
  indicator['methodTier'] = emission.get('methodTier')
45
-
46
- if len(emission.get('inputs', [])):
47
- indicator['inputs'] = emission['inputs']
48
-
49
- return indicator | _include(emission, ['animals', 'operation', 'transformation', 'country', 'key'])
48
+ return indicator | pick(emission, ['animals', 'operation', 'transformation', 'country', 'key'])
50
49
  return run
51
50
 
52
51
 
@@ -25,4 +25,4 @@ def _should_run(impact: dict):
25
25
  return run
26
26
 
27
27
 
28
- def run(impact: dict): return {**impact, **({MODEL_KEY: _run(impact)} if _should_run(impact) else {})}
28
+ def run(impact: dict): return impact | ({MODEL_KEY: _run(impact)} if _should_run(impact) else {})
@@ -37,4 +37,4 @@ def _should_run(impact: dict):
37
37
  return run
38
38
 
39
39
 
40
- def run(impact: dict): return {**impact, **({MODEL_KEY: _run(impact)} if _should_run(impact) else {})}
40
+ def run(impact: dict): return impact | ({MODEL_KEY: _run(impact)} if _should_run(impact) else {})
@@ -31,9 +31,7 @@ TERM_ID = 'aboveGroundCropResidueRemoved'
31
31
  PROPERTY_KEY = 'dryMatter'
32
32
 
33
33
 
34
- def _product(value: float):
35
- product = _new_product(TERM_ID, value, MODEL)
36
- return product
34
+ def _product(value: float = None): return _new_product(term=TERM_ID, model=MODEL, value=value)
37
35
 
38
36
 
39
37
  def _get_value(product: dict, product_dm_property: dict):
@@ -34,9 +34,7 @@ TERM_ID = 'aboveGroundCropResidueTotal'
34
34
  PROPERTY_KEY = 'dryMatter'
35
35
 
36
36
 
37
- def _product(value: float):
38
- product = _new_product(TERM_ID, value, MODEL)
39
- return product
37
+ def _product(value: float = None): return _new_product(term=TERM_ID, model=MODEL, value=value)
40
38
 
41
39
 
42
40
  def _get_value_dm(product: dict, dm_percent: float):
@@ -33,9 +33,7 @@ TERM_ID = 'belowGroundCropResidue'
33
33
  PROPERTY_KEY = 'dryMatter'
34
34
 
35
35
 
36
- def _product(value: float):
37
- product = _new_product(TERM_ID, value, MODEL)
38
- return product
36
+ def _product(value: float = None): return _new_product(term=TERM_ID, model=MODEL, value=value)
39
37
 
40
38
 
41
39
  def _get_value_dm(product: dict, dm_percent: float):
@@ -1,4 +1,4 @@
1
- from hestia_earth.schema import EmissionMethodTier, EmissionStatsDefinition, TermTermType
1
+ from hestia_earth.schema import EmissionMethodTier, TermTermType
2
2
 
3
3
  from hestia_earth.models.log import logRequirements, logShouldRun, debugValues, log_as_table
4
4
  from hestia_earth.models.utils.constant import Units, get_atomic_conversion
@@ -40,12 +40,8 @@ TIER = EmissionMethodTier.TIER_1.value
40
40
 
41
41
 
42
42
  def _emission(value: float, min: float, max: float):
43
- emission = _new_emission(TERM_ID, MODEL)
44
- emission['value'] = [value]
45
- emission['min'] = [min]
46
- emission['max'] = [max]
43
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value, min=min, max=max)
47
44
  emission['methodTier'] = TIER
48
- emission['statsDefinition'] = EmissionStatsDefinition.MODELLED.value
49
45
  return emission
50
46
 
51
47
 
@@ -31,8 +31,7 @@ NOX_TERM_ID = 'noxToAirCropResidueDecomposition'
31
31
 
32
32
 
33
33
  def _emission(value: float):
34
- emission = _new_emission(TERM_ID, MODEL)
35
- emission['value'] = [value]
34
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value)
36
35
  emission['methodTier'] = TIER
37
36
  return emission
38
37
 
@@ -32,8 +32,7 @@ TIER = EmissionMethodTier.TIER_1.value
32
32
 
33
33
 
34
34
  def _emission(value: float):
35
- emission = _new_emission(TERM_ID, MODEL)
36
- emission['value'] = [value]
35
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value)
37
36
  emission['methodTier'] = TIER
38
37
  return emission
39
38
 
@@ -31,8 +31,7 @@ NOX_TERM_ID = 'noxToAirExcreta'
31
31
 
32
32
 
33
33
  def _emission(value: float):
34
- emission = _new_emission(TERM_ID, MODEL)
35
- emission['value'] = [value]
34
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value)
36
35
  emission['methodTier'] = TIER
37
36
  return emission
38
37
 
@@ -44,8 +44,7 @@ TIER = EmissionMethodTier.TIER_1.value
44
44
 
45
45
 
46
46
  def _emission(value: float):
47
- emission = _new_emission(TERM_ID, MODEL)
48
- emission['value'] = [value]
47
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value)
49
48
  emission['methodTier'] = TIER
50
49
  return emission
51
50
 
@@ -50,8 +50,7 @@ NOX_TERM_ID = 'noxToAirInorganicFertiliser'
50
50
 
51
51
 
52
52
  def _emission(value: float):
53
- emission = _new_emission(TERM_ID, MODEL)
54
- emission['value'] = [value]
53
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value)
55
54
  emission['methodTier'] = TIER
56
55
  return emission
57
56
 
@@ -43,8 +43,7 @@ TIER = EmissionMethodTier.TIER_1.value
43
43
 
44
44
 
45
45
  def _emission(value: float):
46
- emission = _new_emission(TERM_ID, MODEL)
47
- emission['value'] = [value]
46
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value)
48
47
  emission['methodTier'] = TIER
49
48
  return emission
50
49
 
@@ -49,8 +49,7 @@ NOX_TERM_ID = 'noxToAirOrganicFertiliser'
49
49
 
50
50
 
51
51
  def _emission(value: float):
52
- emission = _new_emission(TERM_ID, MODEL)
53
- emission['value'] = [value]
52
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value)
54
53
  emission['methodTier'] = TIER
55
54
  return emission
56
55
 
@@ -19,15 +19,9 @@ LOOKUPS = {
19
19
  TERM_ID = 'gwp100'
20
20
 
21
21
 
22
- def _indicator(value: float):
23
- indicator = _new_indicator(TERM_ID, MODEL)
24
- indicator['value'] = value
25
- return indicator
26
-
27
-
28
22
  def run(impact_assessment: dict):
29
23
  value = impact_emission_lookup_value(MODEL, TERM_ID, impact_assessment, LOOKUPS['emission'])
30
24
  logRequirements(impact_assessment, model=MODEL, term=TERM_ID,
31
25
  value=value)
32
26
  logShouldRun(impact_assessment, MODEL, TERM_ID, value is not None)
33
- return _indicator(value) if value is not None else None
27
+ return _new_indicator(term=TERM_ID, model=MODEL, value=value)
@@ -19,15 +19,9 @@ LOOKUPS = {
19
19
  TERM_ID = 'gwp100'
20
20
 
21
21
 
22
- def _indicator(value: float):
23
- indicator = _new_indicator(TERM_ID, MODEL)
24
- indicator['value'] = value
25
- return indicator
26
-
27
-
28
22
  def run(impact_assessment: dict):
29
23
  value = impact_emission_lookup_value(MODEL, TERM_ID, impact_assessment, LOOKUPS['emission'])
30
24
  logRequirements(impact_assessment, model=MODEL, term=TERM_ID,
31
25
  value=value)
32
26
  logShouldRun(impact_assessment, MODEL, TERM_ID, value is not None)
33
- return _indicator(value) if value is not None else None
27
+ return _new_indicator(term=TERM_ID, model=MODEL, value=value)
@@ -566,7 +566,7 @@ def _measurement(
566
566
  "dates": [f"{year}-12-31" for year in timestamps],
567
567
  "methodClassification": _METHOD_CLASSIFICATION
568
568
  }
569
- measurement = _new_measurement(TERM_ID, MODEL) | {
569
+ measurement = _new_measurement(term=TERM_ID, model=MODEL) | {
570
570
  key: value for key, value in update_dict.items() if value
571
571
  }
572
572
  return measurement
@@ -36,9 +36,7 @@ TERM_ID = 'aboveGroundCropResidueTotal'
36
36
  PROPERTY_KEY = 'dryMatter'
37
37
 
38
38
 
39
- def _product(value: float):
40
- product = _new_product(TERM_ID, value, MODEL)
41
- return product
39
+ def _product(value: float = None): return _new_product(term=TERM_ID, model=MODEL, value=value)
42
40
 
43
41
 
44
42
  def _product_value(product: dict):
@@ -35,18 +35,14 @@ RETURNS = {
35
35
  MODEL_KEY = 'milkYieldPerAnimal'
36
36
 
37
37
 
38
- def _practice(term_id: str, value: float):
39
- node = _new_practice(term_id, MODEL)
40
- node['value'] = [value]
41
- return node
42
-
43
-
44
38
  def _run_animal(data: dict):
45
39
  animal = data.get('animal')
46
40
  value = data.get('value')
47
41
  practice_id = get_lookup_value(animal.get('term'), LOOKUPS['liveAnimal'][1])
48
42
  return animal | ({
49
- 'practices': merge_blank_nodes(animal.get('practices', []), [_practice(practice_id, value)])
43
+ 'practices': merge_blank_nodes(animal.get('practices', []), [
44
+ _new_practice(term=practice_id, model=MODEL, value=value)
45
+ ])
50
46
  } if practice_id else {})
51
47
 
52
48
 
@@ -148,8 +148,7 @@ MODEL_KEY = 'pastureGrass'
148
148
 
149
149
 
150
150
  def _input(term_id: str, value: float):
151
- node = _new_input(term_id, MODEL)
152
- node['value'] = [value]
151
+ node = _new_input(term=term_id, model=MODEL, value=value)
153
152
  node['isAnimalFeed'] = True
154
153
  return node
155
154
 
@@ -549,7 +549,7 @@ def _measurement(
549
549
  "dates": [f"{year}-12-31" for year in timestamps],
550
550
  "methodClassification": _METHOD_CLASSIFICATION
551
551
  }
552
- measurement = _new_measurement(TERM_ID, MODEL) | {
552
+ measurement = _new_measurement(term=TERM_ID, model=MODEL) | {
553
553
  key: value for key, value in update_dict.items() if value
554
554
  }
555
555
  measurement["depthUpper"] = _DEPTH_UPPER
@@ -36,9 +36,7 @@ TERM_ID = 'belowGroundCropResidue'
36
36
  PROPERTY_KEY = 'dryMatter'
37
37
 
38
38
 
39
- def _product(value: float):
40
- product = _new_product(TERM_ID, value, MODEL)
41
- return product
39
+ def _product(value: float = None): return _new_product(term=TERM_ID, model=MODEL, value=value)
42
40
 
43
41
 
44
42
  def _get_lookup_value(term: dict, column: str):
@@ -436,7 +436,7 @@ def _measurement(
436
436
  "depthLower": _DEPTH_LOWER,
437
437
  "methodClassification": _METHOD_CLASSIFICATION
438
438
  }
439
- measurement = _new_measurement(TERM_ID, MODEL) | {
439
+ measurement = _new_measurement(term=TERM_ID, model=MODEL) | {
440
440
  key: value for key, value in update_dict.items() if value is not None
441
441
  }
442
442
  return measurement
@@ -1,4 +1,4 @@
1
- from hestia_earth.schema import EmissionMethodTier, EmissionStatsDefinition, CycleFunctionalUnit
1
+ from hestia_earth.schema import EmissionMethodTier, CycleFunctionalUnit
2
2
  from hestia_earth.utils.model import find_term_match
3
3
  from hestia_earth.utils.tools import safe_parse_float, non_empty_list
4
4
 
@@ -47,11 +47,7 @@ _WATER_TERM_IDS = [
47
47
 
48
48
 
49
49
  def _emission(value: float, min: float, max: float):
50
- emission = _new_emission(TERM_ID, MODEL)
51
- emission['value'] = [value]
52
- emission['min'] = [min]
53
- emission['max'] = [max]
54
- emission['statsDefinition'] = EmissionStatsDefinition.MODELLED.value
50
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value, min=min, max=max)
55
51
  emission['methodTier'] = TIER
56
52
  return emission
57
53
 
@@ -1,4 +1,4 @@
1
- from hestia_earth.schema import EmissionMethodTier, EmissionStatsDefinition
1
+ from hestia_earth.schema import EmissionMethodTier
2
2
  from hestia_earth.utils.lookup import column_name, download_lookup, get_table_value, extract_grouped_data
3
3
  from hestia_earth.utils.model import find_primary_product, find_term_match
4
4
  from hestia_earth.utils.tools import list_sum, safe_parse_float
@@ -90,17 +90,7 @@ METHANE_EC = 55.65 # MJ/kg CH4
90
90
 
91
91
 
92
92
  def _emission(value: float, sd: float = None, min: float = None, max: float = None, description: str = None):
93
- emission = _new_emission(TERM_ID, MODEL)
94
- emission['value'] = [value]
95
- if sd is not None:
96
- emission['sd'] = [sd]
97
- emission['statsDefinition'] = EmissionStatsDefinition.MODELLED.value
98
- if min is not None:
99
- emission['min'] = [min]
100
- emission['statsDefinition'] = EmissionStatsDefinition.MODELLED.value
101
- if max is not None:
102
- emission['max'] = [max]
103
- emission['statsDefinition'] = EmissionStatsDefinition.MODELLED.value
93
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value, min=min, max=max, sd=sd)
104
94
  if description:
105
95
  emission['description'] = description
106
96
  emission['methodTier'] = TIER
@@ -66,8 +66,7 @@ def _get_duration_key(duration: int):
66
66
 
67
67
 
68
68
  def _emission(value: float):
69
- emission = _new_emission(TERM_ID, MODEL)
70
- emission['value'] = [value]
69
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value)
71
70
  emission['methodTier'] = TIER
72
71
  return emission
73
72
 
@@ -1,5 +1,5 @@
1
1
  from functools import reduce
2
- from hestia_earth.schema import EmissionMethodTier, EmissionStatsDefinition, TermTermType
2
+ from hestia_earth.schema import EmissionMethodTier, TermTermType
3
3
  from hestia_earth.utils.model import filter_list_term_type, find_term_match
4
4
  from hestia_earth.utils.tools import list_sum, safe_parse_float, non_empty_list
5
5
 
@@ -80,16 +80,8 @@ _STATS = ['value', 'min', 'max', 'sd']
80
80
 
81
81
 
82
82
  def _emission(value: float, min: float, max: float, sd: float):
83
- emission = _new_emission(TERM_ID, MODEL)
84
- emission['value'] = [value]
85
- if min is not None:
86
- emission['min'] = [min]
87
- if max is not None:
88
- emission['max'] = [max]
89
- if sd is not None:
90
- emission['sd'] = [sd]
83
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value, min=min, max=max, sd=sd)
91
84
  emission['methodTier'] = TIER
92
- emission['statsDefinition'] = EmissionStatsDefinition.MODELLED.value
93
85
  return emission
94
86
 
95
87
 
@@ -97,7 +97,7 @@ _CATEGORY_REMAPPER = {
97
97
 
98
98
 
99
99
  def _emission(descriptive_stats: dict):
100
- emission = _new_emission(TERM_ID, MODEL) | descriptive_stats
100
+ emission = _new_emission(term=TERM_ID, model=MODEL) | descriptive_stats
101
101
  emission['methodTier'] = TIER
102
102
  return emission
103
103
 
@@ -100,7 +100,7 @@ def _emission(
100
100
  "observations": observations,
101
101
  "methodTier": method_tier.value,
102
102
  }
103
- emission = _new_emission(term_id, MODEL) | {
103
+ emission = _new_emission(term=term_id, model=MODEL) | {
104
104
  key: value for key, value in update_dict.items() if value
105
105
  }
106
106
  return emission
@@ -92,7 +92,7 @@ def _emission(
92
92
  "methodTier": method_tier.value,
93
93
  "depth": _DEPTH_LOWER
94
94
  }
95
- emission = _new_emission(term_id, MODEL) | {
95
+ emission = _new_emission(term=term_id, model=MODEL) | {
96
96
  key: value for key, value in update_dict.items() if value
97
97
  }
98
98
  return emission
@@ -94,7 +94,7 @@ def _emission(
94
94
  "methodTier": method_tier.value,
95
95
  "depth": _DEPTH_LOWER
96
96
  }
97
- emission = _new_emission(term_id, MODEL) | {
97
+ emission = _new_emission(term=term_id, model=MODEL) | {
98
98
  key: value for key, value in update_dict.items() if value
99
99
  }
100
100
  return emission
@@ -31,8 +31,7 @@ TIER = EmissionMethodTier.TIER_1.value
31
31
 
32
32
 
33
33
  def _emission(value: float):
34
- emission = _new_emission(TERM_ID, MODEL)
35
- emission['value'] = [value]
34
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value)
36
35
  emission['methodTier'] = TIER
37
36
  return emission
38
37
 
@@ -88,7 +88,7 @@ _ITERATIONS = 100000
88
88
 
89
89
 
90
90
  def _emission(descriptive_stats: dict):
91
- emission = _new_emission(TERM_ID, MODEL) | descriptive_stats
91
+ emission = _new_emission(term=TERM_ID, model=MODEL) | descriptive_stats
92
92
  emission['methodTier'] = TIER
93
93
  return emission
94
94
 
@@ -92,7 +92,7 @@ def _emission(
92
92
  "methodTier": method_tier.value,
93
93
  "depth": _DEPTH_LOWER
94
94
  }
95
- emission = _new_emission(term_id, MODEL) | {
95
+ emission = _new_emission(term=term_id, model=MODEL) | {
96
96
  key: value for key, value in update_dict.items() if value
97
97
  }
98
98
  return emission
@@ -31,8 +31,7 @@ UNSPECIFIED_TERM_ID = 'inorganicNitrogenFertiliserUnspecifiedKgN'
31
31
 
32
32
 
33
33
  def _emission(value: float):
34
- emission = _new_emission(TERM_ID, MODEL)
35
- emission['value'] = [value]
34
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value)
36
35
  emission['methodTier'] = TIER
37
36
  return emission
38
37
 
@@ -44,8 +44,7 @@ LOOKUP_COL_PREFIX = 'Rice_croppingDuration_days'
44
44
 
45
45
 
46
46
  def _practice(value: float, min: float, max: float, sd: float):
47
- practice = _new_practice(TERM_ID, MODEL)
48
- practice['value'] = [value]
47
+ practice = _new_practice(term=TERM_ID, model=MODEL, value=value)
49
48
  practice['min'] = [min]
50
49
  practice['max'] = [max]
51
50
  practice['sd'] = [sd]
@@ -32,8 +32,7 @@ TIER = EmissionMethodTier.TIER_1.value
32
32
 
33
33
 
34
34
  def _emission(value: float):
35
- emission = _new_emission(TERM_ID, MODEL)
36
- emission['value'] = [value]
35
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value)
37
36
  emission['methodTier'] = TIER
38
37
  return emission
39
38
 
@@ -1,4 +1,4 @@
1
- from hestia_earth.schema import EmissionMethodTier, EmissionStatsDefinition, TermTermType
1
+ from hestia_earth.schema import EmissionMethodTier, TermTermType
2
2
 
3
3
  from hestia_earth.models.log import logRequirements, logShouldRun, debugValues, log_as_table
4
4
  from hestia_earth.models.utils.constant import Units, get_atomic_conversion
@@ -51,13 +51,8 @@ TIER = EmissionMethodTier.TIER_1.value
51
51
 
52
52
 
53
53
  def _emission(value: float, min: float, max: float, sd: float, aggregated: bool = False):
54
- emission = _new_emission(TERM_ID, MODEL)
55
- emission['value'] = [value]
56
- emission['min'] = [min]
57
- emission['max'] = [max]
58
- emission['sd'] = [sd]
54
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value, min=min, max=max, sd=sd)
59
55
  emission['methodTier'] = TIER
60
- emission['statsDefinition'] = EmissionStatsDefinition.MODELLED.value
61
56
  emission['methodModelDescription'] = 'Aggregated version' if aggregated else 'Disaggregated version'
62
57
  return emission
63
58
 
@@ -35,8 +35,7 @@ TIER = EmissionMethodTier.TIER_2.value
35
35
 
36
36
 
37
37
  def _emission(value: float):
38
- emission = _new_emission(TERM_ID, MODEL)
39
- emission['value'] = [value]
38
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value)
40
39
  emission['methodTier'] = TIER
41
40
  return emission
42
41
 
@@ -1,4 +1,4 @@
1
- from hestia_earth.schema import EmissionMethodTier, EmissionStatsDefinition, TermTermType
1
+ from hestia_earth.schema import EmissionMethodTier, TermTermType
2
2
 
3
3
  from hestia_earth.models.log import logRequirements, logShouldRun, debugValues, log_as_table
4
4
  from hestia_earth.models.utils.constant import Units, get_atomic_conversion
@@ -61,13 +61,8 @@ TIER = EmissionMethodTier.TIER_1.value
61
61
 
62
62
 
63
63
  def _emission(value: float, min: float, max: float, sd: float, aggregated: bool = False):
64
- emission = _new_emission(TERM_ID, MODEL)
65
- emission['value'] = [value]
66
- emission['min'] = [min]
67
- emission['max'] = [max]
68
- emission['sd'] = [sd]
64
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value, min=min, max=max, sd=sd)
69
65
  emission['methodTier'] = TIER
70
- emission['statsDefinition'] = EmissionStatsDefinition.MODELLED.value
71
66
  emission['methodModelDescription'] = 'Aggregated version' if aggregated else 'Disaggregated version'
72
67
  return emission
73
68
 
@@ -1,4 +1,4 @@
1
- from hestia_earth.schema import EmissionMethodTier, EmissionStatsDefinition, TermTermType
1
+ from hestia_earth.schema import EmissionMethodTier, TermTermType
2
2
 
3
3
  from hestia_earth.models.log import logRequirements, logShouldRun, debugValues, log_as_table
4
4
  from hestia_earth.models.utils.constant import Units, get_atomic_conversion
@@ -61,13 +61,8 @@ TIER = EmissionMethodTier.TIER_1.value
61
61
 
62
62
 
63
63
  def _emission(value: float, min: float, max: float, sd: float, aggregated: bool = False):
64
- emission = _new_emission(TERM_ID, MODEL)
65
- emission['value'] = [value]
66
- emission['min'] = [min]
67
- emission['max'] = [max]
68
- emission['sd'] = [sd]
64
+ emission = _new_emission(term=TERM_ID, model=MODEL, value=value, min=min, max=max, sd=sd)
69
65
  emission['methodTier'] = TIER
70
- emission['statsDefinition'] = EmissionStatsDefinition.MODELLED.value
71
66
  emission['methodModelDescription'] = 'Aggregated version' if aggregated else 'Disaggregated version'
72
67
  return emission
73
68