UNPKG

jalhyd

Version:

JaLHyd, a Javascript Library for Hydraulics

68 lines 2.88 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ConduiteDistrib = void 0; const internal_modules_1 = require("../internal_modules"); const internal_modules_2 = require("../internal_modules"); const internal_modules_3 = require("../internal_modules"); const internal_modules_4 = require("../internal_modules"); /** * classe de calcul sur la conduite distributrice */ class ConduiteDistrib extends internal_modules_2.Nub { constructor(prms, dbg = false) { super(prms, dbg); this.setCalculatorType(internal_modules_1.CalculatorType.ConduiteDistributrice); } /** * paramètres castés au bon type */ get prms() { return this._prms; } /** * calcul direct des différents paramètres * @param sVarCalc nom du paramètre * @return valeur calculée */ Equation(sVarCalc) { let v; const K = 0.3164 * Math.pow(4, 1.75) / (5.5 * 9.81 * Math.pow(3.1415, 1.75)); // Constante de la formule switch (sVarCalc) { case "J": v = K * Math.pow(this.prms.Nu.v, 0.25) * Math.pow(this.prms.Q.v, 1.75) * this.prms.Lg.v / Math.pow(this.prms.D.v, 4.75); break; case "D": v = Math.pow(this.prms.J.v / (K * Math.pow(this.prms.Nu.v, 0.25) * Math.pow(this.prms.Q.v, 1.75) * this.prms.Lg.v), 1 / 4.75); break; case "Q": v = Math.pow(this.prms.J.v / (K * Math.pow(this.prms.Nu.v, 0.25) * this.prms.Lg.v / Math.pow(this.prms.D.v, 4.75)), 1 / 1.75); break; case "Lg": v = this.prms.J.v / (K * Math.pow(this.prms.Nu.v, 0.25) * Math.pow(this.prms.Q.v, 1.75) / Math.pow(this.prms.D.v, 4.75)); break; case "Nu": v = Math.pow(this.prms.J.v / (K * Math.pow(this.prms.Q.v, 1.75) * this.prms.Lg.v / Math.pow(this.prms.D.v, 4.75)), 1 / 0.25); break; default: throw new Error("ConduiteDistrib.Equation() : invalid parameter name " + sVarCalc); } return new internal_modules_4.Result(v, this); } /** * paramétrage de la calculabilité des paramètres */ setParametersCalculability() { this.prms.J.calculability = internal_modules_3.ParamCalculability.EQUATION; this.prms.D.calculability = internal_modules_3.ParamCalculability.EQUATION; this.prms.Q.calculability = internal_modules_3.ParamCalculability.EQUATION; this.prms.Lg.calculability = internal_modules_3.ParamCalculability.EQUATION; this.prms.Nu.calculability = internal_modules_3.ParamCalculability.EQUATION; } } exports.ConduiteDistrib = ConduiteDistrib; //# sourceMappingURL=cond_distri.js.map