From 243f519e2fdc1b8f7fb62fff024dd5d6dbf5eeeb Mon Sep 17 00:00:00 2001
From: "francois.grand" <francois.grand@irstea.fr>
Date: Tue, 7 Nov 2017 16:16:54 +0100
Subject: [PATCH] =?UTF-8?q?-=20section=20param=C3=A9tr=C3=A9e=20:=20suppre?=
 =?UTF-8?q?sion=20du=20param=C3=A8tre=20cLog=20du=20constructeur,=20le=20m?=
 =?UTF-8?q?embre=20de=20ce=20type=20est=20cr=C3=A9=C3=A9=20syst=C3=A9matiq?=
 =?UTF-8?q?uement=20-=20remous=20:=20utilisation=20du=20membre=20cLog=20de?=
 =?UTF-8?q?=20la=20section=20comme=20log?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 spec/regime_uniforme_circ.spec.ts             | 20 ++++-----
 spec/regime_uniforme_puissance.spec.ts        | 30 ++++++-------
 spec/regime_uniforme_rect.spec.ts             | 24 +++++------
 spec/regime_uniforme_trapeze.spec.ts          | 24 +++++------
 spec/remous_rect_euler_pentefaible.spec.ts    | 14 +++----
 spec/remous_rect_euler_penteforte.spec.ts     | 35 +++++++---------
 spec/remous_rect_rk4_pentefaible.spec.ts      | 35 +++++++---------
 spec/remous_rect_rk4_penteforte.spec.ts       | 42 ++++++++-----------
 spec/remous_rect_trapezes_pentefaible.spec.ts | 42 ++++++++-----------
 spec/remous_rect_trapezes_penteforte.spec.ts  | 42 ++++++++-----------
 spec/remous_trapez.spec.ts                    | 15 +++----
 spec/section_param_circ_fluvial.spec.ts       |  4 +-
 spec/section_param_circ_torrentiel.spec.ts    |  2 +-
 spec/section_param_puiss_fluvial.spec.ts      |  4 +-
 spec/section_param_puiss_torrentiel.spec.ts   |  2 +-
 spec/section_param_rect_conv_newton.spec.ts   |  3 +-
 spec/section_param_rect_fluvial.spec.ts       |  4 +-
 spec/section_param_rect_torrentiel.spec.ts    |  2 +-
 spec/section_param_trapez_fluvial.spec.ts     |  4 +-
 spec/section_param_trapez_torrentiel.spec.ts  |  2 +-
 src/parameters.ts                             | 32 +++++++-------
 src/remous.ts                                 |  8 +++-
 src/section/section_circulaire.ts             |  4 +-
 src/section/section_puissance.ts              |  5 +--
 src/section/section_rectang.ts                |  4 +-
 src/section/section_trapez.ts                 |  4 +-
 src/section/section_type.ts                   |  4 +-
 27 files changed, 190 insertions(+), 221 deletions(-)

