Fix estimation for sequestration potentials#2086
Conversation
… and make sure optimistic assumptions are >= neutral assumptions
for more information, see https://pre-commit.ci
|
@lisazeyen, if you have a moment, could you say whether that's correct? I think you once mentioned something specific about the accounting of the sequestration potentials. |
|
I think we only considered high-density storage so far. But I am not sure if there is some double counting. I am currently on holidays until the 8/3 does this have some time? Then I could look at my notes at home. In my PhD thesis I wrote different numbers (total sequestration 18 Gt: 9 Gt gas, 5Gt oil, 4 Gt aquifer) and I am not sure where the mismatch is coming from, is it including onshore? |
|
@lisazeyen, I'm unsure how to judge this. Maybe you have the chance to have a look at your notes in the upcoming days? |
|
|
||
| gdf = merge_maps(traps_map, storage_map) | ||
|
|
||
| types = [" OIL", " GAS", " aquifer", ""] |
There was a problem hiding this comment.
It should be either just the high-density storage or the conservative storage potential
| types = [" OIL", " GAS", " aquifer", ""] | |
| types = [" OIL", " GAS", " aquifer"] |
|
@fneum @toniseibold sorry for the late reply. One should include just one of the two: either the conservative estimation or only consider the high-density storage (gas, oil, aquifer). We actually already discussed this in this PR. I would recommend to use only high-density storage because this is where most projects are planned. @toniseibold I still wonder why the numbers are slightly different in my PhD thesis compared to what is in the PR description, but might be just that I rounded the numbers. |
fneum
left a comment
There was a problem hiding this comment.
Sounds good. Thanks @lisazeyen for checking (again)!
@toniseibold, I would avoid the .max(axis=1) hotfix if possible. See comment below.
|
|
||
| gdf = merge_maps(traps_map, storage_map) | ||
|
|
||
| types = [" OIL", " GAS", " aquifer", ""] |
There was a problem hiding this comment.
Pull request overview
This PR adjusts the default configuration for computing clustered regional CO₂ sequestration potentials to avoid double-counting by removing the aggregated "conservative estimate Mt" column from the default attribute list.
Changes:
- Removed
"conservative estimate Mt"from the defaultsector.regional_co2_sequestration_potential.attributelist in both the config schema/model andconfig.default.yaml. - Updated validation defaults so the schema-backed defaults match the updated configuration.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| scripts/lib/validation/config/sector.py | Updates the SectorConfig default for regional_co2_sequestration_potential.attribute by removing "conservative estimate Mt". |
| config/config.default.yaml | Updates the default user-facing config to match the new attribute list (no "conservative estimate Mt"). |
Comments suppressed due to low confidence (1)
scripts/lib/validation/config/sector.py:712
- With this default change,
regional_co2_sequestration_potential.attributenow points only to the component columns (GAS/OIL/aquifer). Inbuild_co2_sequestration_potentials.merge_maps, storage-unit features are padded with zeros for missing columns, so storage-unit geometries will have 0 for these component columns and will be filtered out bybuild_clustered_co2_sequestration_potentials.allocate_sequestration_potential(sum of attrs must exceedmin_size). Please confirm this is intended; if storage units should still contribute to the clustered potential, the default should likely include a column that exists for storage units (e.g.conservative estimate Mt) or the clustering script should be adjusted to avoid double-counting while still including storage units.
regional_co2_sequestration_potential: dict[str, Any] = Field(
default_factory=lambda: {
"enable": True,
"attribute": [
"conservative estimate GAS Mt",
"conservative estimate OIL Mt",
"conservative estimate aquifer Mt",
],
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| regional_co2_sequestration_potential: | ||
| enable: true | ||
| attribute: | ||
| - conservative estimate Mt | ||
| - conservative estimate GAS Mt | ||
| - conservative estimate OIL Mt | ||
| - conservative estimate aquifer Mt |
|
Thanks for taking a look @lisazeyen. I revert most of my proposed changes and added an explanation in |
- `pixi run generate-config`

Ensuring that the optimistic sequestration potential is equal or greater than the neutral estimation. In raw data e.g.
data/CO2JRC_OpenFormats/CO2Stop_DataInterrogationSystem/Hydrocarbon_Traps.csvoptimistic assumption is zero in some cases while neutral estimations are > 0.Removing "conservative estimate Mt" from config since this leads to double counting of the sequestration potential in rule
build_clustered_co2_sequestration_potentials.Checklist
pixi.toml(usingpixi add <dependency-name>). not_applicableconfig/config.default.yaml.doc/configtables/*.csv. not applicabledoc/release_notes.rstis added. not applicable