From 7bcad6dbc374505ed3c601b3af88c0778fe11be6 Mon Sep 17 00:00:00 2001
From: David Dorchies <david.dorchies@irstea.fr>
Date: Tue, 25 Jun 2019 12:33:45 +0200
Subject: [PATCH] #33 Add ZRAM in results of all PAB cloisons including
 downstream wall

---
 spec/pab/pab.spec.ts | 3 ++-
 src/pab/cloisons.ts  | 1 +
 src/pab/pab.ts       | 3 +++
 3 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/spec/pab/pab.spec.ts b/spec/pab/pab.spec.ts
index 3e0185b1..da25124c 100644
--- a/spec/pab/pab.spec.ts
+++ b/spec/pab/pab.spec.ts
@@ -96,7 +96,7 @@ function checkPabResults(p: Pab, vCalc: number) {
     p.CalcSerie();
     // Résultat du calcul principal (Z1 ou Q)
     expect(p.result.vCalc).toBeCloseTo(vCalc, 2);
-    // Résultat Ligne d'eau (Cote de l'eau, P/V, Tmoy dans les 14 bassins)
+    // Résultat Ligne d'eau (Cote de l'eau, P/V, Tmoy, DH dans les 14 bassins)
     const tRef = [
         [78.270, 150.032, 1.500, 0.230],
         [78.040, 149.932, 1.501, 0.230],
@@ -116,6 +116,7 @@ function checkPabResults(p: Pab, vCalc: number) {
     // Cote de l'eau dernier bassin à l'amont de la cloison aval
     expect(p.downWall.result.vCalc).toBeCloseTo(75.077, 2);
     expect(p.downWall.result.extraResults.DH).toBeCloseTo(0.217, 2);
+    expect(p.downWall.result.extraResults.ZRAM).toBeCloseTo(73.435, 2);
     for (let i = 0; i < 14; i++) {
         // Cote de l'eau à l'amont de la cloison amont du bassin
         expect(p.children[i].result.vCalc).toBeCloseTo(tRef[i][0], 2);
diff --git a/src/pab/cloisons.ts b/src/pab/cloisons.ts
index baf0d738..1bbce90c 100644
--- a/src/pab/cloisons.ts
+++ b/src/pab/cloisons.ts
@@ -63,6 +63,7 @@ export class Cloisons extends ParallelStructure {
 
         // Ajout de la cote de radier de bassin
         r.extraResults.ZRMB = this.prms.ZRMB.v;
+        r.extraResults.ZRAM = this.prms.ZRAM.v;
 
         // Ajout de ZDV pour les seuils
         for (let i = 0; i < this.structures.length; i++) {
diff --git a/src/pab/pab.ts b/src/pab/pab.ts
index bd17ddb0..e9ff2dae 100644
--- a/src/pab/pab.ts
+++ b/src/pab/pab.ts
@@ -112,6 +112,9 @@ export class Pab extends Nub {
         // Down to up course : water surface calculation
         let Z: number = this.prms.Z2.v;
         Z = this.calcCloisonZ1(this.downWall, Z);
+        this.downWall.result.extraResults.ZRAM =
+            this.children[this.children.length - 1].prms.ZRMB.v
+            - this.children[this.children.length - 1].prms.DH.v / 2;
 
         for (let i = this.children.length - 1; i >= 0; i--) {
 
-- 
GitLab