Skip to content
Snippets Groups Projects
Commit f505b014 authored by David Dorchies's avatar David Dorchies
Browse files

Merge branch 'devel' into 591-macrorugo-mise-a-jour-de-la-formule-f-h-a-partir-de-cassan-2023

parents 1c1d33f5 fce44230
No related branches found
No related tags found
1 merge request!197Draft: Resolve "MacroRugo: Mise à jour de la formule f(h*) à partir de Cassan 2023"
Pipeline #140337 passed
Showing
with 197 additions and 81 deletions
......@@ -7,10 +7,12 @@
/src/assets/docs
/release
/build
/docs/pdf_build
# dependencies
/node_modules
/src/date_revision.ts
/ngsw-config.json
# IDEs and editors
/.idea
......
......@@ -79,19 +79,34 @@ test:
script:
- npm run e2e
build:
.build:
stage: build
only:
- pushes
- tags
- schedules
- web
artifacts:
expire_in: 10 min
paths:
- dist/
script:
- npm run build -- --base-href=/cassiopee/$CI_COMMIT_REF_NAME/
# -baseref option is used by npm to set the npm_config_basehref environment variable
# used in package.json
- npm run build-href -basehref=$BASEHREF
build-dev:
extends: .build
only:
- tags
- pushes
- schedules
- web
variables:
BASEHREF: "/cassiopee/$CI_COMMIT_REF_NAME/"
build-prod:
extends: .build
only:
- tags
- devel
variables:
BASEHREF: "/"
clean-stale-branches:
stage: clean-stale-branches
......@@ -109,7 +124,7 @@ deploy-dev:
- tags
- web
dependencies:
- build
- build-dev
script:
# Copie de la branche / du tag
- ./scripts/deploy-version.sh $CI_COMMIT_REF_NAME $DEV_LOGIN $DEV_HOST $DEV_PATH
......@@ -120,7 +135,7 @@ deploy-ovh-dev:
only:
- devel
dependencies:
- build
- build-prod
script:
# Copie de la branche / du tag
- ./scripts/deploy-version.sh prod-devel $PROD_LOGIN $PROD_HOST $PROD_DEV_PATH
......@@ -131,7 +146,7 @@ deploy-prod:
variables:
- $CI_COMMIT_REF_NAME == "stable"
dependencies:
- build
- build-prod
script:
- ./scripts/deploy-version.sh prod $PROD_LOGIN $PROD_HOST $PROD_PATH
......
{
"spellright.language": [
"fr"
],
"spellright.documentTypes": [
"latex",
"plaintext",
"markdown"
],
"cSpell.words": [
"Cassan",
"DICHO",
"MACRORUGO",
"fdescribe",
"jalhyd",
"nghyd",
"prms"
]
}
\ No newline at end of file
......@@ -14,7 +14,7 @@ Requirements for developping Cassiopee can be achieved by manually install the r
* npm
* python3
* pandoc ^2 (optional, for PDF documentation only)
* texlive (optional, for PDF documentation only)
* texlive, texlive-bibtex-extra, texlive-latex-extra, latexmk (optional, for PDF documentation only)
Building the HTML documentation requires MkDocs and some extensions:
......
......@@ -49,7 +49,8 @@
],
"scripts": [
"node_modules/marked/marked.min.js",
"node_modules/katex/dist/katex.min.js"
"node_modules/katex/dist/katex.min.js",
"node_modules/katex/dist/contrib/auto-render.min.js"
],
"allowedCommonJsDependencies": [
"chartjs-plugin-zoom",
......
......@@ -8,7 +8,7 @@ It allows the calculation of the value of one of the following quantities:
- Pipe diameter (m)
- Total head loss (m)
- Pipe length (m)
- Singular pressure loss coefficient (m)
- Singular pressure loss coefficient
The total head loss is the sum of the linear head losses \(J_L\) obtained from the Lechapt and Calmon abacuses and singular \(J_S\) depending on the above coefficient.
......
# Pressure loss
This module computes linear head losses in a circular pipe with the following laws:
- [Lechapt et Calmon](lechapt-calmon.md)
- [Strickler](strickler.md)
The following values can be computed:
- Flow (m<sup>3</sup>/s)
- Pipe diameter (m)
- Total pressure loss (m)
- Pipe length (m)
- Singular head loss coefficient
The total pressure loss is the sum of linear losses \(J_{lin}\), according to the used law, and singular losses \(J_{loc}\) depending on the above coefficient.
## Singular pressure loss
$$ J_{loc} = K_{loc} \frac{V^2}{2g}$$
Given&nbsp;:
- \(K_{loc}\)&nbsp;: singular head loss coefficient
- \(V\)&nbsp;: water speed in the pipe (\(V = 4 Q / \pi / D^2\))
## Linear head loss coefficient
$$ K_{lin} = \frac{2g J_{lin}}{V^2} $$
## Darcy head loss coefficient
$$ f_D = \frac{2g J D}{l_T V^2} $$
# Strickler formula
This linear head loss law is parameterised by the Stricker coefficient \(K_S\).
The other law parameters are shared with all pressure loss formulas:
- \(Q\) : flow (m<sup>3</sup>/s)
- \(D\) : pipe diameter (m)
- \(l_T\) : pipe length (m)
$$J_L=\frac{l_T.Q^2}{(K_S.\pi.D^2/4)^2.(D/4)^{4/3}}$$
......@@ -6,12 +6,44 @@
Larinier (1992) suggests the following equation:
$$Q = \mu b H_1\sqrt{2g \Delta H}$$
$$Q = C_d b H_1\sqrt{2g \Delta H}$$
With:
* *b* the slot width in m
* *H<sub>1</sub>* the head on the slot m
* *μ* the discharge coefficient (equal to 0.65 by default).
* *C<sub>d</sub>* the discharge coefficient.
The discharge coefficient *μ* may vary from 0.65 for a sharp-edged slot to more than 0.85 when the slot profile is rounded.
# Discharge coefficient **C<sub>d</sub>** for the submerged slot formula (vertical slot fish ladder)
The discharge coefficient **C<sub>d</sub>** is an important parameter for the design of vertical slot weirs. This term is integrated in the formula of conveyance of a submerged slot, which connects the transited flow with the fall between basins, the upstream head on the slot and its width.
**For single vertical slot weirs**, model-reduced studies and numerical simulations have determined average values of discharge coefficients for different configurations, for a typical slot and baffle geometry defined from vertical slot weirs built in France (Figure 1). A different slot and baffle geometry can induce deviations from the average values of the discharge coefficients according to the configurations indicated below.
![Figure 1](fente_noyee_fig1.png)
*Figure 1: typical slot and baffle geometry from which the discharge coefficient values were determined (Ballu, 2017)*
* **Under smooth apron conditions (no bottom roughness) and in the absence of a weir in the slot**, Wang *et al.* (2010) and Ballu *et al.* (2017) showed that the value of **C<sub>d</sub>** is not significantly influenced by discharge and depends mainly on the slope **S** (%) and the ratio of the basin width **B** to the slot width **b** (**B/b**).
* **Under smooth invert conditions (no bottom roughness) with the presence of a weir in the slot**, under 3 configurations of weir heights **h<sub>s</sub>/b** related to slot width **b** (**h<sub>s</sub>/b** = 0.5, 1, and 1.5), Ballu *et al.* (2015) and Ballu (2017) showed that the value of **C<sub>d</sub>** is not significantly influenced by discharge, and is mainly influenced by slope **S**, aspect ratio **B/b**, and weir height **h<sub>s</sub>/b**.
* **Under apron conditions with precast bottom roughnesses and in the absence of a weir in the slot**, with evenly distributed roughnesses of height **h<sub>r</sub>/b** = 2/3 and diameter **Ø<sub>r</sub>/b** = 1/2, under 2 configurations of densities **d<sub>r</sub>** of 10% and 15%, Ballu *et al.* (2017) and Ballu (2017) showed that the value of **C<sub>d</sub>** is not significantly influenced by discharge, and is mainly influenced by slope **S**, aspect ratio **B/b**, and the presence of the bottom roughness **d<sub>r</sub>**.
Depending on these different configurations, the average values of the discharge coefficient range from about 0.62 to nearly 0.88 (Figure 2).
![Figure 2](fente_noyee_fig2.png)
*Figure 2: average values and uncertainties (95% confidence intervals, k = 2) of the discharge coefficients according to the slope S and the shape ratio B/b, for different configurations: (A) smooth raft without weir in the slot, (B) bottom roughness d<sub>r</sub> = 10% without weir in the slot, (C) bottom roughness d<sub>r</sub> = 15% without weir in the slot, (D) weir in the slot h<sub>s</sub>/b = 0.5 and smooth raft, (E) weir in the slot h<sub>s</sub>/b = 1 and smooth raft, (F) weir in the slot h<sub>s</sub>/b = 1.5 and smooth raft*
**For passes with double vertical slots**, **C<sub>d</sub>** values between 0.75 and 0.80 are commonly used for recently constructed devices with longitudinal slopes between 4% and 5.5%. Studies are under way to clarify the influence of different configurations on discharge coefficients and their corresponding values.
**Bibliography:**
Ballu A., Pineau G., Calluaud D., David L. (2015). Experimental study of the influence of sills on vertical slot fishway flow. *36<sup>th</sup> IAHR World Congress*, 7p.
Ballu A. (2017). Étude numérique et expérimentale de l’écoulement turbulent au sein des passes à poissons à fentes verticales. Analyse de l’écoulement tridimensionnel et instationnaire. *Thèse de l’Université de Poitiers*, 223p.
Ballu A., Calluaud D., Pineau G., david L. (2017). Experimental study of the influence of macro‑roughnesses on vertical slot fishway flows. *La Houille Blanche*, 2: 9-14.
Wang R.W., David L., Larinier M. (2010). Contribution of experimental fluid mechanics to the design of vertical slot fish passes. *Knowledge and Management of Aquatic Ecosystems*, 396(2).
docs/en/calculators/structures/fente_noyee_fig1.png

18.8 KiB

docs/en/calculators/structures/fente_noyee_fig2.png

337 KiB

# Lechapt et Calmon
Ce module permet de calculer les pertes de charge dans une conduite circulaire à partir des abaques de Lechapt et Calmon.
Il permet le calcul de la valeur d'une des grandeurs suivantes&nbsp;:
- Débit (m<sup>3</sup>/s)
- Diamètre du tuyau (m)
- Perte de charge totale (m)
- Longueur du tuyau (m)
- Coefficient de perte de charge singulière (m)
La perte de charge totale est la somme des pertes de charges linéaires \(J_L\) obtenue à partir des abaques de Lechapt et Calmon et singulières \(J_S\) dépendantes du coefficient ci-dessus.
## Formule de Lechapt et Calmon
# Formule de Lechapt et Calmon
La formule de Lechapt et Calmon est basée sur des ajustements de la formule de [Cyril Frank Colebrook](http://fr.wikipedia.org/wiki/Cyril_Frank_Colebrook)&nbsp;:
$$J_L=\frac{l_T}{1000}L.Q^M.D^{-N}$$
$$J_{lin}=\frac{l_T}{1000}L.Q^M.D^{-N}$$
Avec&nbsp;:
- \(J_L\)&nbsp;: la perte de charge linéaire en m&nbsp;;
- \(J_{lin}\)&nbsp;: la perte de charge linéaire en m&nbsp;;
- \(l_T\)&nbsp;: la longueur du tuyau en m&nbsp;;
- \(Q\)&nbsp;: le débit en L/s&nbsp;;
- \(D\)&nbsp;: le diamètre de la conduite en m&nbsp;;
......@@ -43,21 +29,4 @@ Le tableau de correspondance des coefficients est le suivant&nbsp;:
| Tuyau hydrauliquement lisse - 0.05 &le; D &le; 0.2 | 0.00 | 0.916 | 1.78 | 4.78 |
| Tuyau hydrauliquement lisse - 0.25 &le; D &le; 1 | 0.00 | 0.971 | 1.81 | 4.81 |
Table: Matériaux et coefficients utilisés dans la formule de Lechapt et Calmon
## Perte de charge singulière
$$ J_S = K_S \frac{V^2}{2g}$$
Avec&nbsp;:
- \(K_S\)&nbsp;: le coefficient de perte de charge singulière
- \(V\)&nbsp;: la vitesse de l'eau dans la conduite (\(V = 4 Q / \pi / D^2\))
## Coefficient de perte de charge linéaire
$$ K_L = \frac{2g J_L}{V^2} $$
## Coefficient de perte de charge de Darcy
$$ f_D = \frac{2g J D}{l_T V^2} $$
Table&nbsp;: Matériaux et coefficients utilisés dans la formule de Lechapt et Calmon
# Perte de charge
Ce module permet de calculer les pertes de charge dans une conduite circulaire à partir des lois suivantes donnant les pertes de charge linéaires :
- [Lechapt et Calmon](lechapt-calmon.md)
- [Strickler](strickler.md)
Il permet le calcul de la valeur d'une des grandeurs suivantes&nbsp;:
- Débit (m<sup>3</sup>/s)
- Diamètre du tuyau (m)
- Perte de charge totale (m)
- Longueur du tuyau (m)
- Coefficient de perte de charge locale (singulière) (m)
La perte de charge totale est la somme des pertes de charges linéaires \(J_{lin}\) (données par la loi utilisée) et locales \(J_{loc}\) dépendantes du coefficient ci-dessus.
## Perte de charge locale
$$ J_{loc} = K_{loc} \frac{V^2}{2g}$$
Avec&nbsp;:
- \(K_{loc}\)&nbsp;: le coefficient de perte de charge locale
- \(V\)&nbsp;: la vitesse de l'eau dans la conduite (\(V = 4 Q / \pi / D^2\))
## Coefficient de perte de charge linéaire
$$ K_{lin} = \frac{2g J_{lin}}{V^2} $$
## Coefficient de perte de charge de Darcy
$$ f_D = \frac{2g J D}{l_T V^2} $$
# Formule de Strickler
Cette loi de perte de charge linéaire est paramétrée par le coefficient de Stricker \(K_S\).
Les autres paramètres sont ceux communs à tous les calculs de perte de charge&nbsp;:
- \(Q\) : débit (m<sup>3</sup>/s)
- \(D\) : diamètre du tuyau (m)
- \(l_T\) : Longueur du tuyau (m)
$$J_L=\frac{l_T.Q^2}{(K_S.\pi.D^2/4)^2.(D/4)^{4/3}}$$
......@@ -6,12 +6,44 @@
Larinier (1992) propose l'équation suivante&nbsp;:
$$Q = \mu b H_1\sqrt{2g \Delta H}$$
$$Q = C_d b H_1\sqrt{2g \Delta H}$$
Avec&nbsp;:
* *b* la largeur de la fente en m&nbsp;
* *H<sub>1</sub>* la charge sur la fente m&nbsp;
* *μ* le coefficient de débit (égal à 0.65 par défaut).
* *C<sub>d</sub>* le coefficient de débit.
Le coefficient de débit *μ* peut varier de 0.65 pour une fente à arêtes vives à plus de 0.85 lorsque le profil de la fente est arrondi.
# Coefficient de débit C<sub>d</sub> pour la formule de la fente noyée (passe à bassins à fente verticale)
Le coefficient de débit **C<sub>d</sub>** est un paramètre important pour le dimensionnement des passes à fente(s) verticale(s). Ce terme est intégré dans la formule de débitance d’un déversoir de type fente noyée, qui relie le débit transité avec la chute entre bassins, la charge amont sur la fente et sa largeur.
**Pour les passes à simple fente verticale**, des études réalisées sur modèle-réduit et par simulations numériques ont permis de déterminer des valeurs moyennes de coefficients de débit selon différentes configurations, pour une géométrie type de fente et de déflecteurs définie à partir des passes à fentes verticales construites en France (Figure 1). Une géométrie différente de fente et de déflecteur peut induire des écarts par rapport aux valeurs moyennes des coefficients de débit selon les configurations indiquées ci-dessous.
![Figure 1](fente_noyee_fig1.png)
*Figure 1 : géométrie type de fente et de déflecteurs à partir de laquelle les valeurs des coefficients de débit ont été déterminés (Ballu, 2017)*
* **Dans des conditions de radier lisse (sans rugosité de fond) et en l’absence de seuil dans la fente**, Wang *et al.* (2010) et Ballu *et al.* (2017) ont montré que la valeur du **C<sub>d</sub>** n’est pas significativement influencée par le débit et dépend principalement de la pente **S** (%) et du rapport entre la largeur des bassins **B** et la largeur de la fente **b** (**B/b**).
* **Dans des conditions de radier lisse (sans rugosité de fond) avec la présence d’un seuil dans la fente**, selon 3 configurations de hauteurs de seuils **h<sub>s</sub>** rapportées à la largeur de la fente **b** (**h<sub>s</sub>/b** = 0.5, 1 et 1.5), Ballu *et al.* (2015) et Ballu (2017) ont montré que la valeur du **C<sub>d</sub>** n’est pas significativement influencée par le débit, et qu’elle est principalement influencée par la pente **S**, le rapport de forme **B/b** et la hauteur des seuils **h<sub>s</sub>**.
* **Dans des conditions de radier avec rugosités de fond préfabriquées et en l’absence de seuil dans la fente**, avec des rugosités régulièrement réparties de hauteur **h<sub>r</sub>/b** = 2/3 et de diamètre **Ø<sub>r</sub>/b** = 1/2, selon 2 configurations de densités **d<sub>r</sub>** de 10% et 15%, Ballu *et al.* (2017) et Ballu (2017) ont montré que la valeur du **C<sub>d</sub>** n’est pas significativement influencée par le débit, et qu’elle est principalement influencée par la pente **S**, le rapport de forme **B/b** et la présence de la rugosité de fond **d<sub>r</sub>**.
* En fonction de ces différentes configurations, les valeurs moyennes du coefficient de débit s’étalent d’environ 0.62 jusqu’à près de 0.88 (Figure 2).
![Figure 2](fente_noyee_fig2.png)
*Figure 2 : valeurs moyennes et incertitudes (intervalles de confiance à 95%, k=2) des coefficients de débits selon la pente S et le rapport de forme B/b pour différentes configurations&nbsp;: (A) radier lisse sans seuil dans la fente, (B) rugosités de fond d<sub>r</sub> = 10% sans seuil dans la fente, (C) rugosités de fond d<sub>r</sub> = 15% sans seuil dans la fente, (D) seuil dans la fente h<sub>s</sub>/b = 0.5 et radier lisse, (E) seuil dans la fente h<sub>s</sub>/b = 1 et radier lisse, (F) seuil dans la fente h<sub>s</sub>/b = 1.5 et radier lisse*
**Pour les passes à doubles fentes verticales**, des valeurs de **C<sub>d</sub>** comprises entre 0.75 et 0.80 sont couramment retenues pour les dispositifs construits récemment avec des pentes longitudinales entre 4% et 5.5%. Des études sont en cours afin de préciser l’influence de différentes configurations sur les coefficients de débits et leurs valeurs correspondantes.
**Bibliographie :**
Ballu A., Pineau G., Calluaud D., David L. (2015). Experimental study of the influence of sills on vertical slot fishway flow. *36<sup>th</sup> IAHR World Congress*, 7p.
Ballu A. (2017). Étude numérique et expérimentale de l’écoulement turbulent au sein des passes à poissons à fentes verticales. Analyse de l’écoulement tridimensionnel et instationnaire. *Thèse de l’Université de Poitiers*, 223p.
Ballu A., Calluaud D., Pineau G., david L. (2017). Experimental study of the influence of macro‑roughnesses on vertical slot fishway flows. *La Houille Blanche*, 2: 9-14.
Wang R.W., David L., Larinier M. (2010). Contribution of experimental fluid mechanics to the design of vertical slot fish passes. *Knowledge and Management of Aquatic Ecosystems*, 396(2).
docs/fr/calculators/structures/fente_noyee_fig1.png

18.8 KiB

docs/fr/calculators/structures/fente_noyee_fig2.png

337 KiB

......@@ -7,7 +7,7 @@ import { browser } from "protractor";
describe("ngHyd − start page", () => {
let page: AppPage;
beforeEach(() => {
beforeAll(() => {
page = new AppPage();
});
......
......@@ -10,7 +10,7 @@ describe("Check fields are empty in 'up/downstream elevations of a reach' calcul
let calcPage: CalculatorPage;
let prefPage: PreferencesPage;
beforeAll(async () => {
beforeAll(() => {
listPage = new ListPage();
navBar = new Navbar();
calcPage = new CalculatorPage();
......
import { ListPage } from "./list.po";
import { CalculatorPage } from "./calculator.po";
import { Navbar } from "./navbar.po";
import { browser, by, element } from "protractor";
......@@ -8,9 +7,8 @@ import { SideNav } from "./sidenav.po";
/**
* Calculate all modules of all examples
*/
describe("ngHyd − example sessions −", async () => {
describe("ngHyd − example sessions −", () => {
let listPage: ListPage;
let calcPage: CalculatorPage;
let navbar: Navbar;
let prefPage: PreferencesPage;
......@@ -18,7 +16,6 @@ describe("ngHyd − example sessions −", async () => {
beforeAll(() => {
jasmine.DEFAULT_TIMEOUT_INTERVAL = 100 * 1000;
listPage = new ListPage();
calcPage = new CalculatorPage();
navbar = new Navbar();
prefPage = new PreferencesPage();
......@@ -78,7 +75,5 @@ describe("ngHyd − example sessions −", async () => {
}
i++;
}
});
});
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment