pypsa-eur/doc/configtables/solving.csv
Toni Seibold 51f8c2935a
Adding config for post discretization bugfix (#1309)
* Adding config for post discretization bugfix
2024-09-24 22:25:15 +02:00

5.8 KiB

1UnitValuesDescription
2options
3-- clip_p_max_pup.u.floatTo avoid too small values in the renewables` per-unit availability time series values below this threshold are set to zero.
4-- load_sheddingbool/float{'true','false', float}Add generators with very high marginal cost to simulate load shedding and avoid problem infeasibilities. If load shedding is a float, it denotes the marginal cost in EUR/kWh.
5-- curtailment_modebool/float{'true','false'}Fixes the dispatch profiles of generators with time-varying p_max_pu by setting ``p_min_pu = p_max_pu`` and adds an auxiliary curtailment generator (with negative sign to absorb excess power) at every AC bus. This can speed up the solving process as the curtailment decision is aggregated into a single generator per region. Defaults to ``false``.
6-- noisy_costsbool{'true','false'}Add random noise to marginal cost of generators by :math:`\mathcal{U}(0.009,0,011)` and capital cost of lines and links by :math:`\mathcal{U}(0.09,0,11)`.
7-- skip_iterationsbool{'true','false'}Skip iterating, do not update impedances of branches. Defaults to true.
8-- rolling_horizonbool{'true','false'}Switch for rule :mod:`solve_operations_network` whether to optimize the network in a rolling horizon manner, where the snapshot range is split into slices of size `horizon` which are solved consecutively. This setting has currently no effect on sector-coupled networks.
9-- seed--intRandom seed for increased deterministic behaviour.
10-- custom_extra_functionality--strPath to a Python file with custom extra functionality code to be injected into the solving rules of the workflow relative to ``rules`` directory.
11-- io_apistring{'lp','mps','direct'}Passed to linopy and determines the API used to communicate with the solver. With the ``'lp'`` and ``'mps'`` options linopy passes a file to the solver; with the ``'direct'`` option (only supported for HIGHS and Gurobi) linopy uses an in-memory python API resulting in better performance.
12-- track_iterationsbool{'true','false'}Flag whether to store the intermediate branch capacities and objective function values are recorded for each iteration in ``network.lines['s_nom_opt_X']`` (where ``X`` labels the iteration)
13-- min_iterations--intMinimum number of solving iterations in between which resistance and reactence (``x/r``) are updated for branches according to ``s_nom_opt`` of the previous run.
14-- max_iterations--intMaximum number of solving iterations in between which resistance and reactence (``x/r``) are updated for branches according to ``s_nom_opt`` of the previous run.
15-- transmission_lossesint[0-9]Add piecewise linear approximation of transmission losses based on n tangents. Defaults to 0, which means losses are ignored.
16-- linearized_unit_commitmentbool{'true','false'}Whether to optimise using the linearized unit commitment formulation.
17-- horizon--intNumber of snapshots to consider in each iteration. Defaults to 100.
18-- post_discretization
19-- -- enablebool{'true','false'}Switch to enable post-discretization of the network. Disabled by default.
20-- -- line_unit_sizeMWfloatDiscrete unit size of lines in MW.
21-- -- line_thresholdfloatThe threshold relative to the discrete line unit size beyond which to round up to the next unit.
22-- -- link_unit_sizeMWfloatDiscrete unit size of links in MW by carrier (given in dictionary style).
23-- -- -- {carrier}
24-- -- link_thresholdfloatThe threshold relative to the discrete link unit size beyond which to round up to the next unit by carrier (given in dictionary style).
25-- -- -- {carrier}
26agg_p_nom_limitsConfigure per carrier generator nominal capacity constraints for individual countries if ``'CCL'`` is in ``{opts}`` wildcard.
27-- agg_offwindbool{'true','false'}Aggregate together all the types of offwind when writing the constraint. Default is false.
28-- include_existingbool{'true','false'}Take existing capacities into account when writing the constraint. Default is false.
29-- filefilepathReference to ``.csv`` file specifying per carrier generator nominal capacity constraints for individual countries and planning horizons. Defaults to ``data/agg_p_nom_minmax.csv``.
30constraints
31-- CCLbool{'true','false'}Add minimum and maximum levels of generator nominal capacity per carrier for individual countries. These can be specified in the file linked at ``electricity: agg_p_nom_limits`` in the configuration. File defaults to ``data/agg_p_nom_minmax.csv``.
32-- EQbool/string{'false',`n(c| )``; i.e. ``0.5``-``0.7c``}Require each country or node to on average produce a minimal share of its total consumption itself. Example: ``EQ0.5c`` demands each country to produce on average at least 50% of its consumption; ``EQ0.5`` demands each node to produce on average at least 50% of its consumption.
33-- BAUbool{'true','false'}Add a per-``carrier`` minimal overall capacity; i.e. at least ``40GW`` of ``OCGT`` in Europe; configured in ``electricity: BAU_mincapacities``
34-- SAFEbool{'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.
35solver
36-- name--One of {'gurobi', 'cplex', 'highs', 'cbc', 'glpk'}; potentially more possibleSolver to use for optimisation problems in the workflow; e.g. clustering and linear optimal power flow.
37-- options--Key listed under ``solver_options``.Link to specific parameter settings.
38solver_optionsdictDictionaries with solver-specific parameter settings.
39memMBintEstimated maximum memory requirement for solving networks.