2024 user meeting in Nordhausen: Thanks for joining!

The last user meeting was the biggest we ever had. We had very productive and inspiring discussions about using oemof (especially solph). Because of the size we gathered opinions in subgroups instead of making decisions about future developments in the plenary. Another reason for this also led to some other changes: Typically, we start with user presentations showing use-cases as well as open questions. This, however was scheduled as a point of the agenda of the parallel RET.Con. So, instead of gradually going to the core, we started with developer topics.

Continue reading “2024 user meeting in Nordhausen: Thanks for joining!”

solph v0.5.2: Next Network

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”

oemof user meeting 2024.02

From 7th to 9th of Februar 2024, we will have our annual user meeting, this time held in Nordhausen. It is set in the framework of the to the  7th Regenerative Energy Technology Conference (RET.Con) and the 20th anniversary celebrations of the course renewable energy technology (“Regenerative Energietechnik”) at the Nordhausen University of Applied Sciences.

With the program of the RET.Con being released, we now also created a (tentative) agenda for the oemof meeting 2024.02. In contrast to previous years, we will have the topics targeting more experienced users (like planning the development roadmap) at the first day. This allows to have topics also targeting beginners (e.g. the user presentations) open for visitors to the RET.Con.

If you plan to come, please register writing an email to usermeeting@oemof.org, telling your name and (if applicable) your institution. We still have open slot for user presentations and tutorials. So if you want to present what you are doing using oemof or even share some hands-on experience, we will try to fit your contribution in. Note that it is okay to give a presentation in German. If possible, we prefer to have at least slides or spoken word in English. In the past, user presentations were also used for problem statements to find help on a particular topic and to have “reversed tutorials” asking for guidance. Both are options also for this user meeting.

As always, there are no fees for the oemof user meeting. You have to organise the trip (travel and accommodation) by yourself, meals are self-paid (and optional, you are free to organise something separate). So, don’t be confused by the RET.Con conference fee, this one does not apply for us.

2023-11 dev days: Retrospective

oemof developers discussing possible implementations

In the last days, we intensively discussed the next steps in the development of oemof. It was very intense and exciting to see other enthusiastic developers in person, drafting solutions at the white board and reviewing code in the presence of the persons who wrote it. We discussed long-term plans but also very particular problems, e.g. how to rewrite up-times in solph so that they are meaningful in models with time-steps of varying length. The most noticeable topics were mostly considering solph:

Continue reading “2023-11 dev days: Retrospective”

oemof.network v0.5.0a5 released

At the last user meeting, we decided that there should be more pre-releases. So, here we go: Today, there is a version “continuous clean-up” of oemof.network (github.com: oemof-network/v0.5.0a5, oemof.network · PyPI). As the code name suggests, it is mostly a clean-up without adding new functionality. However, the code quality improved quite a lot and we have prepared the deletion of code that is unused or seems to be unnecessary. So, please check out this alpha release to tell if we are wrong.

Update: Deprecating the use of network.Source and others in favour of network.Node only makes sense when the latter is really part of the public API. so, we’re at v0.5.0 alpha 5 already.

oemof user meeting meets RET.Con

For next year’s user meeting, we take a special opportunity: It will be held from 7th to 9th of Februar 2024, partly in parallel to the  7th Regenerative Energy Technology Conference (RET.Con) in Nordhausen. The oemof user meeting will be in its established style, but we want to make it possible for attendees to the conference (which is held mostly in German) to visit presentations and tutorials given at the user meeting. Additionally, it is possible to add an entry for the proceedings of the conference.

This is also why we are announcing the user meeting already before the dev days have taken place: For the RET.Con, there is a deadline for abstract submission at the 30th of September 2023. Note that papers should be in German but presentations may also be in English. If you do not want to publish a paper, you can hand in a headline and a very brief summary for a talk until the 15th of November, so that an announcement can be made at the RET.Con. At last, of course you can ignore this early deadline and present something at the user meeting without having it announced at the conference.

If you want to want to submit something for the RET.Con via the oemof user meeting, please send an email to usermeeting@oemof.org. All emails to this address will also be forwarded to the organisers in Nordhausen.

solph v0.5.1: Compliant Converter

Today, oemof.solph v0.5.1, code name “compilant converter” has been released. (Package at PyPITag 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.

oemof dev days – November 2023

We opened registration for the omof developer meeting 2023. (As suggested by the local organisers, Fraunhofer UMSICHT, they are now “dev days”.) The meeting will take place in the Osterfelder Straße 3 in Oberhausen from the 22nd to the 24th of November 2023. At the moment, the agenda is still blank and leaves plenty room for ideas. It will be continuously developed at https://github.com/oemof/oemof/wiki/Meeting-2023.11 – depending on suggestions from registrees.

We always try to keep the entry barrier as low as possible. The meeting is targeted to everybody who wants to contribute to oemof. Of course this includes the further development of the packages, but in the past there have been also non programming-related sessions, e.g. about the content of this website. We have no conference fee, you only have to organise and pay for travel, accommodation, and food. To register, please send an email to meetings@oemof.org or post a comment at https://github.com/oemof/oemof/issues/112.

RC1 of solph 0.5.1

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 Transformer is now named Converter.
  • You can now combine Investment and OffsetConverter.
  • Having energy stored in a GenericStorage can now have a cost.
  • You can now give an Investment object 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.