Today, we had two new releases, oemof.network 0.5.0 (GitHub, PyPI) and oemof.solph 0.5.2 (GitHub, PyPI). The release of the first includes a lot of refactoring and cleaning. The code should now be a lot easier to understand and to maintain. We now use explicit keyword arguments also for network, so typos will be easy to find. Secondly, there is a (still experimental) API to get Nodes by label. At last, we now officially support an API to add Flows between existing Nodes. Using this API in solph, the Nodes might e.g. be Buses:Continue reading “solph v0.5.2: Next Network”
Today, oemof.solph v0.5.1, code name “compilant converter” has been released. (Package at PyPI, Tag at GitHub). The most noteworthy addition is a new (still experimental) feature multi-period (dynamic) investment models. The code name refers to a small but maybe more evident change: The component
Transformer is renamed to
Converter. This is because people typically think of electrical devices when they hear the word “transformer”. However, as experienced users of our package know, the Transformer is neither meant to be (only) electrical nor bidirectional (as electrical transformers typically are). Thus, the more generic term “converter” is now used. (Note that we always had the argument “conversion_factor”.) To maintain compatibility for v0.5.0, there is a transitional wrapper that still allows to name the component “Transformer”. It will keep telling you about the upcoming change, though. Another usability feature is the presentation of the examples as part of the documentation. Also, we fixed error when calling
oemof_installation_test as a console script. It turned out to confuse quite a few new users that it did not work as documented in the previous release.
We hope to have a fair balance between improvements in usability and new (experimental) features to make this an exciting release for all kinds of users. For us, it definitely is.
We have a release candidate for v0.5.1 (Package at PyPI, Tag at GitHub). There are some additions, but we also prepare for significant API changes that will come obligatory with v0.6. When upgrading from v0.5.0 to v0.5.1, there should be no changes required for you code. (This is not true if you use features that are explicitly marked “experimental”. Those may change without notice.)
Noticeable changes include:
- The component
Transformeris now named
- You can now combine
- Having energy stored in a
GenericStoragecan now have a cost.
- You can now give an
Investmentobject as the
nominal_value. We considered this more intuitive than working with two mutually exclusive different keyword arguments.
- Tons of improvements in the (still experimental) MultiPeriod optimisation.
Again, there are transitional wrappers, so nothing should break when updating from v0.5.0, using the new API should be voluntary (you get a warning) for now. It would be nice if you test if your solph v0.5 code still works with this RC. We are aiming for a final release of v0.5.1 by the end of August.
We are happy to announce oemof.solph v0.5.0 (codename “Rigorous refactoring”) . This release brings an extreme shift towards more user focused design:
- Clean definition of time indexes: You need N+1 points in time do define N time spans.
- Parts of the energy system graph are now clearly structured into
flows. This adds some extra words to imports but makes the underlying logic more transparent.
- Public and private API are be more distinguished now. (‘_’ signifies private, public API is defined in init files.)
- Experimental code is now sitting in sub-modules called
- The flow arguments
summed_maxnow have the more descriptive names
- Keyword arguments are now explicit. This will make it easier to find the correct arguments and will also catch typos. Custom attributes can be added using the argument
custom_attributes. Those will be passed down the class hierarchy and can (possibly) be handled in parent classes.
inactivity_costsas an option for
Flows. Inactivity costs is a cost for times where a Flow is not operated.
- Examples are added to the documentation. (The format of the examples could be improved, though.)
Besides these changes, there is one big thing that has happened “under the hood”. It is now possible to combine
NonConvex and Investment optimisation in the same
Earlier this month, we released solph 0.4.4. It focuses on two new “custom components” (This is how we call in-developments components that are not yet part of the stable API.) There are:
- PiecewiseLinearTransformer. A transformer model with one input and one output and an arbitrary piecewise linear conversion function.
- Enhanced SinkDSM (sink allowing for demand side management)
- Renamed keyword argument
- Renamed approaches
- Added modelling approach
DLR(PhD thesis of Hans Christian Gils 2015)
- Included load shedding
shift_timeand other parameters for
- Included investments in DSM
- Normalized keyword arguments
- Renamed keyword argument
Further, some smaller changes made it into the release:
- Check number of
- Allow conversion factor of zero for
- Split code into submodules
- Move CI-Tests from Travis to github