Merge branch 'master' into fix_biomass_transport

This commit is contained in:
yerbol-akhmetov 2024-04-27 18:09:51 +05:00
commit 44e32468db
5 changed files with 10 additions and 10 deletions

View File

@ -770,7 +770,7 @@ solving:
solver_options:
highs-default:
# refer to https://ergo-code.github.io/HiGHS/options/definitions.html#solver
# refer to https://ergo-code.github.io/HiGHS/dev/options/definitions/
threads: 4
solver: "ipm"
run_crossover: "off"

View File

@ -20,7 +20,7 @@ constraints ,,,
-- BAU,bool,"{'true','false'}",Add a per-``carrier`` minimal overall capacity; i.e. at least ``40GW`` of ``OCGT`` in Europe; configured in ``electricity: BAU_mincapacities``
-- SAFE,bool,"{'true','false'}",Add a capacity reserve margin of a certain fraction above the peak demand to which renewable generators and storage do *not* contribute. Ignores network.
solver,,,
-- name,--,"One of {'gurobi', 'cplex', 'cbc', 'glpk', 'ipopt'}; potentially more possible",Solver to use for optimisation problems in the workflow; e.g. clustering and linear optimal power flow.
-- name,--,"One of {'gurobi', 'cplex', 'highs', 'cbc', 'glpk'}; potentially more possible",Solver to use for optimisation problems in the workflow; e.g. clustering and linear optimal power flow.
-- options,--,Key listed under ``solver_options``.,Link to specific parameter settings.
solver_options,,dict,Dictionaries with solver-specific parameter settings.
mem,MB,int,Estimated maximum memory requirement for solving networks.

1 Unit Values Description
20 -- BAU bool {'true','false'} Add a per-``carrier`` minimal overall capacity; i.e. at least ``40GW`` of ``OCGT`` in Europe; configured in ``electricity: BAU_mincapacities``
21 -- SAFE bool {'true','false'} Add a capacity reserve margin of a certain fraction above the peak demand to which renewable generators and storage do *not* contribute. Ignores network.
22 solver
23 -- name -- One of {'gurobi', 'cplex', 'cbc', 'glpk', 'ipopt'}; potentially more possible One of {'gurobi', 'cplex', 'highs', 'cbc', 'glpk'}; potentially more possible Solver to use for optimisation problems in the workflow; e.g. clustering and linear optimal power flow.
24 -- options -- Key listed under ``solver_options``. Link to specific parameter settings.
25 solver_options dict Dictionaries with solver-specific parameter settings.
26 mem MB int Estimated maximum memory requirement for solving networks.

View File

@ -62,7 +62,7 @@ PyPSA is known to work with the free software
- `HiGHS <https://highs.dev/>`__
- `Cbc <https://projects.coin-or.org/Cbc#DownloadandInstall>`__
- `GLPK <https://www.gnu.org/software/glpk/>`__ (`WinGLKP <http://winglpk.sourceforge.net/>`__)
- `Ipopt <https://coin-or.github.io/Ipopt/INSTALL.html>`__
- `SCIP <https://scipopt.github.io/PySCIPOpt/docs/html/index.html>`__
and the non-free, commercial software (for some of which free academic licenses are available)
@ -80,7 +80,7 @@ Nevertheless, you can still use open-source solvers for smaller problems.
.. note::
The rules :mod:`cluster_network` and :mod:`simplify_network` solve a mixed-integer quadratic optimisation problem for clustering.
The open-source solvers HiGHS, Cbc and GlPK cannot handle this. A fallback to SCIP is implemented in this case.
The open-source solvers HiGHS, Cbc and GlPK cannot handle this. A fallback to SCIP is implemented in this case, which is included in the standard environment specifications.
For an open-source solver setup install in your ``conda`` environment on OSX/Linux. To install the default solver Gurobi, run
.. code:: bash

View File

@ -433,7 +433,7 @@ rule add_electricity:
else resources("networks/base.nc")
),
tech_costs=lambda w: resources(
f"costs_{config_provider('costs', 'year')(w)}.csv"
f"costs_{config_provider('costs', 'year') (w)}.csv"
),
regions=resources("regions_onshore.geojson"),
powerplants=resources("powerplants.csv"),
@ -478,7 +478,7 @@ rule simplify_network:
input:
network=resources("networks/elec.nc"),
tech_costs=lambda w: resources(
f"costs_{config_provider('costs', 'year')(w)}.csv"
f"costs_{config_provider('costs', 'year') (w)}.csv"
),
regions_onshore=resources("regions_onshore.geojson"),
regions_offshore=resources("regions_offshore.geojson"),
@ -526,7 +526,7 @@ rule cluster_network:
else []
),
tech_costs=lambda w: resources(
f"costs_{config_provider('costs', 'year')(w)}.csv"
f"costs_{config_provider('costs', 'year') (w)}.csv"
),
output:
network=resources("networks/elec_s{simpl}_{clusters}.nc"),
@ -555,7 +555,7 @@ rule add_extra_components:
input:
network=resources("networks/elec_s{simpl}_{clusters}.nc"),
tech_costs=lambda w: resources(
f"costs_{config_provider('costs', 'year')(w)}.csv"
f"costs_{config_provider('costs', 'year') (w)}.csv"
),
output:
resources("networks/elec_s{simpl}_{clusters}_ec.nc"),
@ -590,7 +590,7 @@ rule prepare_network:
input:
resources("networks/elec_s{simpl}_{clusters}_ec.nc"),
tech_costs=lambda w: resources(
f"costs_{config_provider('costs', 'year')(w)}.csv"
f"costs_{config_provider('costs', 'year') (w)}.csv"
),
co2_price=lambda w: resources("co2_price.csv") if "Ept" in w.opts else [],
output:

View File

@ -310,7 +310,7 @@ def add_power_capacities_installed_before_baseyear(n, grouping_years, costs, bas
n.madd(
"Generator",
new_capacity.index,
suffix=" " + name_suffix,
suffix=name_suffix,
bus=new_capacity.index,
carrier=generator,
p_nom=new_capacity,