add option 'seqXXX' to sweep global co2 sequestration potentials (#208)
* add option 'seqXXX' to sweep global co2 sequestration potentials * add release notes
This commit is contained in:
parent
82096f92e8
commit
d1762919c5
@ -60,6 +60,8 @@ incorporates retrofitting options to hydrogen.
|
|||||||
|
|
||||||
* Add regionalised hydrogen salt cavern storage potentials from `Technical Potential of Salt Caverns for Hydrogen Storage in Europe <https://doi.org/10.20944/preprints201910.0187.v1>`_.
|
* Add regionalised hydrogen salt cavern storage potentials from `Technical Potential of Salt Caverns for Hydrogen Storage in Europe <https://doi.org/10.20944/preprints201910.0187.v1>`_.
|
||||||
|
|
||||||
|
* Add option to sweep the global CO2 sequestration potentials with keyword ``seq200`` in the ``{sector_opts}`` wildcard (for limit of 200 Mt CO2).
|
||||||
|
|
||||||
**Bugfixes**
|
**Bugfixes**
|
||||||
|
|
||||||
* The CO2 sequestration limit implemented as GlobalConstraint (introduced in the previous version)
|
* The CO2 sequestration limit implemented as GlobalConstraint (introduced in the previous version)
|
||||||
|
@ -220,15 +220,20 @@ def add_co2_sequestration_limit(n, sns):
|
|||||||
vars_final_co2_stored = get_var(n, 'Store', 'e').loc[sns[-1], co2_stores]
|
vars_final_co2_stored = get_var(n, 'Store', 'e').loc[sns[-1], co2_stores]
|
||||||
|
|
||||||
lhs = linexpr((1, vars_final_co2_stored)).sum()
|
lhs = linexpr((1, vars_final_co2_stored)).sum()
|
||||||
rhs = n.config["sector"].get("co2_sequestration_potential", 200) * 1e6
|
|
||||||
|
limit = n.config["sector"].get("co2_sequestration_potential", 200) * 1e6
|
||||||
|
for o in opts:
|
||||||
|
if not "seq" in o: continue
|
||||||
|
limit = float(o[o.find("seq")+3:])
|
||||||
|
break
|
||||||
|
|
||||||
name = 'co2_sequestration_limit'
|
name = 'co2_sequestration_limit'
|
||||||
sense = "<="
|
sense = "<="
|
||||||
|
|
||||||
n.add("GlobalConstraint", name, sense=sense, constant=rhs,
|
n.add("GlobalConstraint", name, sense=sense, constant=limit,
|
||||||
type=np.nan, carrier_attribute=np.nan)
|
type=np.nan, carrier_attribute=np.nan)
|
||||||
|
|
||||||
define_constraints(n, lhs, sense, rhs, 'GlobalConstraint',
|
define_constraints(n, lhs, sense, limit, 'GlobalConstraint',
|
||||||
'mu', axes=pd.Index([name]), spec=name)
|
'mu', axes=pd.Index([name]), spec=name)
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user