8000 Tags · ame89/PyPSA · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Tags: ame89/PyPSA

Tags

v0.8.0

Toggle v0.8.0's commit message

Unverified

The committer email address is not verified. 8000
PyPSA Version 0.8.0

Nicely-linked release notes can be found here:

https://pypsa.org/doc/release_notes.html#pypsa-0-8-0-25th-january-2017

This is a major release which contains important new features and
changes to the internal API.

* Standard types are now available for lines and transformers so that
  you do not have to calculate the electrical parameters yourself. For
  lines you just need to specify the type and the length, see Line
  Types. For transformers you just need to specify the type, see
  Transformer Types. The implementation of PyPSA’s standard types is
  based on pandapower’s standard types. The old interface of
  specifying r, x, b and g manually is still available.

* The transformer model has been substantially overhauled, see
  Transformer model. The equivalent model now defaults to the more
  accurate T model rather than the PI model, which you can control by
  setting the attribute model. Discrete tap steps are implemented for
  transformers with types. The tap changer can be defined on the
  primary side or the secondary side. In the PF there was a sign error
  in the implementation of the transformer phase_shift, which has now
  been fixed. In the LPF and LOPF angle formulation the phase_shift
  has now been implemented consistently. See the new transformer
  example.  There is now a rudimentary import function for pandapower
  networks, but it doesn’t yet work with all switches and 3-winding
  transformers.

* The object interface for components has been completely
  removed. Objects for each component are no longer stored in
  e.g. network.lines["obj"] and the descriptor interface for
  components is gone. You can only access component attributes through
  the dataframes, e.g. network.lines.

* Component attributes are now defined in CSV files in
  pypsa/component_attrs/. You can access these CSVs in the code via
  the dictionary network.components,
  e.g. network.components["Line"]["attrs"] will show a pandas
  DataFrame with all attributes and their types, defaults, units and
  descriptions. These CSVs are also sourced for the documentation in
  Components, so the documentation will always be up-to-date.

* All examples have been updated appropriately.

v0.7.1

Toggle v0.7.1's commit message
PyPSA Version 0.7.1

http://pypsa.org/doc/release_notes.html#pypsa-0-7-1-26th-november-2016

This release contains bug fixes, a minor new feature and more
warnings.

* The unix-only library ``resource`` is no longer imported by default,
  which was causing errors for Windows users.
* Bugs in the setting and getting of time-varying attributes for the
  object interface have been fixed.
* The ``Link`` attribute ``efficiency`` can now be make time-varying
  so that e.g. heat pump Coefficient of Performance (COP) can change
  over time due to ambient temperature variations (see the `heat pump
  example  <http://www.pypsa.org/examples/power-to-heat-water-tank.html>`_).
* ``network.snapshots`` is now cast to a ``pandas.Index``.
* There are new warnings, including when you attach components to
  non-existent buses.

Thanks to Marius Vespermann for promptly pointing out the ``resource``
bug.

v0.7.0

Toggle v0.7.0's commit message
PyPSA Version 0.7.0

http://pypsa.org/doc/release_notes.html#pypsa-0-7-0-20th-november-2016

This is a major release which contains changes to the API,
particularly regarding time-varying component attributes.

* network.generators_t are no longer pandas.Panels but dictionaries of
  pandas.DataFrames, with variable columns, so that you can be
  flexible about which components have time-varying attributes; please
  read Time-varying data carefully. Essentially you can either set a
  component attribute e.g. p_max_pu of Generator, to be static by
  setting it in the DataFrame network.generators, or you can let it be
  time-varying by defining a new column labelled by the generator name
  in the DataFrame network.generators_t["p_max_pu"] as a series, which
  causes the static value in network.generators for that generator to
  be ignored. The DataFrame network.generators_t["p_max_pu"] now only
  includes columns which are specifically defined to be time-varying,
  thus saving memory.

* The following component attributes can now be time-varing:
  Link.p_max_pu, Link.p_min_pu, Store.e_max_pu and
  Store.e_min_pu. This allows the demand-side management scheme of
  https://arxiv.org/abs/1401.4121 to be implemented in PyPSA.

* The properties dispatch, p_max_pu_fixed and p_min_pu_fixed of
Generator and StorageUnit are now removed, because the ability to make
p_max_pu and p_min_pu either static or time-varying removes the need
for this distinction.

* All messages are sent through the standard Python library logging,
so you can control the level of messages to be e.g. debug, info,
warning or error. All verbose switches and print statements have been
removed.

