UNPKG

jalhyd

Version:

JaLHyd, a Javascript Library for Hydraulics

74 lines 2.53 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ParTypePF = void 0; const internal_modules_1 = require("../internal_modules"); const internal_modules_2 = require("../internal_modules"); const internal_modules_3 = require("../internal_modules"); /** * Intermediate class for common stuff between PLANE and FATOU pass types */ class ParTypePF extends internal_modules_1.ParTypeAbstract { /** * Math.sqrt(9.81) */ get RG() { return 3.13209; } CalcH() { const qStar = this.CalcQStar(); return this.prms.L.v * (this.c2h * Math.pow(qStar, 2) + this.c1h * qStar + this.c0h); } CalcHa(qStar) { if (qStar === undefined) { qStar = this.CalcQStar(); } // @TODO L.V (grand V) pour la vérification de ha p/r aux abaques ? Fait foirer le calcul de L … return this.prms.L.v * (this.c2ha * Math.pow(qStar, 2) + this.c1ha * qStar + this.c0ha); } CalcQStar() { return this.prms.Q.V / (this.RG * Math.pow(this.prms.L.v, 2.5)); } get minQstar() { return 0.0065; } get maxQstar() { return 0.35; } CalcQFromQStar(qStar) { return qStar * this.RG * Math.pow(this.prms.L.v, 2.5); } CalcLFromQStar(qStar) { return Math.pow(qStar * this.RG / this.prms.Q.v, 0.4); } CalcQFromHa() { const x = this.ha / this.prms.L.v; const y = this.doCalcQYFromHa(x); return this.CalcQFromQStar(y); } /** calculates the number of baffles Nb based on the baffles spacing P */ CalcNb() { return this.CalcLs() / this.P + 1; } checkInput() { let fatal = false; const messages = []; // L; when calculated, see Par.Calc() if (this.prms.L.valueMode !== internal_modules_3.ParamValueMode.CALCUL) { if (this.prms.L.v < 0.3 || this.prms.L.v > 1.3) { fatal = true; const m = new internal_modules_2.Message(internal_modules_2.MessageCode.ERROR_PAR_L); m.extraVar.min = 0.3; m.extraVar.max = 1.3; messages.push(m); } else if (this.prms.L.v > 1) { const m = new internal_modules_2.Message(internal_modules_2.MessageCode.WARNING_PAR_L); m.extraVar.max = 1; messages.push(m); } } return { fatal, messages }; } } exports.ParTypePF = ParTypePF; //# sourceMappingURL=par_type_pf.js.map