jalhyd
Version:
JaLHyd, a Javascript Library for Hydraulics
52 lines • 2.07 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.PabPuissance = 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");
class PabPuissance extends internal_modules_2.Nub {
constructor(prms, dbg = false) {
super(prms, dbg);
this.setCalculatorType(internal_modules_1.CalculatorType.PabPuissance);
}
/**
* paramètres castés au bon type
*/
get prms() {
return this._prms;
}
Equation(sVarCalc) {
let v;
const ro = 1000; // masse volumique de l'eau en kg/m3
const g = 9.81; // accélération de la gravité terrestre en m/s2.
switch (sVarCalc) {
case "PV":
v = ro * g * this.prms.Q.v * this.prms.DH.v / this.prms.V.v;
break;
case "Q":
v = this.prms.PV.v * this.prms.V.v / (ro * g * this.prms.DH.v);
break;
case "V":
v = ro * g * this.prms.Q.v * this.prms.DH.v / this.prms.PV.v;
break;
case "DH":
v = this.prms.PV.v * this.prms.V.v / (ro * g * this.prms.Q.v);
break;
default:
throw new Error("PabPuissance.Equation() : invalid variable name " + sVarCalc);
}
return new internal_modules_4.Result(v, this);
}
/**
* paramétrage de la calculabilité des paramètres
*/
setParametersCalculability() {
this.prms.DH.calculability = internal_modules_3.ParamCalculability.EQUATION;
this.prms.Q.calculability = internal_modules_3.ParamCalculability.EQUATION;
this.prms.V.calculability = internal_modules_3.ParamCalculability.EQUATION;
this.prms.PV.calculability = internal_modules_3.ParamCalculability.EQUATION;
}
}
exports.PabPuissance = PabPuissance;
//# sourceMappingURL=pab_puissance.js.map