* There are now more warnings.

* You can call network.consistency_check() to make sure all your
components are well defined; see Troubleshooting.  All examples have
been updated to accommodate the changes listed below.

v0.6.2

Toggle v0.6.2's commit message
PyPSA Version 0.6.2

http://pypsa.org/doc/release_notes.html#pypsa-0-6-2-4th-november-2016

This release fixes a single library dependency issue:

* pf: A single line has been fixed so that it works with new pandas
  versions >= 0.19.0.

We thank Thorben Meiners for promptly pointing out this issue with the
new versions of pandas.

v0.6.1

Toggle v0.6.1's commit message
PyPSA Version 0.6.1

http://pypsa.org/doc/release_notes.html#pypsa-0-6-1-25th-august-2016

This release fixes a single critical bug:

* opf: The latest version of Pyomo (4.4.1) had a bad interaction with
  pandas when a pandas.Index was used to index variables. To fix this,
    the indices are now cast to lists; compatibility with less recent
      versions of Pyomo is also retained.

We thank Joao Gorenstein Dedecca for promptly notifying us of this
bug.

v0.6.0

Toggle v0.6.0's commit message
PyPSA Version 0.6.0

Release notes: http://pypsa.org/doc/release_notes.html#pypsa-0-6-0-23rd-august-2016

Like the 0.5.0 release, this release contains API changes, which
complete the integration of sector coupling. You may have to update
your old code. Models for Combined Heat and Power (CHP) units, heat
pumps, resistive Power-to-Heat (P2H), Power-to-Gas (P2G), battery
electric vehicles (BEVs) and chained hydro reservoirs can now be built
(see the `sector coupling examples
<http://www.pypsa.org/examples/#coupling-to-other-energy-sectors>`_). The
refactoring of time-dependent variable handling has been postponed
until the 0.7.0 release. In 0.7.0 the object interface to attributes
may also be removed; see below.

All `examples <http://www.pypsa.org/examples/>`_ have been updated to
accommodate the changes listed below.

Sector coupling
---------------

* components, opt: A new ``Store`` component has been introduced which
  stores energy, inheriting the energy carrier from the bus to which
  it is attached. The component is more fundamental than the
  ``StorageUnit``, which is equivalent to a ``Store`` and two ``Link``
  for storing and dispatching. The ``Generator`` is equivalent to a
  ``Store`` with a lossy ``Link``. There is an `example which shows
  the equivalences
  <http://www.pypsa.org/examples/replace-generator-storage-units-with-store.html>`_.

* components, opt: The ``Source`` component and the ``Generator``
  attribute ``gen.source`` have been renamed ``Carrier`` and
  ``gen.carrier``, to be consistent with the ``bus.carrier``
  attribute. Please update your old code.

* components, opt: The ``Link`` attributes ``link.s_nom*`` have been
  renamed ``link.p_nom*`` to reflect the fact that the link can only
  dispatch active power. Please update your old code.

* components, opt: The ``TransportLink`` and ``Converter`` components,
  which were deprecated in 0.5.0, have been now completely
  removed. Please update your old code to use ``Link`` instead.

Downgrading object interface
----------------------------

The intention is to have only the pandas DataFrame interface for
accessing component attributes, to make the code simpler. The
automatic generation of objects with descriptor access to attributes
may be removed altogether.

* examples: Patterns of for loops through ``network.components.obj`` have
  been removed.

* components: The methods on ``Bus`` like ``bus.generators()`` and
  ``bus.loads()`` have been removed.

* components: ``network.add()`` no longer returns the object.

Other
-----

* components, opf: Unlimited upper bounds for
  e.g. ``generator.p_nom_max`` or ``line.s_nom_max`` were previous set
  using ``np.nan``; now they are set using ``float("inf")`` which is
  more logical. You may have to update your old code accordingly.

* components: A memory leak whereby references to
  ``component.network`` were not being correctly deleted has been
  fixed.

v0.5.0

Toggle v0.5.0's commit message
Bump version to 0.5.0

v0.4.2

Toggle v0.4.2's commit message
Version 0.4.2

v0.4.1

Toggle v0.4.1's commit message
Version 0.4.1

Bump version with release notes.

Some improvements to documentation on generator/bus PV/PQ/Slack
control.

Add nicer component naming for PYPOWER ppc import.

v0.4.0

Toggle v0.4.0's commit message
Version 0.4.0

Bump version with released notes.
0