Releases: RoseauTechnologies/Roseau_Load_Flow
Version 0.10.0
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
.
Version 0.9.1
Several improvements to better support importing PowerFactory models.
-
#231 Add
LineParameters.from_power_factory
andTransformerParameters.from_power_factory
methods to easily import PowerFactory lines and transformer models into Roseau Load Flow. -
#230 Improve the algorithm for assigning potential references for DGS networks.
-
#229 Several fixes and improvements to the PowerFactory import:
- Update the "Export Definition Folder" bundled with Roseau Load Flow as a pfd file;
- Support lines with missing type ID. This is the case when the
TypLne
objects are inherited
from an external library in PowerFactory and not included in the project being exported; A
LineParameters
object is automatically created for these lines; - Support "General Load (
ElmLod
)" elements; - Preserve Geometry information on buses and branches;
- Improve handling of phases of several elements. Previously, phases were hard-coded.
- Fix the unit of the power of static generators;
- Fix the re-sizing of the matrices of line types without neutral elements;
- Fix the total power of "MV Loads (
ElmLodmv
)" to take into account its generation power; - Fix all loads to no longer ignore the scale factor of the power;
- Fix the sign of the reactive power of MV and LV loads
- Fix the ground connection to the source bus
- And many more...
Please refer to the Data Exchange page for more information.
Note
Windows binaries (wheels) are temporarily unavailable since version 0.9.0. If you need them, please open an issue on GitHub.
What's Changed
- Several fixes and improvements to DGS support by @alihamdan in #229
- Improve asssigning of potential refs in DGS networks by @alihamdan in #230
- Add from_power_factory methods to parameters classes by @alihamdan in #231
- Version 0.9.1 by @benoit9126 in #233
Full Changelog: v0.9.0...v0.9.1
Version 0.9.0
A lot of improvements 🎉 !
- #227 Sources and loads are now allowed to have floating neutrals. This means that a load/source
withphases="abcn"
can now be connected to a bus withphases="abc"
. - #225 The
calculate_voltages
function now accepts and return pint quantities. - MacOS wheels for roseau-load-flow-engine are now published on PyPI. This means that
pip install roseau-load-flow
should now work on macOS. - Added support for running in Google Colab documents.
- Fixed a bug in license checks caching on Windows.
- Added support for Numpy 2.0.
- #222 #223
from_catalogue()
methods of the electrical network and transformer
and line parameters now perform "full match" comparison on textual inputs. If you need the old
behavior, use regular expression wild cards.*
in the input string. - #220 #221 Add
LineParameters.from_open_dss
andTransformerParameters.from_open_dss
methods to
easily import OpenDSS lines and transformer models into Roseau Load Flow. More information is
available in the documentation of these methods. - #210 #219 Add a parameter to
LineParameters.from_catalogue
to choose the number
of phases of the created line parameters object. - #218 Add
Transformer.res_power_losses
to get the total power losses in a transformer. - #217 Add an ID override to
TransformerParameters.from_catalogue
similar to
LineParameters.from_catalogue
. - #216 #217 BREAKING CHANGE: Rename the
id
parameter ofTransformerParameters
catalogue methods toname
to be consistent withLineParameters
.
If you call these methods by keyword arguments, make sure to update your usage of
TransformerParameters.from_catalogue(id="xxx")
toTransformerParameters.from_catalogue(name="xxx")
. - #212 BREAKING CHANGE: Modify the constructor of
TransformerParameters
to take thez2
andym
parameters directly instead of the open and short circuit tests parameters. You can still
create an object from these tests using thefrom_open_and_short_circuit_tests
constructor. This
change comes with other changes toTransformerParameters
, notably:- The
z2
,ym
,k
, andorientation
are now always available as attributes on the instance - The
to_zyk
method is deprecated in favour of the direct attribute access on the instance. This
method will be removed in a future version - The parameters
i0
,p0
,psc
, andvsc
are now optional. They return None for instances
created usingz2
andym
directly - The JSON representation of
TransformerParameters
has changed, but it is still compatible with
the old representation.
- The
What's Changed
- Modify the
TransformerParameters
constructor by @benoit9126 in #212 - Modify TransformerParameters from_catalogue method by @alihamdan in #217
- Add Transformer.res_power_losses by @alihamdan in #218
- Allow users to specify nb phases of line parameters from catalogue by @alihamdan in #219
- Add from_open_dss method to line and transformer parameters by @alihamdan in #221
- Fix from_catalogue textual match with literal string inputs by @alihamdan in #223
- Update the docs by @alihamdan in #224
- Make calculate_voltages unit aware by @alihamdan in #225
- Add a page about data exchange to the docs by @alihamdan in #226
- Allow floating neutrals for loads and sources by @alihamdan in #227
- Version 0.9.0 by @benoit9126 in #228
Full Changelog: v0.8.1...v0.9.0
Version 0.8.1
A correction and documentation improvement:
- #214 Solve a bug in the engine when using delta connected flexible loads.
- #213 Better detection of poorly connected elements as described in #209. It raises a proper error
message. - #211 Several improvements of the documentation:
- Add Open Graph metadata to the documentation page.
- Error on the susceptance unit in the tables of the
LineParameters
' catalogue. - Replot the networks of the catalogue (add a
H1
title, use the Raleway font, only plot the lines to add their
parameters id in the tooltip)
What's Changed
- Improvements of the documentation (opengraph, networks' catalogue plotting) by @benoit9126 in #211
- Poorly connected elements by @Saelyos in #213
- Version 0.8.1 by @benoit9126 in #215
Full Changelog: v0.8.0...v0.8.1
Version 0.8.0
Here comes the version 0.8.0 of Roseau Load Flow 🎉
The main changes are:
- The three-phase transformer model had issues that are now solved.
- A flexible power load can now have a zero power. This is useful for time-series simulations.
The detailed modifications are listed here:
- #207 Fix a bug in the zig-zag three-phase transformer model that led to incorrect active power flow in the
transformer. The bug affected the 50 kVA transformers that have the typeYzn11
in the catalogue. - #206 #187 Un-deprecate
results_to_dict/json
methods and remove deprecated
results_from_dict/json
methods. - #205 #200 Fix error when propagating the potentials from a voltage source with fewer phases
than the bus. - #204 #193 Remove restrictions on geometry types. Allow specifying the CRS of the geometries.
- #203 #186 Detect invalid element overrides when connecting a new element with the
same ID and type of an existing element. - #202 #188 Explicitly prevent instantiation of abstract classes.
- #201 #185 Add
type
attribute to the load classes and rename branchesbranch_type
attribute totype
for consistency. Please replacebranch.branch_type
bybranch.type
in your code.
In addition, loads data frames gained two new columns:type
indicating the load type: constant-(power
,current
,impedance
);- and
flexible
indicating if the load is flexible.
- #197 Fix a bug in three-phase transformer models that led to excessive reactive power flow in the transformer.
- #199 Add Schneider Electric EcoDesign transformers to the catalogue. These are tagged with the AA0Ak
efficiency class. Other internal data have been added to the catalogue for testing purposes. - #198 Simplify the storage of the transformer catalogues. This is an internal change that should not have
effects on user code. - #196 #194 Improve the error message when accessing
res_flexible_powers
on a non-flexible load
and relax the flexible parameters plotting methods to accept an array-like of voltages. - #195 Use
latexindent.pl
to automatically indent LaTeX files in the documentation. - #192 Speed up results access by up to 3x using several optimization techniques. This is especially
noticeable in timeseries simulations and when accessing results of large networks. - #184 Improve the documentation to have a better SEO (sitemap, metadata and canonical URLs). The navigation
menu has also been improved. - #183 #181 Update the networks catalogue to better represent the real networks.
LV loads are made single-phase, MV sources are connected in delta, and MV buses lost their neutral.
Voltage, current, and power limits are added to the buses, lines, and transformers.
The line parameters IDs are also updated to match the new line parameters catalogue. - #182 Improve the error message when trying to access results on the network before running the load flow.
- #189 Allow flexible loads to have a null active theoretical power.
What's Changed
- Improve error message when network results do not exist by @alihamdan in #182
- Update networks catalogue by @alihamdan in #183
- DOC: Improve metadata and navigation menu by @benoit9126 in #184
- Null active power for flexible loads by @Saelyos in #189
- Bump pre-commit/action from 3.0.0 to 3.0.1 by @dependabot in #190
- Optimize results by @alihamdan in #192
- DOC: LatexIndent by @benoit9126 in #195
- Small improvements to flexible loads by @alihamdan in #196
- Simplify the transformers catalogue by @alihamdan in #198
- Update the transformers catalogue by @alihamdan in #199
- Fix a bug in 3-ph transformer models by @alihamdan in #197
- Add load.type and rename branch.branch_type by @alihamdan in #201
- Explicitly prevent the instantiation of abstract classes by @alihamdan in #202
- Detect invalid element overrides by @alihamdan in #203
- Remove restrictions on geometry types and allow custom CRS by @alihamdan in #204
- Improve potentials propagation by @Saelyos in #205
- Un-deprecate results_to_dict and remove results_from_dict by @alihamdan in #206
- Transformer tests by @benoit9126 in #207
- Version 0.8.0 by @benoit9126 in #208
Full Changelog: v0.7.0...v0.8.0
Version 0.7.0
Important
Starting with this version, Roseau Load Flow is no longer supplied as a SaaS. The software is
available as a standalone Python library. Please contact us at [email protected] in order to get a license key.
This release includes:
- Fix a bug in the engine: it was impossible to change the parameters of center-tapped and single phase transformers.
- #179 Fix a bug in the propagation of potentials when a center-tapped transformer is used without neutral at the primary side.
- #178 #176 Merge the
results_to_json
,results_from_json
,results_to_dict
andresults_from_dict
methods of theElectricalNetwork
andElement
s classes into the methodsto_json
,from_json
,to_dict
andfrom_dict
respectively. The oldresults_
methods are deprecated and will be removed in a future release. The new methods will include the results by default, but you can passinclude_results=False
to exclude them. - #175 #174 Fix JSON serialization of network with line parameters created from the catalogue.
- #173 Remove the conda installation option.
It also includes all the modifications of the alpha release #171 :
- #168 #166 Fix initial potentials' propagation.
- #167 #161 Add a catalogue of lines using the IEC standards. You can use the method
LineParameters.get_catalogue()
to get a data frame of the available lines and the methodLineParameters.from_catalogue()
to create a line from the catalogue. Several line types, conductor material, and insulation types have been updated. Physical constants have been updated to match the IEC standards where applicable. - #167 The class
LineParameters
now takes optional argumentsline_type
,conductor_type
,insulator_type
andsection
. These parameters are accessible as properties. They are filled automatically when creating a line from the catalogue or from a geometry. - #167 Replace all
print_catalogue()
methods byget_catalogue()
methods that return a data frame instead of printing the catalogue to the console. - #167 Enumeration classes no longer have a
from_string
method, you can call the enumeration class directly with the string value to get the corresponding enumeration member. Case-insensitive behavior is preserved. - #167 #122 Add checks on line height and diameter in the
LineParameters.from_geometry()
alternative constructor. This method will try to guess a default conductor and insulation type ifNone
is provided. - #163 BREAKING CHANGE: roseau-load-flow is no longer a SaaS project. Starting with version 0.7.0, the software is distributed as a standalone Python package. You need a license to use it for commercial purposes. See the documentation for more details. This comes with a huge performance improvement but requires a breaking change to the API:
- The
ElectricalNetwork.solve_load_flow()
method no longer takes anauth
argument. - To activate the license, you need to call
roseau.load_flow.activate_license("MY LICENSE KEY")
or set the environment variableROSEAU_LOAD_FLOW_LICENSE_KEY
(preferred) before callingElectricalNetwork.solve_load_flow()
. More information in the documentation. - Several methods on the
FlexibleParameter
class that previously requiredauth
are changed. Make sure to follow the documentation to update your code.
- The
- #163 #158 Fix
ElectricalNetwork.res_transformers
returning an empty dataframe when max_power is not set. - #163 Several unused exception codes were removed. An
EMPTY_NETWORK
code was added to indicate that a network is being created with no elements. - #163 Remove the
ElectricalNetwork.res_info
attribute.ElectricalNetwork.solve_load_flow()
now returns the tuple (number of iterations, residual). - #163 Remove the
Bus.clear_short_circuits()
andElectricalNetwork.clear_short_circuits()
methods. It is currently not possible to clear short-circuits from the network. - #163 Improve performance of network creation and results access.
- #163 Attributes
phases
andbus
are now read-only on all elements. - #151 Require Python 3.10 or newer.
What's Changed
- Update to Python 3.10 by @alihamdan in #151
- Bump conda-incubator/setup-miniconda from 2 to 3 by @dependabot in #152
- Bump actions/upload-pages-artifact from 2 to 3 by @dependabot in #153
- Bump actions/deploy-pages from 2 to 4 by @dependabot in #154
- Bump actions/setup-python from 4 to 5 by @dependabot in #155
- Bump actions/configure-pages from 3 to 4 by @dependabot in #156
- Bump actions/upload-artifact from 3 to 4 by @dependabot in #157
- Fix res_transformers returning an empty dataframe by @alihamdan in #163
- Moving away from SaaS, step 1 by @alihamdan in #164
- Moving away from SaaS, step 2 by @Saelyos in #165
- Potentials propagation by @Saelyos in #168
- Add lines catalogue and get_catalogue method by @alihamdan in #167
- Add missing changelog entries by @alihamdan in #170
- Version 0.7.0-alpha by @benoit9126 in #171
- Bump actions/cache from 3 to 4 by @dependabot in #172
- Remove conda by @benoit9126 in #173
- Fix bug when serializing line parameters with numpy values by @alihamdan in #175
- Merge and deprecate results serialization methods by @alihamdan in #178
- Bug in
propagate_potentials
with "center" transformer types by @benoit9126 in #179 - Version 0.7.0 by @benoit9126 in #180
Full Changelog: v0.6.0...v0.7.0
Version 0.7.0-alpha
Important
Starting with version 0.7.0, Roseau Load Flow will no longer be supplied as a SaaS. The software will
be available as a standalone Python library. Please contact us at [email protected] in order to get a license key.
- #168 #166 Fix initial potentials' propagation.
- #167 #161 Add a catalogue of lines using the IEC standards. You can use the method
LineParameters.get_catalogue()
to get a data frame of the available lines and the method
LineParameters.from_catalogue()
to create a line from the catalogue. Several line types, conductor
material, and insulation types have been updated. Physical constants have been updated to match the
IEC standards where applicable. - #167 The class
LineParameters
now takes optional argumentsline_type
,conductor_type
,
insulator_type
andsection
. These parameters are accessible as properties. They are filled
automatically when creating a line from the catalogue or from a geometry. - #167 Replace all
print_catalogue()
methods byget_catalogue()
methods that return a
data frame instead of printing the catalogue to the console. - #167 Enumeration classes no longer have a
from_string
method, you can call the enumeration
class directly with the string value to get the corresponding enumeration member. Case-insensitive
behavior is preserved. - #167 #122 Add checks on line height and diameter in the
LineParameters.from_geometry()
alternative constructor. This method will try to guess a default conductor and insulation type if
none is provided. - #163 BREAKING CHANGE: roseau-load-flow is no longer a SaaS project. Starting with version
0.7.0, the software is distributed as a standalone Python package. You need a license to use it for
commercial purposes. See the documentation for more details. This comes with a huge performance
improvement but requires a breaking change to the API:- The
ElectricalNetwork.solve_load_flow()
method no longer takes anauth
argument. - To activate the license, you need to call
roseau.load_flow.activate_license("MY LICENSE KEY")
or set the environment variableROSEAU_LOAD_FLOW_LICENSE_KEY
(preferred) before calling
ElectricalNetwork.solve_load_flow()
. More information in the documentation. - Several methods on the
FlexibleParameter
class that previously requiredauth
are changed. Make
sure to follow the documentation to update your code.
- The
- #163 #158 Fix
ElectricalNetwork.res_transformers
returning an empty dataframe
when max_power is not set. - #163 Several unused exception codes were removed. An
EMPTY_NETWORK
code was added to indicate
that a network is being created with no elements. - #163 Remove the
ElectricalNetwork.res_info
attribute.ElectricalNetwork.solve_load_flow()
now
returns the tuple (number of iterations, residual). - #163 Remove the
Bus.clear_short_circuits()
andElectricalNetwork.clear_short_circuits()
methods. It is currently not possible to clear short-circuits from the network. - #163 Improve performance of network creation and results access.
- #163 Attributes
phases
andbus
are now read-only on all elements. - #151 Require Python 3.10 or newer.
Version 0.6.0
Note
This is the last release to support Python 3.9!
A new version with the following improvement/bug correction:
- #149 #145 Add custom pint wrapper for better handling of pint arrays.
- #148 #122 deprecate
LineParameters.from_name_lv()
in favour of the more generic
LineParameters.from_geometry()
. The method will be removed in a future release. - #142 #136 Add
Bus.res_voltage_unbalance()
method to get the Voltage Unbalance
Factor (VUF) as defined by the IEC standard IEC 61000-3-14. - #141 #137 Add
ElectricalNetwork.to_graph()
to get anetworkx.Graph
object
representing the electrical network for graph theory studies. Install with the"graph"
extra to
get networkx.
ElectricalNetwork
also gained a newbuses_clusters
property that returns a list of sets of
IDs of buses that are connected by a line or a switch. This can be useful to isolate parts of the
network for localized analysis. For example, to study a LV subnetwork of a MV feeder. Alternatively,
to get the cluster certain bus belongs to, you can useBus.get_connected_buses()
. - #141 Add official support for Python 3.12. This is the last release to support Python 3.9.
- #138 Add network constraints for analysis of the results.
- Buses can define minimum and maximum voltages. Use
bus.res_violated
to see if the bus has
over- or under-voltage. - Lines can define a maximum current. Use
line.res_violated
to see if the loading of any of the
line's cables is too high. - Transformers can define a maximum power. Use
transformer.res_violated
to see if the transformer
loading is too high. - The new fields also appear in the data frames of the network.
- Buses can define minimum and maximum voltages. Use
- #133 #126 Add Qmin and Qmax limits of flexible parameters.
- #132 #101 Document extra utilities including converters and constants.
- #131 #127 Improve the documentation of the flexible loads.
- Add the method
compute_powers
method to theFlexibleParameter
class to compute the resulting flexible powers
for a given theoretical power and a list of voltage norms. - Add the
plot_control_p
,plot_control_q
andplot_pq
methods to theFlexibleParameter
class to plot the
control curves and control trajectories. - Add the extra
plot
to installmatplotlib
alongsideroseau-load-flow
.
- Add the method
- #131 Correction of a bug in the error message of the powers setter method.
- #130 Mark some internal attributes as private, they were previously marked as public.
- #128 Add the properties
z_line
,y_shunt
andwith_shunt
to theLine
class. - #125 Speed-up build of conda workflow using mamba.
What's Changed
- Improve conda workflow by @benoit9126 in #125
- Add some shortcuts to the Line class by @benoit9126 in #128
- Fix pint warnings and remove conditional import by @alihamdan in #129
- Mark internal attributes as private by @alihamdan in #130
- Add a doc page about converters and constants by @alihamdan in #132
- Flexible load documentation ++ by @benoit9126 in #131
- Add Qmin and Qmax limits by @Saelyos in #133
- Bump actions/checkout from 3 to 4 by @dependabot in #134
- Improve catalogue printing on dark background and narrow screens by @alihamdan in #135
- Add network constraints for load flow analysis by @alihamdan in #138
- Add API reference to the models pages by @alihamdan in #139
- Add support for Python 3.12 and networkx graphs by @alihamdan in #141
- Add voltage unbalance calculation by @alihamdan in #142
- Make the installation page more beginner friendly by @alihamdan in #143
- Fix typing of numpy arrays by @alihamdan in #144
- Improve the typing of pint wrapped method by @alihamdan in #147
- Deprecate
LineParameters.from_name_lv
method by @alihamdan in #148 - Add custom pint wrapper by @Saelyos in #149
- Version 0.6.0 by @benoit9126 in #150
Full Changelog: v0.5.0...v0.6.0
Version 0.5.0
New version! 🎉
Main changes:
- Short circuit computation
- Single-phase and center- tapped transformers
- Catalogues for networks and transformers
- Improvement of the documentation
- Docker image not maintained anymore
Exhaustive changelog:
- #121 #68 Improvements of the
LineParameters
constructor:- Delete the
LineModel
class - Simplify the
from_dict
method - Rename and refactor the method
from_lv_exact
intofrom_geometry
. - Add documentation for the
LineParameters
alternative constructors. - Rename
InsulationType
intoInsulatorType
. - Allow the letter "U" for "Underground" line type (only "S" for "Souterrain" in French was accepted). The same
with the letter "O" for "Overhead" line type (only "A" for "Aérien" in French was accepted). - Remove the field
"model"
from the JSON serialization ofLineParameters
.
- Delete the
- #120 Fix phases of flexible power results.
- #119 Add explicit error message for singular jacobian.
- #118 #95
- Add a catalogue of three-phase MV/LV distribution transformers.
- Remove the class method
TransformerParameters.from_name
.
- #117 Add prettier to pre-commit
- #116
- Add a catalogue of networks.
- Add a plotting page to the documentation.
- #115
- Reformat the tutorials in the documentation.
- Split the "Advanced" tutorial in several smaller files.
- Remove the Docker installation option.
- #114 Use Pint >=0.21 to have the percent unit.
- #113 Raise an error when accessing the results of
disconnected elements. - #112 Make the geometry serialization optional.
- #106 Improvements for non-euclidean projections.
- #104 Remove
roseau.load_flow.utils.BranchType
. - #99 Add
Line.res_series_currents
andLine.res_shunt_currents
properties to get the currents in the series and shunt components
of lines. Also addedElectricalNetwork.res_lines
that contains the series losses and currents
of all the lines in the network. The propertyElectricalNetwork.res_lines_losses
was removed. - #100 Fix the
Yz
transformers. - #97 Add the model section to the documentation.
- #96
- Add single-phase transformer.
- Add center-tapped transformer.
- Remove the
roseau.load_flow.utils.TransformerType
enumeration.
- #93 Add short-circuit computation.
- #92
- Add the changelog in the documentation.
- Use NodeJs 20 in the Dockerfile.
- Correction of a dead link in the README.
What's Changed
- Post 0.4.0 release bug by @benoit9126 in #92
- Short circuits by @Saelyos in #93
- Update pre-commit by @benoit9126 in #94
- Single-phase and split phase transformers by @Saelyos in #96
- Do not hide function signature when using
ureg.wraps
by @alihamdan in #98 - Documentation by @benoit9126 in #97
- Add properties to get the line series and shunt currents by @alihamdan in #102
- Rename
Bus.short_circuit
toadd_short_circuit
by @alihamdan in #103 - Remove BranchType and use strings instead by @alihamdan in #104
- Make internal class attributes private by @alihamdan in #105
- Update non-euclidean projections by @Saelyos in #106
- Make dgs available for engine by @Saelyos in #107
- Documentation fixes by @alihamdan in #108
- Bump actions/upload-pages-artifact from 1 to 2 by @dependabot in #109
- Temporarily disable problematic link in the docs by @alihamdan in #110
- Make the geometry serialization optional by @Saelyos in #112
- Error when accessing results of disconnected elements by @benoit9126 in #113
- Update pint minimal requirement by @benoit9126 in #114
- Reformat tutorials and delete docker by @benoit9126 in #115
- Catalogue of networks by @benoit9126 in #116
- Add prettier to pre-commit by @benoit9126 in #117
- Add a catalogue of transformers by @benoit9126 in #118
- Add explicit error message for singular jacobian by @Saelyos in #119
- Fix flexible powers by @alihamdan in #120
- Line parameters by @benoit9126 in #121
- Shorter github links in the changelog by @alihamdan in #123
- Version 0.5.0 by @benoit9126 in #124
Full Changelog: v0.4.0...v0.5.0
Version 0.4.0
New features
- Add different solving methods.
- Increase default alpha values for flexible parameters.
- Rename
precision
andfinal_precision
totolerance
andresidual
- Rename isolation into insulation
- Improve performances for large networks
- Raise error for bad transformer parameters
- Rename
resolution_method
intosolver
Documentation
- Correction of small errors in the documentation
- Add some LaTeX images from the LaTeX documentation
- Point the docs to conda-forge instead of GitHub release page
- Add links to the website/GitHub/LinkedIn of Roseau Technologie
What's Changed
- DOC: LaTeX images by @benoit9126 in #72
- Update the conda docs by @alihamdan in #75
- Bump actions/deploy-pages from 1 to 2 by @dependabot in #77
- Raise error for bad transformer parameters by @Saelyos in #79
- Improve performances for large networks by @Saelyos in #80
- Solvers review by @alihamdan in #83
- Add solvers by @Saelyos in #82
- Add a changelog file by @benoit9126 in #84
- Rename
precision
andfinal_precision
by @benoit9126 in #85 - Rename isolation into insulation by @benoit9126 in #86
- [DOC] Add american standards in LaTeX generated figures by @benoit9126 in #87
- Solver update by @Saelyos in #88
- Update dependencies, change Self type by @Saelyos in #89
- Modification before release 0.4.0 by @benoit9126 in #91
- Version 0.4.0 by @Saelyos in #90
Full Changelog: v0.3.0...v0.4.0