Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DOC: Improve metadata and navigation menu #184

Merged
merged 3 commits into from
Feb 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions doc/.htaccess
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
RewriteEngine On

# WWW -> no-WWW
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L,NE,QSA]

# HTTP -> HTTPS
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,NE,QSA]

# HSTS
Header set Strict-Transport-Security "max-age=10886400; includeSubDomains; preload"
21 changes: 18 additions & 3 deletions doc/Changelog.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,22 @@
---
myst:
html_meta:
"description lang=en": |
Release History of Roseau Load Flow - Three-phase unbalanced load flow solver in a Python API by Roseau
Technologies.
"description lang=fr": |
Historique des versions de Roseau Load Flow - Solveur d'écoulement de charge triphasé et déséquilibré dans une
API Python par Roseau Technologies.
"keywords lang=fr": version, solveur, simulation, réseau, électrique, bus
"keywords lang=en": changelog, solver, simulation, distribution grid, bus, model
---

# Changelog

## Unreleased

- {gh-pr}`184` Improve the documentation to have a better SEO (sitemap, metadata and canonical URLs). The navigation
menu has also been improved.
- {gh-pr}`183` {gh-issue}`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.
Expand All @@ -15,7 +30,7 @@ Starting with version 0.7.0, Roseau Load Flow is no longer supplied as a SaaS. T
a standalone Python library.
```

- The documentation is moved from GitHub Pages to https://www.roseau-load-flow.roseautechnologies.com/.
- The documentation is moved from GitHub Pages to <https://www.roseau-load-flow.roseautechnologies.com/>.
- Fix a bug in the engine: it was impossible to change the parameters of center-tapped and single phase transformers.
- {gh-pr}`179` Fix a bug in the propagation of potentials when a center-tapped transformer is used without neutral at
the primary side.
Expand Down Expand Up @@ -145,7 +160,7 @@ a standalone Python library.
- {gh-pr}`93` Add short-circuit computation.
- {gh-pr}`92`
- Add the changelog in the documentation.
- Use NodeJs 20 in the Dockerfile.
- Use Node.js 20 in the Dockerfile.
- Correction of a dead link in the README.

## Version 0.4.0
Expand Down Expand Up @@ -191,7 +206,7 @@ a standalone Python library.

<!-- Local Variables: -->
<!-- mode: gfm -->
<!-- fill-column: 100 -->
<!-- fill-column: 120 -->
<!-- coding: utf-8 -->
<!-- ispell-local-dictionary: "british" -->
<!-- End: -->
22 changes: 19 additions & 3 deletions doc/Installation.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,18 @@
---
myst:
html_meta:
"description lang=en": |
Installation of Roseau Load Flow in a Python environment - Simulation of smart and unbalanced electrical
distribution networks.
"description lang=fr": |
Installation de Roseau Load Flow dans un environnement Python - Simulation des réseaux de distribution
électriques intelligents et déséquilibrés.
"keywords lang=fr": |
Roseau, load flow, python, écoulement de charge, écoulement de puissance, réseau de distribution, triphasé,
déséquilibré
"keywords lang=en": Roseau, Load flow, python, power flow, distribution grid, three-phase, multiphase, unbalanced
---

# Installation

Please select one of the following installation methods that best suits your workflow.
Expand All @@ -8,7 +23,7 @@ If you are a beginner in Python, please note that the commands below must be exe
to the Python console prompt `>>>`.
```

## 1. Using `pip`
## Using `pip`

`roseau-load-flow` is available on [PyPI](https://pypi.org/project/roseau-load-flow/). It can be
installed using pip with:
Expand All @@ -30,7 +45,8 @@ $ python -m pip install roseau-load-flow
````

`````{tip}
It is recommended to work in a virtual environment to isolate your project. Create and activate a virtual environment before installing the package. You can create one with:
It is recommended to work in a virtual environment to isolate your project. Create and activate a virtual environment
before installing the package. You can create one with:

````{tab} Windows

Expand Down Expand Up @@ -93,7 +109,7 @@ the corresponding functions. They can be installed with the
1. `plot`: installs _matplotlib_ for the plotting functions
2. `graph` installs _networkx_ for graph theory analysis functions

## 2. Using `pip` in Jupyter Notebooks
## Using `pip` in Jupyter Notebooks

If you are using Jupyter Notebooks, you can install `roseau-load-flow` directly from a notebook
cell with:
Expand Down
24 changes: 21 additions & 3 deletions doc/License.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,30 @@
(license)=
---
myst:
html_meta:
"description lang=en": |
Depending on your status, Roseau Load Flow is available with several types of free or paid licences. A trial
key is also available.
"description lang=fr": |
En fonction de votre statut, Roseau Load Flow est disponible avec plusieurs types de licences gratuites ou
payantes. Une clef d'essai est également disponible.
"keywords lang=fr": solveur, simulation, réseau, électrique, licence, open-source, gratuit, essai
"keywords lang=en": simulation, distribution grid, solver, open-source, free, test
---

# License
(license-page)=

# Get and activate your licence

(license-types)=

## Commercial and free licences

