jalhyd
Version:
JaLHyd, a Javascript Library for Hydraulics
35 lines • 1.5 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.StructureTriangularWeirBroad = 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 StructureTriangularWeirBroad extends internal_modules_3.StructureTriangularWeirFree {
constructor(prms, dbg = false) {
super(prms, dbg);
this.setLoiDebit(internal_modules_2.LoiDebit.TriangularWeirBroad); // First name of the law for backward compatibility
}
/**
* Calcul analytique Q = f(Cd, L, h1, h2, W)
* @param sVarCalc Variable à calculer (doit être "Q")
*/
CalcQ() {
const r = super.CalcQ();
if (this.prms.h1.v > 0 && r.values.ENUM_StructureFlowRegime !== internal_modules_1.StructureFlowRegime.FREE) {
r.vCalc = r.vCalc * Math.sin(3.962902 * Math.pow((1 - this.prms.h2.v / this.prms.h1.v), 0.574979));
}
return r;
}
getFlowRegime() {
if (this.prms.h2.v < 4 / 5 * this.prms.h1.v) {
// Yc = 4 / 5 * H1 (Jameson, 1925)
return internal_modules_1.StructureFlowRegime.FREE;
}
return internal_modules_1.StructureFlowRegime.SUBMERGED;
}
}
exports.StructureTriangularWeirBroad = StructureTriangularWeirBroad;
//# sourceMappingURL=structure_triangular_weir_broad.js.map