From 05b2ac117d56bc0d5bd5825b2a7f1125d078cb49 Mon Sep 17 00:00:00 2001 From: David Dorchies <david.dorchies@irstea.fr> Date: Wed, 26 Jun 2019 16:15:10 +0200 Subject: [PATCH] #93 Formatting tables of edition and results with a first calculation that works! --- src/app/calculators/cloisons/cloisons.en.json | 14 +---- src/app/calculators/cloisons/cloisons.fr.json | 2 - .../pab-results-table.component.ts | 63 +++++++------------ .../concrete/form-regime-uniforme.ts | 3 +- .../formulaire/definition/form-compute-pab.ts | 10 --- src/app/results/pab-results.ts | 14 +---- src/app/results/plottable-pab-results.ts | 50 ++------------- src/locale/messages.en.json | 2 + src/locale/messages.fr.json | 2 + 9 files changed, 36 insertions(+), 124 deletions(-) diff --git a/src/app/calculators/cloisons/cloisons.en.json b/src/app/calculators/cloisons/cloisons.en.json index 681065b65..65b2c7c89 100644 --- a/src/app/calculators/cloisons/cloisons.en.json +++ b/src/app/calculators/cloisons/cloisons.en.json @@ -1,16 +1,8 @@ { - "Q": "Débit total", - "ZR": "Cote du lit amont", - "LB": "Longueur du bassin", - "BB": "Largeur du bassin", - "PB": "Profondeur moyenne du bassin", - "DH": "Chute", + "Q": "Total discharge", + "ZR": "Upstream bed elevation", + "PB": "Pool mean depth", "h1": "Head", - "S": "Surface de l'orifice", - "ZRAM": "Bottom elevation", - "alpha2": "Demi-angle au sommet (°)", - "BT": "Demi-ouverture du triangle (m)", - "ZT": "Cote haute du triangle (m)", "select_ouvrage_seuil_triang": "Triangular weir", "select_ouvrage_seuil_triangtrunc": "Truncated triangular weir", "select_ouvrage_orifice": "Orifice", diff --git a/src/app/calculators/cloisons/cloisons.fr.json b/src/app/calculators/cloisons/cloisons.fr.json index 43a188d68..cc29c123f 100644 --- a/src/app/calculators/cloisons/cloisons.fr.json +++ b/src/app/calculators/cloisons/cloisons.fr.json @@ -1,8 +1,6 @@ { "Q": "Débit total", "ZR": "Cote du lit amont", - "LB": "Longueur du bassin", - "BB": "Largeur du bassin", "PB": "Profondeur moyenne du bassin", "DH": "Chute", "h1": "Charge", diff --git a/src/app/components/pab-results/pab-results-table.component.ts b/src/app/components/pab-results/pab-results-table.component.ts index af0ebe4df..ac9fda71d 100644 --- a/src/app/components/pab-results/pab-results-table.component.ts +++ b/src/app/components/pab-results/pab-results-table.component.ts @@ -60,61 +60,40 @@ export class PabResultsTableComponent extends ResultsComponent { } // lines 2 - n-1 - for (let i = 0; i < pr.cloisonsResults.length - 1; i++) { + for (let i = 0; i < pr.cloisonsResults.length; i++) { if ( pr.cloisonsResults[i].vCalc - && pr.cloisonsResults[i + 1].vCalc ) { - const ZRAM = pr.cloisonsResults[i].getExtraResult("ZRAM"); - const PV = pr.cloisonsResults[i].getExtraResult("PV"); - const YMOY = pr.cloisonsResults[i].getExtraResult("YMOY"); - const ZRB = pr.cloisonsResults[i].getExtraResult("ZRB"); + const r2n = pr.cloisonsResults[i].resultElement.extraResults; + let Z1: number; + if (i < pr.cloisonsResults.length - 1) { + Z1 = pr.cloisonsResults[i + 1].vCalc; + } else { + Z1 = pr.cloisonAvalResults.vCalc; + } this._dataSet.push([ i + 1, // n° cloison - pr.cloisonsResults[i + 1].vCalc.toFixed(nDigits), // Z - (ZRAM !== undefined) ? ZRAM.toFixed(nDigits) : "", // ZRAM - (pr.cloisonsResults[i].vCalc - pr.cloisonsResults[i + 1].vCalc).toFixed(nDigits), // DH - pr.cloisonsQ[i].toFixed(nDigits), // Q - (PV !== undefined) ? PV.toFixed(nDigits) : "", // PV - (YMOY !== undefined) ? YMOY.toFixed(nDigits) : "", // YMOY - (ZRB !== undefined) ? ZRB.toFixed(nDigits) : "", // ZRB - pr.bassinsQA[i] // QA + Z1.toFixed(nDigits), // Z + r2n.ZRAM.toFixed(nDigits), + r2n.DH.toFixed(nDigits), + r2n.Q.toFixed(nDigits), + r2n.PV.toFixed(nDigits), + r2n.YMOY.toFixed(nDigits), + r2n.ZRMB.toFixed(nDigits), + r2n.QA // QA ]); } } - // line n - const l = pr.cloisonsResults.length; - if ( - pr.cloisonsResults[l - 1].vCalc - && pr.cloisonAvalResults.vCalc - ) { - const nZRAM = pr.cloisonsResults[l - 1].getExtraResult("ZRAM"); - const nPV = pr.cloisonsResults[l - 1].getExtraResult("PV"); - const nY = pr.cloisonsResults[l - 1].getExtraResult("YMOY"); - const nZRB = pr.cloisonsResults[l - 1].getExtraResult("ZRB"); - this._dataSet.push([ - l, // n° cloison - pr.cloisonAvalResults.vCalc.toFixed(nDigits), // Z - (nZRAM !== undefined) ? nZRAM.toFixed(nDigits) : "", // ZRAM - (pr.cloisonsResults[l - 1].vCalc - pr.cloisonAvalResults.vCalc).toFixed(nDigits), // DH - pr.cloisonsQ[l - 1].toFixed(nDigits), // Q - (nPV !== undefined) ? nPV.toFixed(nDigits) : "", // PV - (nY !== undefined) ? nY.toFixed(nDigits) : "", // YMOY - (nZRB !== undefined) ? nZRB.toFixed(nDigits) : "", // ZRB - pr.bassinsQA[l - 1] // QA - ]); - } - // downstream line if (pr.cloisonAvalResults.vCalc) { - const caZRAM = pr.cloisonAvalResults.getExtraResult("ZRAM"); + const rln = pr.cloisonAvalResults.resultElement.extraResults; this._dataSet.push([ this.intlService.localizeText("INFO_LIB_AVAL"), // n° cloison - pr.Z2.toFixed(nDigits), // Z - (caZRAM !== undefined) ? caZRAM.toFixed(nDigits) : "", // ZRAM - (pr.cloisonAvalResults.vCalc - pr.Z2).toFixed(nDigits), // DH - pr.cloisonAvalQ.toFixed(nDigits), // Q + pr.Z2.toFixed(nDigits), + rln.ZRAM.toFixed(nDigits), + rln.DH.toFixed(nDigits), + rln.Q.toFixed(nDigits), "", "", "", "" ]); } diff --git a/src/app/formulaire/definition/concrete/form-regime-uniforme.ts b/src/app/formulaire/definition/concrete/form-regime-uniforme.ts index d7d7c8fbe..79ad66e52 100644 --- a/src/app/formulaire/definition/concrete/form-regime-uniforme.ts +++ b/src/app/formulaire/definition/concrete/form-regime-uniforme.ts @@ -1,8 +1,7 @@ -import { IObservable, Observer, Session } from "jalhyd"; +import { IObservable, Observer, Session, SectionNub } from "jalhyd"; import { FormDefSection } from "../form-def-section"; import { FieldSet } from "../../fieldset"; import { FormulaireBase } from "./form-base"; -import { SectionNub } from "jalhyd/build/section/section_nub"; export class FormulaireRegimeUniforme extends FormulaireBase implements Observer { diff --git a/src/app/formulaire/definition/form-compute-pab.ts b/src/app/formulaire/definition/form-compute-pab.ts index c5cfd59c2..58f52cc07 100644 --- a/src/app/formulaire/definition/form-compute-pab.ts +++ b/src/app/formulaire/definition/form-compute-pab.ts @@ -46,22 +46,12 @@ export class FormComputePab extends FormCompute { // résultat de chaque cloison const cr: Result[] = []; - // valeur de Q pour chaque cloison - const cq: number[] = []; - // valeur de QA pour chaque bassin - const bqa: number[] = []; for (const c of pab.children) { cr.push(c.result); - cq.push(c.prms.Q.v); - bqa.push(c.prms.QA.v); } pabr.cloisonsResults = cr, - pabr.cloisonsQ = cq, - pabr.bassinsQA = bqa; // résultat de la cloison aval pabr.cloisonAvalResults = pab.downWall.result; - // débit de la cloison aval - pabr.cloisonAvalQ = pab.downWall.prms.Q.v; // cote aval de la passe pabr.Z2 = pab.prms.Z2.v; diff --git a/src/app/results/pab-results.ts b/src/app/results/pab-results.ts index d87b882b3..592708994 100644 --- a/src/app/results/pab-results.ts +++ b/src/app/results/pab-results.ts @@ -9,18 +9,9 @@ export class PabResults extends CalculatedParamResults { /** résultats des modules Cloisons avant chaque bassin */ public cloisonsResults: Result[]; - /** valeur de Q pour chaque module Cloisons */ - public cloisonsQ: number[]; - - /** valeur de QA pour chaque bassin */ - public bassinsQA: number[]; - /** résultats du module ParallelStructure pour la cloison aval */ public cloisonAvalResults: Result; - /** débit de la cloison aval */ - public cloisonAvalQ: number; - /** cote aval de l'ensemble de la passe */ public Z2: number; @@ -42,7 +33,7 @@ export class PabResults extends CalculatedParamResults { "Q", "PV", "YMOY", - "ZRB", + "ZRMB", "QA" ]; } @@ -68,10 +59,7 @@ export class PabResults extends CalculatedParamResults { public reset() { super.reset(); this.cloisonsResults = []; - this.cloisonsQ = []; - this.bassinsQA = []; this.cloisonAvalResults = undefined; - this.cloisonAvalQ = undefined; this.Z2 = undefined; } diff --git a/src/app/results/plottable-pab-results.ts b/src/app/results/plottable-pab-results.ts index 27e5685d9..95d123e39 100644 --- a/src/app/results/plottable-pab-results.ts +++ b/src/app/results/plottable-pab-results.ts @@ -74,32 +74,17 @@ export class PlottablePabResults implements PlottableData { break; case "DH": - data.push(""); - for (let i = 0; i < l - 1; i++) { - data.push((pr.cloisonsResults[i].vCalc - pr.cloisonsResults[i + 1].vCalc).toFixed(nDigits)); - } - data.push((pr.cloisonsResults[l - 1].vCalc - pr.cloisonAvalResults.vCalc).toFixed(nDigits)); - data.push((pr.cloisonAvalResults.vCalc - pr.Z2).toFixed(nDigits)); - break; - case "ZRAM": + case "Q": data.push(""); for (let i = 0; i < l; i++) { - const er = pr.cloisonsResults[i].getExtraResult("ZRAM"); + const er = pr.cloisonsResults[i].getExtraResult(symbol); data.push((er !== undefined) ? er.toFixed(nDigits) : ""); } - const zrAval = pr.cloisonAvalResults.getExtraResult("ZRAM"); + const zrAval = pr.cloisonAvalResults.getExtraResult(symbol); data.push((zrAval !== undefined) ? zrAval.toFixed(nDigits) : ""); break; - case "Q": - data.push(""); - for (let i = 0; i < l; i++) { - data.push(pr.cloisonsQ[i].toFixed(nDigits)); - } - data.push(pr.cloisonAvalQ.toFixed(nDigits)); - break; - case "Z": for (let i = 0; i < l - 1; i++) { data.push(pr.cloisonsResults[i].vCalc.toFixed(nDigits)); @@ -109,36 +94,13 @@ export class PlottablePabResults implements PlottableData { break; case "PV": - data.push(""); - for (let i = 0; i < l; i++) { - const er = pr.cloisonsResults[i].getExtraResult("PV"); - data.push((er !== undefined) ? er.toFixed(nDigits) : ""); - } - data.push(""); - break; - case "YMOY": - data.push(""); - for (let i = 0; i < l; i++) { - const er = pr.cloisonsResults[i].getExtraResult("YMOY"); - data.push((er !== undefined) ? er.toFixed(nDigits) : ""); - } - data.push(""); - break; - - case "ZRB": - data.push(""); - for (let i = 0; i < l; i++) { - const er = pr.cloisonsResults[i].getExtraResult("ZRB"); - data.push((er !== undefined) ? er.toFixed(nDigits) : ""); - } - data.push(""); - break; - + case "ZRMB": case "QA": data.push(""); for (let i = 0; i < l; i++) { - data.push(pr.bassinsQA[i].toFixed(nDigits)); + const er = pr.cloisonsResults[i].getExtraResult(symbol); + data.push((er !== undefined) ? er.toFixed(nDigits) : ""); } data.push(""); break; diff --git a/src/locale/messages.en.json b/src/locale/messages.en.json index beed8f8d1..047c1fd44 100644 --- a/src/locale/messages.en.json +++ b/src/locale/messages.en.json @@ -115,6 +115,7 @@ "INFO_LIB_ALPHA2": "Half-angle at the apex", "INFO_LIB_AVAL": "Downstream", "INFO_LIB_B": "Surface width", + "INFO_LIB_BB": "Pool width", "INFO_LIB_BETA": "Beta coefficient", "INFO_LIB_BT": "Half opening of the triangle", "INFO_LIB_CD": "Discharge coefficient", @@ -136,6 +137,7 @@ "INFO_LIB_IMP": "Impulse", "INFO_LIB_J": "Head loss", "INFO_LIB_L": "Weir width", + "INFO_LIB_LB": "Pool length", "INFO_LIB_OUVRAGE_Q_MODE": "Mode", "INFO_LIB_OUVRAGE_Q_REGIME": "Regime", "INFO_LIB_OUVRAGE_Q": "Discharge", diff --git a/src/locale/messages.fr.json b/src/locale/messages.fr.json index 7ad7fb61d..82955df7a 100644 --- a/src/locale/messages.fr.json +++ b/src/locale/messages.fr.json @@ -115,6 +115,7 @@ "INFO_LIB_ALPHA2": "Demi-angle au sommet", "INFO_LIB_AVAL": "Aval", "INFO_LIB_B": "Largeur au miroir", + "INFO_LIB_BB": "Largeur du bassin", "INFO_LIB_BETA": "Coefficient béta", "INFO_LIB_BT": "Demi-ouverture du triangle", "INFO_LIB_CD": "Coefficient de débit", @@ -136,6 +137,7 @@ "INFO_LIB_IMP": "Impulsion", "INFO_LIB_J": "Perte de charge", "INFO_LIB_L": "Largeur du déversoir", + "INFO_LIB_LB": "Longueur du bassin", "INFO_LIB_OUVRAGE_Q_ENUM_STRUCTUREFLOWMODE": "Type d'écoulement", "INFO_LIB_OUVRAGE_Q_ENUM_STRUCTUREFLOWREGIME": "Régime", "INFO_LIB_OUVRAGE_Q": "Débit", -- GitLab