This project is partially open source. The source code of this repository is available under the
[BSD 3-Clause License](https://github.com/RoseauTechnologies/Roseau_Load_Flow/blob/main/LICENSE.md).

The solver used in this project is not open source. A license has to be purchased to use it. To
obtain a personal or commercial license, please contact us at contact@roseautechnologies.com.
obtain a personal or commercial license, please contact us at
[contact@roseautechnologies.com](mailto:contact@roseautechnologies.com).

For networks with less than 11 buses (up to 10 buses), the license key `A8C6DA-9405FB-E74FB9-C71C3C-207661-V3`
can be used free of charge. For example, this key can be used to follow the getting started guide.
Expand Down
23 changes: 18 additions & 5 deletions doc/Solvers.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,19 @@
---
myst:
html_meta:
"description lang=en": |
With Roseau Load Flow you can choose between two methods: Newton-Raphson and Goldstein and Price - Three-phase
unbalanced load flow solver in a Python API by Roseau Technologies.
"description lang=fr": |
Avec Roseau Load Flow choisissez entre deux méthodes: Newton-Raphson et Goldstein and Price. Solveur
d'écoulement de charge triphasé et déséquilibré dans une API Python par Roseau Technologies.
"keywords lang=fr": simulation, réseau, électrique, Goldstein and Price, Newton-Raphson, solveur
"keywords lang=en": simulation, distribution grid, Goldstein and Price, Newton-Raphson, solver
---

(solvers)=

# Solvers
# General information

The goal is to compute the voltages at each bus and the currents and powers flow in each branch of
the network. The computation must respect the Kirchhoff's laws and the constraints of the network.
Expand Down Expand Up @@ -29,7 +42,7 @@ In code, $\varepsilon$ can be set with `en.solve_load_flow(tolerance=...)` (by d
There are several solvers to solve this kind of problems. In _Roseau Load Flow_, the following
solvers are available:

## Newton-Raphson
# Newton-Raphson

This is the classical [_Newton-Raphson_ method](https://en.wikipedia.org/wiki/Newton%27s_method).

Expand All @@ -51,11 +64,11 @@ within a maximum number of iterations (modify with `en.solve_load_flow(max_itera
the maximum number of iterations is exceeded, the solver did not converge and the execution
fails.

### Parameters
## Parameters

The _Newton-Raphson_ solver doesn't accept any parameter.

## Goldstein and Price
# Goldstein and Price

This is a variant of the classical _Newton-Raphson_ solver with a linear search.

Expand Down Expand Up @@ -109,7 +122,7 @@ $t$ is then used to compute $x_{k+1} = x_k + t d(x_k)$
The _Goldstein and Price_ variant is thus as fast as the classical _Newton-Raphson_ while being
more robust.

### Parameters
## Parameters

The _Goldstein and Price_ solver accepts the following parameters:

Expand Down
13 changes: 13 additions & 0 deletions doc/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,10 @@
"sphinx_inline_tabs",
"sphinxcontrib.googleanalytics",
"sphinxcontrib.bibtex",
"sphinx_sitemap",
]
myst_enable_extensions = ["deflist", "smartquotes", "replacements", "dollarmath"]
myst_html_meta = {"robots": "all"}
add_module_names = False
napoleon_numpy_docstring = False
python_use_unqualified_type_names = True
Expand All @@ -63,6 +65,12 @@
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = ["images/*"]

# A list of paths that contain extra files not directly related to the documentation, such as robots.txt or .htaccess.
# Relative paths are taken as relative to the configuration directory. They are copied to the output directory.
# They will overwrite any existing file of the same name.
# As these files are not meant to be built, they are automatically excluded from source files.
html_extra_path = ["robots.txt", ".htaccess"]

# -- Options for autodoc ----------------------------------------------------
autodoc_default_options = {"ignore-module-all": False}
autodoc_member_order = "bysource"
Expand Down Expand Up @@ -151,3 +159,8 @@
"gh-issue": ("https://github.com/RoseauTechnologies/Roseau_Load_Flow/issues/%s", "GH%s"),
"gh-pr": ("https://github.com/RoseauTechnologies/Roseau_Load_Flow/pull/%s", "PR%s"),
}


# -- Options for sphinx-sitemap -----------------------------------------
html_baseurl = "https://roseau-load-flow.roseautechnologies.com/"
sitemap_url_scheme = "{link}" # default is {lang}{version}{link}
24 changes: 19 additions & 5 deletions doc/index.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,19 @@
# Roseau Load Flow
---
myst:
html_meta:
"description lang=en": |
Documentation of the Roseau Load Flow solver. Simulation of multiphase and unbalanced electrical networks by
Roseau Technologies.
"description lang=fr": |
Documentation du solveur d'écoulements de charge Roseau Load Flow. Simulation des réseaux électriques
multiphasés et déséquilibrés par Roseau Technologies.
"keywords lang=fr": |
Roseau, load flow, python, écoulement de charge, écoulement de puissance, réseau de distribution, triphasé,
déséquilibré
"keywords lang=en": Roseau, Load flow, python, power flow, distribution grid, three-phase, multiphase, unbalanced
---

# Welcome to the Roseau Load Flow documentation

`Roseau Load Flow` is a load flow solver capable of modeling 3-phase unbalanced power systems with
a wide variety of models for lines, transformers, loads, and sources. This software is developed
Expand All @@ -23,7 +38,6 @@ and newer and can be installed with:
```{toctree}
---
maxdepth: 2
caption: Installation
---
Installation
```
Expand Down Expand Up @@ -72,7 +86,8 @@ Read more about the license of this project:
```{toctree}
---
maxdepth: 2
caption: License
caption: More

---
License
```
Expand All @@ -82,7 +97,6 @@ License
```{toctree}
---
maxdepth: 2
caption: Changelog
---
Changelog
```
Expand All @@ -94,7 +108,7 @@ references:

```{toctree}
---
maxdepth: 3
maxdepth: 2
caption: API Reference
---
autoapi/roseau/load_flow/index
Expand Down
12 changes: 12 additions & 0 deletions doc/models/Bus.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,15 @@
---
myst:
html_meta:
"description lang=en": |
Buses in Roseau Load Flow - Three-phase unbalanced load flow solver in a Python API by Roseau Technologies.
"description lang=fr": |
Les bus dans Roseau Load Flow - Solveur d'écoulement de charge triphasé et déséquilibré dans une API Python par
Roseau Technologies.
"keywords lang=fr": simulation, réseau, électrique, bus, roseau load flow, modèle
"keywords lang=en": simulation, distribution grid, bus, model
---

# Bus

## Definition
Expand Down
13 changes: 13 additions & 0 deletions doc/models/Ground.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,16 @@
---
myst:
html_meta:
"description lang=en": |
Include Ground elements in your electrical model with Roseau Load Flow - Three-phase unbalanced load flow solver
in a Python API by Roseau Technologies.
"description lang=fr": |
Inclure des éléments Terre dans votre modèle de électrique avec Roseau Load Flow - Solveur d'écoulement de
charge triphasé et déséquilibré dans une API Python par Roseau Technologies.
"keywords lang=fr": simulation, réseau, électrique, terre, roseau load flow, modèle
"keywords lang=en": simulation, distribution grid, ground, earth, model
---

# Ground

## Definition
Expand Down
13 changes: 13 additions & 0 deletions doc/models/Line/Parameters.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,16 @@
---
myst:
html_meta:
"description lang=en": |
Parameters of line models in Roseau Load Flow - Three-phase unbalanced load flow solver in a Python API by
Roseau Technologies.
"description lang=fr": |
Les paramètres des modèles de ligne dans Roseau Load Flow - Solveur d'écoulement de charge triphasé et
déséquilibré dans une API Python par Roseau Technologies.
"keywords lang=fr": simulation, réseau, électrique, bus, roseau load flow, lignes, modèle
"keywords lang=en": simulation, distribution grid, switch, lines, model
---

(models-line_parameters-alternative_constructors)=

# Parameters
Expand Down
13 changes: 13 additions & 0 deletions doc/models/Line/ShuntLine.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,16 @@
---
myst:
html_meta:
"description lang=en": |
Shunt line models in Roseau Load Flow - three-phase unbalanced load flow solver in a Python API by Roseau
Technologies.
"description lang=fr": |
Les modèles de ligne Shunt dans Roseau Load Flow - solveur d'écoulement de charge triphasé et déséquilibré dans
une API Python par Roseau Technologies.
"keywords lang=fr": simulation, réseau, électrique, bus, roseau load flow, lignes, modèle
"keywords lang=en": simulation, distribution grid, switch, lines, model
---

# Shunt line

The first model of line which can be used is a PI model with series impedance and shunt admittance. The
Expand Down
13 changes: 13 additions & 0 deletions doc/models/Line/SimplifiedLine.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,16 @@
---
myst:
html_meta:
"description lang=en": |
Simplified line models in Roseau Load Flow - Three-phase unbalanced load flow solver in a Python API by Roseau
Technologies.
"description lang=fr": |
Les modèles de ligne simplifiés dans Roseau Load Flow - Solveur d'écoulement de charge triphasé et déséquilibré
dans une API Python par Roseau Technologies.
"keywords lang=fr": simulation, réseau, électrique, bus, roseau load flow, lignes, modèle
"keywords lang=en": simulation, distribution grid, switch, lines, model
---

# Simplified line

If the line is modeled with only series impedance, the model is simplified as there is no coupling
Expand Down
12 changes: 12 additions & 0 deletions doc/models/Line/index.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,15 @@
---
myst:
html_meta:
"description lang=en": |
Line models in Roseau Load Flow - Three-phase unbalanced load flow solver in a Python API by Roseau Technologies.
"description lang=fr": |
Les modèles de ligne dans Roseau Load Flow - Solveur d'écoulement de charge triphasé et déséquilibré dans une
API Python par Roseau Technologies.
"keywords lang=fr": simulation, réseau, électrique, bus, roseau load flow, lignes, modèle
"keywords lang=en": simulation, distribution grid, switch, lines, model
---

# Lines

## Definition
Expand Down
Loading
Loading