A lot of improvements 🎉
Important
There is a main breaking change in this version. The constructor of the class ElectricalNetwork
has changed:
- it accepts keyword arguments only.
- it accepts the arguments
lines
,transformers
andswitches
in replacement of the argumentbranches
. - As a consequence,
- the results method
res_branches
has been removed. Please useres_lines
,res_transformers
andres_switches
methods instead. - the field
branches
does not exist anymore. Please use the fieldslines
,transformers
andswitches
.
- the results method
- A wheel for Python 3.13 is available.
- The wheels for Windows are now available. The problem was the same as the one of the
issue 28551 of the Matplotlib repository. - #237 Improvements of the Sphinx configuration.
- #262 Raise a proper error when a transformer is defined with null impedance.
- #259 The cache of the license object was not reset after the activation of a new license key.
- #258 #261 #263 Add basic plotting functionality in the new
roseau.load_flow.plotting
module. Theplot_interactive_map
function plots an electrical network on an interactive map using
the folium library and theplot_voltage_phasors
function plots the voltage phasors of a bus, load
or source in the complex plane. The revamped plotting section of the documentation demonstrates the
plotting functionalities available in Roseau Load Flow with examples. - #258 The documentation gained a new "advanced" section with a page on floating neutrals
and a page on potential references. - #257 #252 Updates to the
LineParameters
class:- The method
from_name_lv
, deprecated since version 0.6, has been removed. It can be easily
replaced by thefrom_geometry
method. - The method
from_name_mv
is deprecated. A new methodfrom_coiffier_model
is added with the
same functionality and more flexibility. The new method computes the ampacity of the line based
on Coiffier's model and works with different numbers of phases.
- The method
- #256 #250:
- Accept scalar values for the
powers
,currents
,impedances
parameters of the load classes. - Add
rlf.PositiveSequence
,rlf.NegativeSequence
andrlf.ZeroSequence
vectors for easier
creation of balanced quantities.
- Accept scalar values for the
- #255 Update the figures of loads and of voltage sources in the documentation to be compliant with the work
of #249. - #254 #251 Allow passing multiple phases to potential references. The
phase
attribute of thePotentialRef
is replaced byphases
. - #249 #248 Accept scalar values for the
voltages
parameter of theVoltageSource
class. - #247 Add
connect_neutral
parameter to the loads and sources constructor to specify if the
neutral is to be connected to the bus's neutral or to be left floating. This allows loads connected
to the same bus to have different neutral connections. The default behavior remains the same as
before where the neutral is connected when the bus has a neutral and floating otherwise. - #246 Improvements to the
rlf.converters
module:- Fix
series_phasor_to_sym
function with series that have different phases per element. - Make
calculate_voltages
take array-like potentials. - Improve typing of several functions.
- Fix
- #245 #244 Fix the
LineParameters.from_geometry
method to not crash when passed
unknown
insulator type orNone
. - Add
res_voltages
to theVoltageSource
class for symmetry with the other elements.
res_voltages
is always equal to the suppliedvoltages
for a voltage source. - #243 Fix cross-sectional area of DGS line types created from line elements and special case
invalid PwF line geographical coordinates table. - #240 Add tests for switches imported from DGS and improve warning and error messages.
- #235 BREAKING CHANGE: The constructor of the class
ElectricalNetwork
has changed:- it accepts keyword arguments only.
- it accepts the arguments
lines
,transformers
andswitches
in replacement of the argumentbranches
. - As a consequence,
- the results method
res_branches
has been removed. Please useres_lines
,res_transformers
andres_switches
methods instead. - the field
branches
does not exist anymore. Please use the fieldslines
,transformers
andswitches
.
- the results method
- #235 Move the
Switch
class into its own fileroseau/load_flow/models/switches.py
. - #235 #239 The JSON file format number is upgraded to the version 2. All the files in version 0 or 1
can still be read. Please upgrade them manually using the following code:path = "my_json_file.json" ElectricalNetwork.from_json(path).to_json(path)
- #235 The method
results_to_dict
now accepts the keyword-only argumentfull
which allows the export of all
the results of an element. - #235 Solve a bug concerning the accessors to the flexible powers result of flexible power loads. An unwanted
error was raised. - #235 Replace the occurrences of the
str.find
method by thestr.index
function. - #235 The method
to_graph
of the classElectricalNetwork
now retrieves a graph with additional data store
in the edges depending on the edge type: line, transformer or switch. - #242 Add optional data to the
TransformerParameters
class: manufacturer, efficiency and range. - #242 Fixed a bug in the unit of
q_min
andq_max
in the constructor ofFlexibleParameter
. - #242 Add equality operator for the classes
FlexibleParameter
,Control
andProjection
.