@@ -17,9 +17,106 @@ og:description: See what's new in the latest release of Roseau Load Flow !
1717
1818# Changelog
1919
20+ ## Version 0.11.0
21+
22+ This release adds official support for Python 3.13 and adds a new experimental backward-forward solver.
23+
24+ ### Breaking changes
25+
26+ - The ` min_voltage ` and ` max_voltage ` of ` Bus ` have been replaced by ` nominal_voltage ` (phase-to-phase,
27+ in V), a ` min_voltage_level ` (unitless) and a ` max_voltage_level ` (unitless).
28+ - The ` type ` parameter of ` TransformerParameters ` constructors becomes ` vg ` for vector group. Replace
29+ ` type="single" ` by ` vg="Ii0" ` and ` type="center" ` by ` vg="Iii0" ` .
30+ - The ` type ` attribute of ` TransformerParameters ` now returns ` three-phase ` , ` single-phase ` or
31+ ` center-tapped ` . Use ` TransformerParameters.vg ` to get the vector group.
32+ - The names of the transformers in the catalogue have been modified to add voltage levels and vector
33+ groups. Use ` rlf.TransformerParameters.get_catalogue() ` to see the updated catalogue.
34+ - The ` max_current ` , ` section ` , ` insulator_type ` and ` conductor_type ` parameters of the ` LineParameters `
35+ class are renamed to ` ampacities ` , ` sections ` , ` insulators ` and ` materials ` respectively. The new
36+ parameters accept arrays of values, one per conductor.
37+ - The enumeration ` InsulatorType.UNKNOWN ` is removed. Please use ` None ` if the insulator is unknown.
38+ - The definition of constant-current loads is modified to be the magnitudes of the currents and their
39+ phase shift from the voltages instead of the absolute phase shift. Currents should no longer be
40+ rotated by 120° to be in sync with the voltages.
41+
42+ ### Deprecations
43+
44+ - The enumerated classes ` InsulatorType ` and ` ConductorType ` are renamed to ` Insulator ` and ` Material `
45+ respectively. Their old names are deprecated and will be removed in a future release.
46+ - The deprecated method ` LineParameters.from_name_mv ` is removed.
47+
48+ ### Detailed changes
49+
50+ - {gh-pr}` 293 ` Fixed ` loading ` calculation for lines and transformers
51+ - {gh-pr}` 291 ` Fixed several bugs in JSON serialization and deserialization.
52+ - {gh-pr}` 289 ` {gh-issue}` 264 ` Improve the ` TransformerParameters ` class and the transformers catalogue
53+
54+ - Add 15kV transformers to the catalogue (SE and FT)
55+ - Add single-phase transformers to the catalogue (Schneider Imprego)
56+ - Add step-up transformers to the catalogue (Cahors "Serie Jaune")
57+ - Use the correct LV side no-load voltage as defined in the datasheets (some 400V became 410V)
58+ - Revert {gh-pr}` 282 ` to keep the IEC 600076 names ` uhv ` and ` ulv ` for the transformer voltages.
59+ - Replace the ` type ` parameter of ` TransformerParameters ` constructors by ` vg ` for vector group.
60+ - ` TransformerParameters.type ` now returns ` three-phase ` , ` single-phase ` or ` center-tapped ` . Use
61+ ` TransformerParameters.vg ` to get vector group.
62+ - Modify the names of the transformers in the catalogue to add voltage levels and vector groups
63+
64+ - {gh-pr}` 285 ` {gh-issue}` 279 ` Add maximum loading for lines and transformers.
65+
66+ - The constructors of ` Transformer ` and ` Line ` now accept a unitless ` max_loading ` parameter equal
67+ to 1 (=100%) by default.
68+ - The parameter ` max_currents ` of ` LineParameters ` is now called ` ampacities ` .
69+ - The ` Line ` class gained a new property ` max_currents ` that returns the maximal admissible currents
70+ (in Amps) for each conductor: ` line.max_current = line.parameters.ampacity * line.max_loading ` .
71+ - The ` res_violated ` property of ` Transformer ` and ` Line ` now take into account this ` max_loading ` .
72+ - The ` Line ` and ` Transformer ` classes have a new ` res_loading ` property to compute the loading of
73+ the element:
74+ - ` line.res_loading = line.res_currents / line.parameters.ampacities `
75+ - ` transformer.res_loading = sum(transformer.res_powers) / transformer.parameters.sn `
76+
77+ - {gh-pr}` 286 ` The deprecated method ` LineParameters.from_name_mv ` is removed.
78+ - {gh-pr}` 283 ` Several changes related to the ` LineParameters ` :
79+
80+ - The ` max_current ` , ` section ` , ` insulator_type ` and ` conductor_type ` parameters are renamed to
81+ ` max_currents ` , ` sections ` , ` insulators ` and ` materials ` respectively. The new parameters accept
82+ arrays of values, one per conductor.
83+ - The class method ` from_geometry ` now accepts several additional arguments related to the neutral
84+ (` material_neutral ` , ` insulator_neutral ` , ` max_current_neutral ` )
85+ - The enumerated classes ` InsulatorType ` and ` ConductorType ` are renamed to ` Insulator ` and ` Material ` .
86+ Their old names are deprecated and will be removed in a future release.
87+ - The insulator ` UNKNOWN ` is removed. Please use ` None ` if the insulator is unknown.
88+ - The insulator ` NONE ` is added. It must be used to describe conductors without insulator.
89+ - The catalogue has now several additional columns related to the neutral parameters (resistance,
90+ reactance, susceptance, material, insulator, maximal current). The ` get_catalogue ` and the
91+ ` from_catalogue ` methods have been changed to accept filter on the columns (` material_neutral ` ,
92+ ` insulator_neutral ` , ` section_neutral ` )
93+
94+ - {gh-pr}` 281 ` Add official support for Python 3.13.
95+ - {gh-issue}` 278 ` {gh-pr}` 280 ` Modify the ` Bus ` voltage limits:
96+
97+ - The ` min_voltage ` and ` max_voltage ` parameters and attributes of ` Bus ` have been replaced by
98+ ` nominal_voltage ` (phase-to-phase, in V), a ` min_voltage_level ` (unitless) and a ` max_voltage_level `
99+ (unitless).
100+ - ` Bus ` gained a new property ` res_voltage_levels ` that returns the voltage levels of the bus
101+ as a percentage of the nominal voltage;
102+ - The JSON file format also changed to take into account these changes. If a ` min_voltage ` or
103+ ` max_voltage ` existed in a file of a previous version, they are lost when upgrading the file.
104+
105+ - {gh-pr}` 277 ` Fix the definition of constant current loads to be the magnitudes of the currents
106+ and their phase shift from the voltages instead of the absolute phase shift. Currents should no
107+ longer be rotated by 120° to be in sync with the voltages.
108+ - {gh-pr}` 276 ` Add a backward-forward solver (experimental).
109+ - {gh-pr}` 275 ` Use [ uv] ( https://docs.astral.sh/uv/ ) instead of [ Rye] ( https://rye.astral.sh/ ) as dependency manager.
110+ - {gh-pr}` 273 ` Dynamically calculate the stacklevel of the first frame outside of ` roseau.load_flow ` for warnings
111+ - {gh-pr}` 272 ` {gh-issue}` 271 ` : Fix segfault when phases of a potential reference are not the same as the bus phases.
112+ - {gh-pr}` 270 ` Use [ Rye] ( https://rye.astral.sh/ ) instead of [ Poetry] ( https://python-poetry.org/ ) as dependency manager.
113+ - {gh-pr}` 269 ` Optimize the SVG files of the documentation.
114+ - {gh-pr}` 268 ` Set up ReadTheDoc to automatically compile the documentation.
115+ - {gh-pr}` 267 ` Add a section in the documentation on Google Colab secrets.
116+
20117## Version 0.10.0
21118
22- - A wheel for Python 3.13 is also available.
119+ - A wheel for Python 3.13 is available.
23120- The wheels for Windows are now available. The problem was the same as the one of the
24121 [ issue 28551] ( https://github.com/matplotlib/matplotlib/issues/28551 ) of the Matplotlib repository.
25122- {gh-pr}` 237 ` Improvements of the Sphinx configuration.
0 commit comments