jalhyd
Version:
JaLHyd, a Javascript Library for Hydraulics
50 lines • 1.72 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.StructureTriangularWeirFree = void 0;
const internal_modules_1 = require("../internal_modules");
const internal_modules_2 = require("../internal_modules");
const internal_modules_3 = require("../internal_modules");
/**
* Equation classique seuil triangulaire + Ennoiement Villemonte
*/
class StructureTriangularWeirFree extends internal_modules_3.Structure {
constructor(prms, dbg = false) {
super(prms, dbg);
}
/**
* paramètres castés au bon type
*/
get prms() {
return this._prms;
}
/**
* Calcul analytique Q = f(Cd, L, h1, h2, W)
* @param sVarCalc Variable à calculer (doit être "Q")
*/
CalcQ() {
const data = this.getResultData();
const Q = this.prms.CdT.v * this.getTanFromDegrees(this.prms.alpha2.v)
* Math.pow(this.prms.h1.v, 2.5);
return new internal_modules_2.Result(Q, this, data);
}
getFlowMode() {
return internal_modules_3.StructureFlowMode.WEIR;
}
/**
* Compute Tangent with angle in degrees
* @param degrees Angle (degrees)
*/
getTanFromDegrees(degrees) {
return Math.tan(degrees * Math.PI / 180);
}
/**
* paramétrage de la calculabilité des paramètres
*/
setParametersCalculability() {
super.setParametersCalculability();
this.prms.alpha2.calculability = internal_modules_1.ParamCalculability.DICHO;
this.prms.CdT.calculability = internal_modules_1.ParamCalculability.DICHO;
}
}
exports.StructureTriangularWeirFree = StructureTriangularWeirFree;
//# sourceMappingURL=structure_triangular_weir_free.js.map