diff --git a/spec/regime_uniforme_circ.spec.ts b/spec/regime_uniforme_circ.spec.ts
index 93a96472..0136d78b 100644
--- a/spec/regime_uniforme_circ.spec.ts
+++ b/spec/regime_uniforme_circ.spec.ts
@@ -21,7 +21,7 @@ describe('Class RegimeUniforme / section circulaire :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnCirc(undefined, paramSect);
+            let sect = new cSnCirc(paramSect);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("D", 1e-8), 6.001);
@@ -37,7 +37,7 @@ describe('Class RegimeUniforme / section circulaire :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnCirc(undefined, paramSection);
+            let sect = new cSnCirc(paramSection);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Ks", 1e-8), 40.003);
@@ -53,7 +53,7 @@ describe('Class RegimeUniforme / section circulaire :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnCirc(undefined, paramSection);
+            let sect = new cSnCirc(paramSection);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("If"), 0.001);
@@ -68,7 +68,7 @@ describe('Class RegimeUniforme / section circulaire :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnCirc(undefined, paramSection);
+            let sect = new cSnCirc(paramSection);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Q"), 1.2);
@@ -83,7 +83,7 @@ describe('Class RegimeUniforme / section circulaire :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnCirc(undefined, paramSection);
+            let sect = new cSnCirc(paramSection);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Y"), 0.6613);
@@ -100,7 +100,7 @@ describe('Class RegimeUniforme / section circulaire :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnCirc(undefined, paramSect);
+            let sect = new cSnCirc(paramSect);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("D", 1e-8), 2);
@@ -116,7 +116,7 @@ describe('Class RegimeUniforme / section circulaire :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnCirc(undefined, paramSection);
+            let sect = new cSnCirc(paramSection);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Ks", 1e-8), 13.551);
@@ -132,7 +132,7 @@ describe('Class RegimeUniforme / section circulaire :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnCirc(undefined, paramSection);
+            let sect = new cSnCirc(paramSection);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("If"), 0.001);
@@ -147,7 +147,7 @@ describe('Class RegimeUniforme / section circulaire :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnCirc(undefined, paramSection);
+            let sect = new cSnCirc(paramSection);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Q"), 1.2);
@@ -162,7 +162,7 @@ describe('Class RegimeUniforme / section circulaire :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnCirc(undefined, paramSection);
+            let sect = new cSnCirc(paramSection);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Y"), 2);
diff --git a/spec/regime_uniforme_puissance.spec.ts b/spec/regime_uniforme_puissance.spec.ts
index 6790ce80..4f770d59 100644
--- a/spec/regime_uniforme_puissance.spec.ts
+++ b/spec/regime_uniforme_puissance.spec.ts
@@ -22,7 +22,7 @@ describe('Class RegimeUniforme / section puissance :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnPuiss(undefined, prms);
+            let sect = new cSnPuiss(prms);
             let ru = new RegimeUniforme(sect, false);
 
             check(ru.Calc("k"), 0.635);
@@ -38,7 +38,7 @@ describe('Class RegimeUniforme / section puissance :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnPuiss(undefined, prms);
+            let sect = new cSnPuiss(prms);
             let ru = new RegimeUniforme(sect, false);
 
             check(ru.Calc("LargeurBerge"), 3.473);
@@ -54,7 +54,7 @@ describe('Class RegimeUniforme / section puissance :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnPuiss(undefined, prms);
+            let sect = new cSnPuiss(prms);
             let ru = new RegimeUniforme(sect, false);
 
             check(ru.Calc("Ks", 1e-8), 33.774);
@@ -70,7 +70,7 @@ describe('Class RegimeUniforme / section puissance :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnPuiss(undefined, prms);
+            let sect = new cSnPuiss(prms);
             let ru = new RegimeUniforme(sect, false);
 
             check(ru.Calc("If", 0, 0.00001), 0.00071, 0.00001);
@@ -86,7 +86,7 @@ describe('Class RegimeUniforme / section puissance :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnPuiss(undefined, prms);
+            let sect = new cSnPuiss(prms);
             let ru = new RegimeUniforme(sect, false);
 
             check(ru.Calc("Q"), 1.421);
@@ -102,7 +102,7 @@ describe('Class RegimeUniforme / section puissance :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnPuiss(undefined, paramCnl);
+            let sect = new cSnPuiss(paramCnl);
             let ru = new RegimeUniforme(sect, false);
 
             check(ru.Calc("Y"), 0.742);
@@ -120,7 +120,7 @@ describe('Class RegimeUniforme / section puissance :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnPuiss(undefined, prms);
+            let sect = new cSnPuiss(prms);
             let ru = new RegimeUniforme(sect, false);
 
             let res: Result = ru.Calc("k");
@@ -138,7 +138,7 @@ describe('Class RegimeUniforme / section puissance :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnPuiss(undefined, prms);
+            let sect = new cSnPuiss(prms);
             let ru = new RegimeUniforme(sect, false);
 
             check(ru.Calc("k"), 0.933);
@@ -154,7 +154,7 @@ describe('Class RegimeUniforme / section puissance :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnPuiss(undefined, prms);
+            let sect = new cSnPuiss(prms);
             let ru = new RegimeUniforme(sect, false);
 
             check(ru.Calc("LargeurBerge"), 0.721);
@@ -170,7 +170,7 @@ describe('Class RegimeUniforme / section puissance :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnPuiss(undefined, prms);
+            let sect = new cSnPuiss(prms);
             let ru = new RegimeUniforme(sect, false);
 
             check(ru.Calc("Ks", 1e-8), 4.367);
@@ -186,7 +186,7 @@ describe('Class RegimeUniforme / section puissance :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnPuiss(undefined, prms);
+            let sect = new cSnPuiss(prms);
             let ru = new RegimeUniforme(sect);
             ru.dichoStartIntervalMaxSteps = 3;
 
@@ -205,7 +205,7 @@ describe('Class RegimeUniforme / section puissance :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnPuiss(undefined, prms);
+            let sect = new cSnPuiss(prms);
             let ru = new RegimeUniforme(sect);
             ru.dichoStartIntervalMaxSteps = 1;
 
@@ -224,7 +224,7 @@ describe('Class RegimeUniforme / section puissance :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnPuiss(undefined, prms);
+            let sect = new cSnPuiss(prms);
             let ru = new RegimeUniforme(sect, false);
 
             check(ru.Calc("If"), 0.001);
@@ -240,7 +240,7 @@ describe('Class RegimeUniforme / section puissance :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnPuiss(undefined, prms);
+            let sect = new cSnPuiss(prms);
             let ru = new RegimeUniforme(sect, false);
 
             check(ru.Calc("Q"), 10.993);
@@ -256,7 +256,7 @@ describe('Class RegimeUniforme / section puissance :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnPuiss(undefined, paramCnl);
+            let sect = new cSnPuiss(paramCnl);
             let ru = new RegimeUniforme(sect, false);
 
             check(ru.Calc("Y"), 0.742);
diff --git a/spec/regime_uniforme_rect.spec.ts b/spec/regime_uniforme_rect.spec.ts
index 3dd28219..1c7d9aad 100644
--- a/spec/regime_uniforme_rect.spec.ts
+++ b/spec/regime_uniforme_rect.spec.ts
@@ -23,7 +23,7 @@ describe('Class RegimeUniforme / section rectangulaire :', () => {
                 precDist, // précision
                 1 // YB=hauteur de berge
             );
-            let sect = new cSnRectang(undefined, prms, false);
+            let sect = new cSnRectang(prms, false);
             let ru = new RegimeUniforme(sect, false);
 
             check(ru.Calc("LargeurBerge"), 2.5);
@@ -39,7 +39,7 @@ describe('Class RegimeUniforme / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Ks", 1e-8), 30.619);
@@ -55,7 +55,7 @@ describe('Class RegimeUniforme / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
             let ru = new RegimeUniforme(sect, false);
 
             // nom variable à calculer, valeur de Ks
@@ -72,7 +72,7 @@ describe('Class RegimeUniforme / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Q"), 1.568);
@@ -88,7 +88,7 @@ describe('Class RegimeUniforme / section rectangulaire :', () => {
                 1.2 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Q"), 0.731);
@@ -104,7 +104,7 @@ describe('Class RegimeUniforme / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
             let ru = new RegimeUniforme(sect);
 
             // nom variable à calculer, valeur de Ks
@@ -126,7 +126,7 @@ describe('Class RegimeUniforme / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms, false);
+            let sect = new cSnRectang(prms, false);
             let ru = new RegimeUniforme(sect, false);
 
             check(ru.Calc("LargeurBerge"), 2.5);
@@ -142,7 +142,7 @@ describe('Class RegimeUniforme / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Ks", 1e-8), 9.041);
@@ -158,7 +158,7 @@ describe('Class RegimeUniforme / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
             let ru = new RegimeUniforme(sect, false);
 
             // nom variable à calculer, valeur de Ks
@@ -175,7 +175,7 @@ describe('Class RegimeUniforme / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Q"), 5.31);
@@ -191,7 +191,7 @@ describe('Class RegimeUniforme / section rectangulaire :', () => {
                 1.2 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Q"), 1.624);
@@ -207,7 +207,7 @@ describe('Class RegimeUniforme / section rectangulaire :', () => {
                 0.1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
             let ru = new RegimeUniforme(sect);
 
             // nom variable à calculer, valeur de Ks
diff --git a/spec/regime_uniforme_trapeze.spec.ts b/spec/regime_uniforme_trapeze.spec.ts
index 9639e8ad..4a08d1de 100644
--- a/spec/regime_uniforme_trapeze.spec.ts
+++ b/spec/regime_uniforme_trapeze.spec.ts
@@ -23,7 +23,7 @@ describe('Class RegimeUniforme / section trapèze :', () => {
                 1 // YB= hauteur de berge
             );
 
-            let sect = new cSnTrapez(undefined, prms);
+            let sect = new cSnTrapez(prms);
 
             let ru = new RegimeUniforme(sect, false);
 
@@ -41,7 +41,7 @@ describe('Class RegimeUniforme / section trapèze :', () => {
                 1 // YB= hauteur de berge
             );
 
-            let sect = new cSnTrapez(undefined, prms);
+            let sect = new cSnTrapez(prms);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Fruit"), 0.56);
@@ -58,7 +58,7 @@ describe('Class RegimeUniforme / section trapèze :', () => {
                 1 // YB= hauteur de berge
             );
 
-            let sect = new cSnTrapez(undefined, prms);
+            let sect = new cSnTrapez(prms);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Ks", 1e-8), 24.14);
@@ -75,7 +75,7 @@ describe('Class RegimeUniforme / section trapèze :', () => {
                 1 // YB= hauteur de berge
             );
 
-            let sect = new cSnTrapez(undefined, prms);
+            let sect = new cSnTrapez(prms);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("If"), 0.001);
@@ -92,7 +92,7 @@ describe('Class RegimeUniforme / section trapèze :', () => {
                 1 // YB= hauteur de berge
             );
 
-            let sect = new cSnTrapez(undefined, prms);
+            let sect = new cSnTrapez(prms);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Q"), 1.2);
@@ -109,7 +109,7 @@ describe('Class RegimeUniforme / section trapèze :', () => {
                 1 // YB= hauteur de berge
             );
 
-            let sect = new cSnTrapez(undefined, prms);
+            let sect = new cSnTrapez(prms);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Y"), 0.587);
@@ -127,7 +127,7 @@ describe('Class RegimeUniforme / section trapèze :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnTrapez(undefined, prms);
+            let sect = new cSnTrapez(prms);
             let ru = new RegimeUniforme(sect, false);
 
             check(ru.Calc("LargeurFond", 0, precDist), 0.03);
@@ -144,7 +144,7 @@ describe('Class RegimeUniforme / section trapèze :', () => {
                 1 // YB= hauteur de berge
             );
 
-            let sect = new cSnTrapez(undefined, prms);
+            let sect = new cSnTrapez(prms);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Fruit"), 0.56);
@@ -160,7 +160,7 @@ describe('Class RegimeUniforme / section trapèze :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnTrapez(undefined, prms);
+            let sect = new cSnTrapez(prms);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Ks", 1e-8), 5.744);
@@ -176,7 +176,7 @@ describe('Class RegimeUniforme / section trapèze :', () => {
                 precDist, // précision
                 1 // YB= hauteur de berge
             );
-            let sect = new cSnTrapez(undefined, prms);
+            let sect = new cSnTrapez(prms);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("If"), 0.001);
@@ -193,7 +193,7 @@ describe('Class RegimeUniforme / section trapèze :', () => {
                 1 // YB= hauteur de berge
             );
 
-            let sect = new cSnTrapez(undefined, prms);
+            let sect = new cSnTrapez(prms);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Q"), 8.356);
@@ -210,7 +210,7 @@ describe('Class RegimeUniforme / section trapèze :', () => {
                 1 // YB= hauteur de berge
             );
 
-            let sect = new cSnTrapez(undefined, prms);
+            let sect = new cSnTrapez(prms);
             let ru = new RegimeUniforme(sect);
 
             check(ru.Calc("Y"), 0.587);
diff --git a/spec/remous_rect_euler_pentefaible.spec.ts b/spec/remous_rect_euler_pentefaible.spec.ts
index 9c568ac0..37459134 100644
--- a/spec/remous_rect_euler_pentefaible.spec.ts
+++ b/spec/remous_rect_euler_pentefaible.spec.ts
@@ -218,7 +218,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.5, // Yamont = tirant amont
                 1, // Yaval = tirant aval
@@ -227,8 +227,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.EulerExplicite
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -259,7 +258,7 @@ describe('Class Remous / section rectangulaire :', () => {
 
             expLog.add(new Message(MessageCode.ERROR_REMOUS_PAS_CALCUL_DEPUIS_AMONT));
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("faible pente, pas de ressaut, Yamont > Yc, Yc < Yaval < Yn", () => {
@@ -272,7 +271,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.5, // Yamont = tirant amont
                 0.7, // Yaval = tirant aval
@@ -281,8 +280,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.EulerExplicite
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -313,7 +311,7 @@ describe('Class Remous / section rectangulaire :', () => {
 
             expLog.add(new Message(MessageCode.ERROR_REMOUS_PAS_CALCUL_DEPUIS_AMONT));
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
     });
 });
diff --git a/spec/remous_rect_euler_penteforte.spec.ts b/spec/remous_rect_euler_penteforte.spec.ts
index f7176009..46d99637 100644
--- a/spec/remous_rect_euler_penteforte.spec.ts
+++ b/spec/remous_rect_euler_penteforte.spec.ts
@@ -17,7 +17,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.15, // Yamont = tirant amont
                 6, // Yaval = tirant aval
@@ -26,8 +26,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.EulerExplicite
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -63,7 +62,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["x"] = 0;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("forte pente, ressaut après l'aval", () => {
@@ -77,7 +76,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.15, // Yamont = tirant amont
                 0.45, // Yaval = tirant aval
@@ -86,8 +85,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.EulerExplicite
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -129,7 +127,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["x"] = 100;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         // it("forte pente, ressaut (1 point) à l'intérieur du bief", () => {
@@ -209,7 +207,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.15, // Yamont = tirant amont
                 1, // Yaval = tirant aval
@@ -218,8 +216,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.EulerExplicite
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -256,7 +253,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["xmax"] = 3.75;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("forte pente, pas de ressaut, Yaval < Yc, Yamont < Yn", () => {
@@ -269,7 +266,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.1, // Yamont = tirant amont
                 0.3, // Yaval = tirant aval
@@ -278,8 +275,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.EulerExplicite
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -310,7 +306,7 @@ describe('Class Remous / section rectangulaire :', () => {
 
             expLog.add(new Message(MessageCode.ERROR_REMOUS_CALCUL_TORRENTIEL));
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("forte pente, pas de ressaut, Yaval < Yc, Yn < Yamont < Yc", () => {
@@ -323,7 +319,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.35, // Yamont = tirant amont
                 0.3, // Yaval = tirant aval
@@ -332,8 +328,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.EulerExplicite
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -364,7 +359,7 @@ describe('Class Remous / section rectangulaire :', () => {
 
             expLog.add(new Message(MessageCode.ERROR_REMOUS_CALCUL_TORRENTIEL));
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
     });
 });
diff --git a/spec/remous_rect_rk4_pentefaible.spec.ts b/spec/remous_rect_rk4_pentefaible.spec.ts
index e819a64d..52b6bbf3 100644
--- a/spec/remous_rect_rk4_pentefaible.spec.ts
+++ b/spec/remous_rect_rk4_pentefaible.spec.ts
@@ -18,7 +18,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.3, // Yamont = tirant amont
                 0.41, // Yaval = tirant aval
@@ -27,8 +27,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.RungeKutta4
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -69,7 +68,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["x"] = 0;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("faible pente, ressaut (1 point) à l'intérieur du bief", () => {
@@ -82,7 +81,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.15, // Yamont = tirant amont
                 0.42, // Yaval = tirant aval
@@ -91,8 +90,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.RungeKutta4
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -133,7 +131,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["xmax"] = 5;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("faible pente, ressaut (plusieurs points) à l'intérieur du bief", () => {
@@ -146,7 +144,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.01, // Yamont = tirant amont
                 0.42, // Yaval = tirant aval
@@ -155,8 +153,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.RungeKutta4
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -193,7 +190,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["xmax"] = 1;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("faible pente, pas de ressaut, Yamont > Yc, Yaval > Yn", () => {
@@ -206,7 +203,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.5, // Yamont = tirant amont
                 1, // Yaval = tirant aval
@@ -215,8 +212,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.RungeKutta4
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -247,7 +243,7 @@ describe('Class Remous / section rectangulaire :', () => {
 
             expLog.add(new Message(MessageCode.ERROR_REMOUS_PAS_CALCUL_DEPUIS_AMONT));
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("faible pente, pas de ressaut, Yamont > Yc, Yc < Yaval < Yn", () => {
@@ -260,7 +256,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.5, // Yamont = tirant amont
                 0.7, // Yaval = tirant aval
@@ -269,8 +265,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.RungeKutta4
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -301,7 +296,7 @@ describe('Class Remous / section rectangulaire :', () => {
 
             expLog.add(new Message(MessageCode.ERROR_REMOUS_PAS_CALCUL_DEPUIS_AMONT));
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
     });
 });
diff --git a/spec/remous_rect_rk4_penteforte.spec.ts b/spec/remous_rect_rk4_penteforte.spec.ts
index bb966066..61109e1c 100644
--- a/spec/remous_rect_rk4_penteforte.spec.ts
+++ b/spec/remous_rect_rk4_penteforte.spec.ts
@@ -17,7 +17,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.15, // Yamont = tirant amont
                 6, // Yaval = tirant aval
@@ -26,8 +26,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.RungeKutta4
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -63,7 +62,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["x"] = 0;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("forte pente, ressaut après l'aval", () => {
@@ -77,7 +76,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.15, // Yamont = tirant amont
                 0.45, // Yaval = tirant aval
@@ -86,8 +85,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.RungeKutta4
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -128,7 +126,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["x"] = 100;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("forte pente, ressaut (1 point) à l'intérieur du bief", () => {
@@ -141,7 +139,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.15, // Yamont = tirant amont
                 1, // Yaval = tirant aval
@@ -150,8 +148,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.RungeKutta4
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -192,7 +189,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["xmax"] = 90;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("forte pente, ressaut (plusieurs points) à l'intérieur du bief", () => {
@@ -205,7 +202,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.15, // Yamont = tirant amont
                 1, // Yaval = tirant aval
@@ -214,8 +211,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.RungeKutta4
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -252,7 +248,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["xmax"] = 3.75;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("forte pente, pas de ressaut, Yaval < Yc, Yamont < Yn", () => {
@@ -265,7 +261,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.1, // Yamont = tirant amont
                 0.3, // Yaval = tirant aval
@@ -274,8 +270,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.RungeKutta4
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -306,7 +301,7 @@ describe('Class Remous / section rectangulaire :', () => {
 
             expLog.add(new Message(MessageCode.ERROR_REMOUS_CALCUL_TORRENTIEL));
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("forte pente, pas de ressaut, Yaval < Yc, Yn < Yamont < Yc", () => {
@@ -319,7 +314,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.35, // Yamont = tirant amont
                 0.3, // Yaval = tirant aval
@@ -328,8 +323,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.RungeKutta4
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -360,7 +354,7 @@ describe('Class Remous / section rectangulaire :', () => {
 
             expLog.add(new Message(MessageCode.ERROR_REMOUS_CALCUL_TORRENTIEL));
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
     });
 });
diff --git a/spec/remous_rect_trapezes_pentefaible.spec.ts b/spec/remous_rect_trapezes_pentefaible.spec.ts
index e27b1fb5..aeb0bc77 100644
--- a/spec/remous_rect_trapezes_pentefaible.spec.ts
+++ b/spec/remous_rect_trapezes_pentefaible.spec.ts
@@ -18,7 +18,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.3, // Yamont = tirant amont
                 0.403, // Yaval = tirant aval
@@ -27,8 +27,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.Trapezes
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -69,7 +68,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["x"] = 0;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("faible pente, ressaut (1 point) à l'intérieur du bief", () => {
@@ -82,7 +81,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.15, // Yamont = tirant amont
                 0.403, // Yaval = tirant aval
@@ -91,8 +90,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.Trapezes
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -133,7 +131,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["xmax"] = 5;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("faible pente, ressaut (plusieurs points) à l'intérieur du bief (1)", () => {
@@ -146,7 +144,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.01, // Yamont = tirant amont
                 0.403, // Yaval = tirant aval
@@ -155,8 +153,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.Trapezes
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -205,7 +202,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["xmax"] = 1;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("faible pente, ressaut (plusieurs points) à l'intérieur du bief (2)", () => {
@@ -218,7 +215,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.01, // Yamont = tirant amont
                 0.403, // Yaval = tirant aval
@@ -227,8 +224,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.Trapezes
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -265,7 +261,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["xmax"] = 0.9;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
     });
 
@@ -279,7 +275,7 @@ describe('Class Remous / section rectangulaire :', () => {
             1 // YB=hauteur de berge
         );
 
-        let sect = new cSnRectang(undefined, prms);
+        let sect = new cSnRectang(prms);
 
         let prem = new CourbeRemousParams(sect, 0.5, // Yamont = tirant amont
             1, // Yaval = tirant aval
@@ -288,8 +284,7 @@ describe('Class Remous / section rectangulaire :', () => {
             MethodeResolution.Trapezes
         );
 
-        let log = new cLog();
-        let rem = new CourbeRemous(prem, log);
+        let rem = new CourbeRemous(prem);
 
         let res = rem.calculRemous(undefined);
 
@@ -320,7 +315,7 @@ describe('Class Remous / section rectangulaire :', () => {
 
         expLog.add(new Message(MessageCode.ERROR_REMOUS_PAS_CALCUL_DEPUIS_AMONT));
 
-        compareLog(log, expLog);
+        compareLog(rem.log, expLog);
     });
 
     it("faible pente, pas de ressaut, Yamont > Yc, Yc < Yaval < Yn", () => {
@@ -333,7 +328,7 @@ describe('Class Remous / section rectangulaire :', () => {
             1 // YB=hauteur de berge
         );
 
-        let sect = new cSnRectang(undefined, prms);
+        let sect = new cSnRectang(prms);
 
         let prem = new CourbeRemousParams(sect, 0.5, // Yamont = tirant amont
             0.7, // Yaval = tirant aval
@@ -342,8 +337,7 @@ describe('Class Remous / section rectangulaire :', () => {
             MethodeResolution.Trapezes
         );
 
-        let log = new cLog();
-        let rem = new CourbeRemous(prem, log);
+        let rem = new CourbeRemous(prem);
 
         let res = rem.calculRemous(undefined);
 
@@ -374,6 +368,6 @@ describe('Class Remous / section rectangulaire :', () => {
 
         expLog.add(new Message(MessageCode.ERROR_REMOUS_PAS_CALCUL_DEPUIS_AMONT));
 
-        compareLog(log, expLog);
+        compareLog(rem.log, expLog);
     });
 });
diff --git a/spec/remous_rect_trapezes_penteforte.spec.ts b/spec/remous_rect_trapezes_penteforte.spec.ts
index 197fffaa..7695ae5a 100644
--- a/spec/remous_rect_trapezes_penteforte.spec.ts
+++ b/spec/remous_rect_trapezes_penteforte.spec.ts
@@ -17,7 +17,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.15, // Yamont = tirant amont
                 6, // Yaval = tirant aval
@@ -26,8 +26,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.Trapezes
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -63,7 +62,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["x"] = 0;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("forte pente, ressaut après l'aval", () => {
@@ -77,7 +76,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.15, // Yamont = tirant amont
                 0.45, // Yaval = tirant aval
@@ -86,8 +85,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.Trapezes
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -129,7 +127,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["x"] = 100;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("forte pente, ressaut (1 point) à l'intérieur du bief", () => {
@@ -142,7 +140,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.15, // Yamont = tirant amont
                 1, // Yaval = tirant aval
@@ -151,8 +149,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.Trapezes
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -193,7 +190,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["xmax"] = 95;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("forte pente, ressaut (plusieurs points) à l'intérieur du bief", () => {
@@ -206,7 +203,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.15, // Yamont = tirant amont
                 1, // Yaval = tirant aval
@@ -215,8 +212,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.Trapezes
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -253,7 +249,7 @@ describe('Class Remous / section rectangulaire :', () => {
             m.extraVar["xmax"] = 3.75;
             expLog.add(m);
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("forte pente, pas de ressaut, Yaval < Yc, Yamont < Yn", () => {
@@ -266,7 +262,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.1, // Yamont = tirant amont
                 0.3, // Yaval = tirant aval
@@ -275,8 +271,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.Trapezes
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -307,7 +302,7 @@ describe('Class Remous / section rectangulaire :', () => {
 
             expLog.add(new Message(MessageCode.ERROR_REMOUS_CALCUL_TORRENTIEL));
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
 
         it("forte pente, pas de ressaut, Yaval < Yc, Yn < Yamont < Yc", () => {
@@ -320,7 +315,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnRectang(undefined, prms);
+            let sect = new cSnRectang(prms);
 
             let prem = new CourbeRemousParams(sect, 0.35, // Yamont = tirant amont
                 0.3, // Yaval = tirant aval
@@ -329,8 +324,7 @@ describe('Class Remous / section rectangulaire :', () => {
                 MethodeResolution.Trapezes
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -361,7 +355,7 @@ describe('Class Remous / section rectangulaire :', () => {
 
             expLog.add(new Message(MessageCode.ERROR_REMOUS_CALCUL_TORRENTIEL));
 
-            compareLog(log, expLog);
+            compareLog(rem.log, expLog);
         });
     });
 });
diff --git a/spec/remous_trapez.spec.ts b/spec/remous_trapez.spec.ts
index 975dc726..68dd03c6 100644
--- a/spec/remous_trapez.spec.ts
+++ b/spec/remous_trapez.spec.ts
@@ -18,7 +18,7 @@ describe('Class Remous / section trapèze :', () => {
                 1 // YB= hauteur de berge
             );
 
-            let sect = new cSnTrapez(undefined, prms);
+            let sect = new cSnTrapez(prms);
 
             let prem = new CourbeRemousParams(sect, 0.15, // Yamont = tirant amont
                 0.4, // Yaval = tirant aval
@@ -27,8 +27,7 @@ describe('Class Remous / section trapèze :', () => {
                 MethodeResolution.Trapezes
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous(undefined);
 
@@ -56,7 +55,7 @@ describe('Class Remous / section trapèze :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnTrapez(undefined, prms);
+            let sect = new cSnTrapez(prms);
 
             let prem = new CourbeRemousParams(sect, 0.15, // Yamont = tirant amont
                 0.4, // Yaval    = tirant aval
@@ -65,8 +64,7 @@ describe('Class Remous / section trapèze :', () => {
                 MethodeResolution.Trapezes
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous("Hs");
 
@@ -87,7 +85,7 @@ describe('Class Remous / section trapèze :', () => {
                 1 // YB=hauteur de berge
             );
 
-            let sect = new cSnTrapez(undefined, prms);
+            let sect = new cSnTrapez(prms);
 
             let prem = new CourbeRemousParams(sect, 0.15, // Yamont = tirant amont
                 1, // Yaval    = tirant aval
@@ -96,8 +94,7 @@ describe('Class Remous / section trapèze :', () => {
                 MethodeResolution.Trapezes
             );
 
-            let log = new cLog();
-            let rem = new CourbeRemous(prem, log);
+            let rem = new CourbeRemous(prem);
 
             let res = rem.calculRemous("Hs");
 
diff --git a/spec/section_param_circ_fluvial.spec.ts b/spec/section_param_circ_fluvial.spec.ts
index ba76e792..a03a99fa 100644
--- a/spec/section_param_circ_fluvial.spec.ts
+++ b/spec/section_param_circ_fluvial.spec.ts
@@ -17,7 +17,7 @@ function createSection(prec: number): cSnCirc {
         1 // YB= hauteur de berge
     );
 
-    return new cSnCirc(undefined, paramSection);
+    return new cSnCirc(paramSection);
 }
 
 function createSectionDebordement(prec: number): cSnCirc {
@@ -30,7 +30,7 @@ function createSectionDebordement(prec: number): cSnCirc {
         1 // YB= hauteur de berge
     );
 
-    return new cSnCirc(undefined, paramSection);
+    return new cSnCirc(paramSection);
 }
 
 function check(val1: number, val2: number) {
diff --git a/spec/section_param_circ_torrentiel.spec.ts b/spec/section_param_circ_torrentiel.spec.ts
index ebb27a9e..3b26bd60 100644
--- a/spec/section_param_circ_torrentiel.spec.ts
+++ b/spec/section_param_circ_torrentiel.spec.ts
@@ -17,7 +17,7 @@ function createSection(prec: number): cSnCirc {
         1 // YB= hauteur de berge
     );
 
-    return new cSnCirc(undefined, paramSection);
+    return new cSnCirc(paramSection);
 }
 
 function check(val1: number, val2: number) {
diff --git a/spec/section_param_puiss_fluvial.spec.ts b/spec/section_param_puiss_fluvial.spec.ts
index e4070f59..6adea424 100644
--- a/spec/section_param_puiss_fluvial.spec.ts
+++ b/spec/section_param_puiss_fluvial.spec.ts
@@ -18,7 +18,7 @@ function createSection(prec: number): cSnPuiss {
         1 // YB= hauteur de berge
     );
 
-    return new cSnPuiss(undefined, paramSection);
+    return new cSnPuiss(paramSection);
 }
 
 function createSectionDebordement(prec: number): cSnPuiss {
@@ -32,7 +32,7 @@ function createSectionDebordement(prec: number): cSnPuiss {
         1 // YB= hauteur de berge
     );
 
-    return new cSnPuiss(undefined, paramSection);
+    return new cSnPuiss(paramSection);
 }
 
 function check(val1: number, val2: number) {
diff --git a/spec/section_param_puiss_torrentiel.spec.ts b/spec/section_param_puiss_torrentiel.spec.ts
index 045271fa..e412bc1d 100644
--- a/spec/section_param_puiss_torrentiel.spec.ts
+++ b/spec/section_param_puiss_torrentiel.spec.ts
@@ -18,7 +18,7 @@ function createSection(prec: number): cSnPuiss {
         1 // YB= hauteur de berge
     );
 
-    return new cSnPuiss(undefined, paramSection);
+    return new cSnPuiss(paramSection);
 }
 
 function check(val1: number, val2: number) {
diff --git a/spec/section_param_rect_conv_newton.spec.ts b/spec/section_param_rect_conv_newton.spec.ts
index d0c632e8..83d7e90a 100644
--- a/spec/section_param_rect_conv_newton.spec.ts
+++ b/spec/section_param_rect_conv_newton.spec.ts
@@ -3,7 +3,6 @@
 import { Result } from "../src/base";
 import { precDist, equalEpsilon } from "./nubtest";
 import { ParamsSectionRectang, cSnRectang } from "../src/section/section_rectang";
-import { cLog } from "../src/util/log";
 import { MessageCode } from "../src/util/message";
 
 let paramSection: ParamsSectionRectang;
@@ -24,7 +23,7 @@ describe('Section paramétrée rectangulaire : ', () => {
             1 // YB= hauteur de berge
         );
 
-        sect = new cSnRectang(new cLog(), paramSection);
+        sect = new cSnRectang(paramSection);
         sect.newtonMaxIter = 5;
     });
 
diff --git a/spec/section_param_rect_fluvial.spec.ts b/spec/section_param_rect_fluvial.spec.ts
index 38ebd5dd..be5be98c 100644
--- a/spec/section_param_rect_fluvial.spec.ts
+++ b/spec/section_param_rect_fluvial.spec.ts
@@ -17,7 +17,7 @@ function createSection(prec: number): cSnRectang {
         1 // YB= hauteur de berge
     );
 
-    return new cSnRectang(undefined, paramSection);
+    return new cSnRectang(paramSection);
 }
 
 function createSectionDebordement(prec: number): cSnRectang {
@@ -30,7 +30,7 @@ function createSectionDebordement(prec: number): cSnRectang {
         1 // YB= hauteur de berge
     );
 
-    return new cSnRectang(undefined, paramSection);
+    return new cSnRectang(paramSection);
 }
 
 function check(val1: number, val2: number) {
diff --git a/spec/section_param_rect_torrentiel.spec.ts b/spec/section_param_rect_torrentiel.spec.ts
index ddf25e29..456ea620 100644
--- a/spec/section_param_rect_torrentiel.spec.ts
+++ b/spec/section_param_rect_torrentiel.spec.ts
@@ -22,7 +22,7 @@ describe('Section paramétrée rectangulaire : ', () => {
             1 // YB= hauteur de berge
         );
 
-        sect = new cSnRectang(undefined, paramSection);
+        sect = new cSnRectang(paramSection);
     });
 
     describe('torrentiel :', () => {
diff --git a/spec/section_param_trapez_fluvial.spec.ts b/spec/section_param_trapez_fluvial.spec.ts
index 13a1f1f5..7443a4d3 100644
--- a/spec/section_param_trapez_fluvial.spec.ts
+++ b/spec/section_param_trapez_fluvial.spec.ts
@@ -18,7 +18,7 @@ function createSection(prec: number): cSnTrapez {
         1 // YB= hauteur de berge
     );
 
-    return new cSnTrapez(undefined, paramSection);
+    return new cSnTrapez(paramSection);
 }
 
 function createSectionDebordement(prec: number): cSnTrapez {
@@ -32,7 +32,7 @@ function createSectionDebordement(prec: number): cSnTrapez {
         1 // YB= hauteur de berge
     );
 
-    return new cSnTrapez(undefined, paramSection);
+    return new cSnTrapez(paramSection);
 }
 
 function check(val1: number, val2: number) {
diff --git a/spec/section_param_trapez_torrentiel.spec.ts b/spec/section_param_trapez_torrentiel.spec.ts
index 13730e0b..7526c24d 100644
--- a/spec/section_param_trapez_torrentiel.spec.ts
+++ b/spec/section_param_trapez_torrentiel.spec.ts
@@ -23,7 +23,7 @@ describe('Section paramétrée trapèze :', () => {
             1 // YB= hauteur de berge
         );
 
-        sect = new cSnTrapez(undefined, paramCnl);
+        sect = new cSnTrapez(paramCnl);
     });
 
     describe('torrentiel :', () => {
diff --git a/src/parameters.ts b/src/parameters.ts
index 7406cd4f..6ac00df8 100644
--- a/src/parameters.ts
+++ b/src/parameters.ts
@@ -40,7 +40,7 @@ export class ComputeNodeParameters {
                 {
                     let cn = new ParamsSectionTrapez(undefined, undefined, undefined, undefined,
                         undefined, undefined, undefined, undefined, undefined, undefined);
-                    let n = new cSnTrapez(undefined, cn); // pour initialiser la calculabilité des paramètres
+                    let n = new cSnTrapez(cn); // pour initialiser la calculabilité des paramètres
                     return cn;
                 }
 
@@ -48,7 +48,7 @@ export class ComputeNodeParameters {
                 {
                     let cn = new ParamsSectionRectang(undefined, undefined, undefined, undefined,
                         undefined, undefined, undefined, undefined);
-                    let n = new cSnRectang(undefined, cn); // pour initialiser la calculabilité des paramètres
+                    let n = new cSnRectang(cn); // pour initialiser la calculabilité des paramètres
                     return cn;
                 }
 
@@ -56,7 +56,7 @@ export class ComputeNodeParameters {
                 {
                     let cn = new ParamsSectionCirc(undefined, undefined, undefined, undefined,
                         undefined, undefined, undefined, undefined, undefined);
-                    let n = new cSnCirc(undefined, cn); // pour initialiser la calculabilité des paramètres
+                    let n = new cSnCirc(cn); // pour initialiser la calculabilité des paramètres
                     return cn;
                 }
 
@@ -64,7 +64,7 @@ export class ComputeNodeParameters {
                 {
                     let cn = new ParamsSectionPuiss(undefined, undefined, undefined, undefined,
                         undefined, undefined, undefined, undefined, undefined, undefined);
-                    let n = new cSnPuiss(undefined, cn); // pour initialiser la calculabilité des paramètres
+                    let n = new cSnPuiss(cn); // pour initialiser la calculabilité des paramètres
                     return cn;
                 }
 
@@ -74,7 +74,7 @@ export class ComputeNodeParameters {
                         undefined, undefined, undefined, undefined, undefined,
                         ComputeNodeType.RegimeUniformeTrapeze,
                         ComputeNodeType.RegimeUniforme);
-                    let n = new cSnTrapez(undefined, cn);
+                    let n = new cSnTrapez(cn);
                     let ru = new RegimeUniforme(n); // pour initialiser la calculabilité des paramètres
                     return cn;
                 }
@@ -84,7 +84,7 @@ export class ComputeNodeParameters {
                     let cn = new ParamsSectionRectang(undefined, undefined, undefined,
                         undefined, undefined, undefined, undefined,
                         ComputeNodeType.RegimeUniforme);
-                    let n = new cSnRectang(undefined, cn);
+                    let n = new cSnRectang(cn);
                     let ru = new RegimeUniforme(n); // pour initialiser la calculabilité des paramètres
                     return cn;
                 }
@@ -95,7 +95,7 @@ export class ComputeNodeParameters {
                         undefined, undefined, undefined, undefined,
                         ComputeNodeType.RegimeUniformeCercle,
                         ComputeNodeType.RegimeUniforme);
-                    let n = new cSnCirc(undefined, cn);
+                    let n = new cSnCirc(cn);
                     let ru = new RegimeUniforme(n); // pour initialiser la calculabilité des paramètres
                     return cn;
                 }
@@ -106,7 +106,7 @@ export class ComputeNodeParameters {
                         undefined, undefined, undefined, undefined, undefined,
                         ComputeNodeType.RegimeUniformePuissance,
                         ComputeNodeType.RegimeUniforme);
-                    let n = new cSnPuiss(undefined, cn);
+                    let n = new cSnPuiss(cn);
                     let ru = new RegimeUniforme(n); // pour initialiser la calculabilité des paramètres
                     return cn;
                 }
@@ -117,9 +117,9 @@ export class ComputeNodeParameters {
                         0.001, 1,
                         ComputeNodeType.CourbeRemousCercle,
                         ComputeNodeType.CourbeRemous);
-                    let n = new cSnCirc(undefined, cn);
+                    let n = new cSnCirc(cn);
                     let crp = new CourbeRemousParams(n, undefined, undefined, undefined, undefined, undefined);
-                    let ru = new CourbeRemous(crp, undefined); // pour initialiser la calculabilité des paramètres
+                    let ru = new CourbeRemous(crp); // pour initialiser la calculabilité des paramètres
                     return crp
                 }
 
@@ -129,9 +129,9 @@ export class ComputeNodeParameters {
                         undefined, 0.001, 1,
                         ComputeNodeType.CourbeRemousPuissance,
                         ComputeNodeType.CourbeRemous);
-                    let n = new cSnPuiss(undefined, cn);
+                    let n = new cSnPuiss(cn);
                     let crp = new CourbeRemousParams(n, undefined, undefined, undefined, undefined, undefined);
-                    let ru = new CourbeRemous(crp, undefined); // pour initialiser la calculabilité des paramètres
+                    let ru = new CourbeRemous(crp); // pour initialiser la calculabilité des paramètres
                     return crp;
                 }
 
@@ -140,9 +140,9 @@ export class ComputeNodeParameters {
                     let cn = new ParamsSectionRectang(undefined, 1, undefined, 1, undefined,
                         0.001, 1,
                         ComputeNodeType.CourbeRemous);
-                    let n = new cSnRectang(undefined, cn);
+                    let n = new cSnRectang(cn);
                     let crp = new CourbeRemousParams(n, undefined, undefined, undefined, undefined, undefined);
-                    let ru = new CourbeRemous(crp, undefined); // pour initialiser la calculabilité des paramètres
+                    let ru = new CourbeRemous(crp); // pour initialiser la calculabilité des paramètres
                     return crp;
                 }
 
@@ -152,9 +152,9 @@ export class ComputeNodeParameters {
                         undefined, 0.001, 1,
                         ComputeNodeType.CourbeRemousTrapeze,
                         ComputeNodeType.CourbeRemous);
-                    let n = new cSnTrapez(undefined, cn);
+                    let n = new cSnTrapez(cn);
                     let crp = new CourbeRemousParams(n, undefined, undefined, undefined, undefined, undefined);
-                    let ru = new CourbeRemous(crp, undefined); // pour initialiser la calculabilité des paramètres
+                    let ru = new CourbeRemous(crp); // pour initialiser la calculabilité des paramètres
                     return crp;
                 }
 
diff --git a/src/remous.ts b/src/remous.ts
index 4eff52f5..d0f7f081 100644
--- a/src/remous.ts
+++ b/src/remous.ts
@@ -114,13 +114,17 @@ export class CourbeRemous extends Nub {
 	 */
 	private Dx: number;
 
-	constructor(crp: CourbeRemousParams, log: cLog) {
+	constructor(crp: CourbeRemousParams) {
 		super(crp, CourbeRemous.DBG);
-		this._log = log;
+		this._log = crp.Sn.log;
 		this.prmSect = crp.Sn.prms;
 		this.Sn.Calc("Yc");
 	}
 
+	public get log() {
+		return this._log;
+	}
+
 	private get Sn(): acSection {
 		return this.prms.Sn;
 	}
diff --git a/src/section/section_circulaire.ts b/src/section/section_circulaire.ts
index 585cbf5e..a9814d6d 100644
--- a/src/section/section_circulaire.ts
+++ b/src/section/section_circulaire.ts
@@ -30,8 +30,8 @@ export class ParamsSectionCirc extends ParamsSection {
 export class cSnCirc extends acSection {
         protected nbDessinPoints = 50;
 
-        constructor(oLog: cLog, prms: ParamsSectionCirc, dbg: boolean = false) {
-                super(oLog, prms, dbg);
+        constructor(prms: ParamsSectionCirc, dbg: boolean = false) {
+                super(prms, dbg);
                 // commenté car si D est la variable à déterminer, il peut valoir n'importe quoi... if (prms.YB.v > D) { prms.YB.v = D; } // On place la berge au sommet du cercle 
 
                 // if (this.prms.D.isDefined() && this.prms.YB.isDefined())
diff --git a/src/section/section_puissance.ts b/src/section/section_puissance.ts
index 9d734043..8105e14f 100644
--- a/src/section/section_puissance.ts
+++ b/src/section/section_puissance.ts
@@ -1,6 +1,5 @@
 import { ComputeNodeType, ParamDefinition, ParamDomain, ParamDomainValue, ParamCalculability } from "../param";
 import { acSection, ParamsSection } from "./section_type";
-import { cLog } from "../util/log";
 
 /**
  * Paramètres de la section parabolique ou "puissance"
@@ -31,8 +30,8 @@ export class ParamsSectionPuiss extends ParamsSection {
 export class cSnPuiss extends acSection {
         protected nbDessinPoints = 50;
 
-        constructor(oLog: cLog, prms: ParamsSectionPuiss, dbg: boolean = false) {
-                super(oLog, prms, dbg);
+        constructor(prms: ParamsSectionPuiss, dbg: boolean = false) {
+                super(prms, dbg);
         }
 
         protected setParametersCalculability() {
diff --git a/src/section/section_rectang.ts b/src/section/section_rectang.ts
index 94e8194c..67299a61 100644
--- a/src/section/section_rectang.ts
+++ b/src/section/section_rectang.ts
@@ -15,8 +15,8 @@ export class ParamsSectionRectang extends ParamsSection {
  * Calculs de la section rectangulaire
  */
 export class cSnRectang extends acSection {
-        constructor(oLog: cLog, prms: ParamsSectionRectang, dbg: boolean = false) {
-                super(oLog, prms, dbg);
+        constructor(prms: ParamsSectionRectang, dbg: boolean = false) {
+                super(prms, dbg);
         }
 
         get prms(): ParamsSectionRectang {
diff --git a/src/section/section_trapez.ts b/src/section/section_trapez.ts
index cbe149dc..4bf29e2a 100644
--- a/src/section/section_trapez.ts
+++ b/src/section/section_trapez.ts
@@ -38,8 +38,8 @@ export class ParamsSectionTrapez extends ParamsSection {
  * Calculs de la section trapézoïdale
  */
 export class cSnTrapez extends acSection {
-        constructor(oLog: cLog, prms: ParamsSectionTrapez, dbg: boolean = false) {
-                super(oLog, prms, dbg);
+        constructor(prms: ParamsSectionTrapez, dbg: boolean = false) {
+                super(prms, dbg);
         }
 
         protected setParametersCalculability() {
diff --git a/src/section/section_type.ts b/src/section/section_type.ts
index 4cdf97da..5a6a944f 100644
--- a/src/section/section_type.ts
+++ b/src/section/section_type.ts
@@ -158,9 +158,9 @@ export abstract class acSection extends ComputeNode {
          * Construction de la classe.
          * Calcul des hauteurs normale et critique
          */
-        constructor(oLog: cLog, prms: ParamsSection, dbg: boolean = false) {
+        constructor(prms: ParamsSection, dbg: boolean = false) {
                 super(prms, dbg);
-                this.oLog = oLog;
+                this.oLog = new cLog();
 
                 // this._v = oP.v;  // copie la référence au tableau
                 // this.prms.Y.v = 0;
-- 
GitLab