jalhyd
Version:
JaLHyd, a Javascript Library for Hydraulics
69 lines (68 loc) • 2.19 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.cSnRectang = 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");
/**
* Calculs de la section rectangulaire
*/
// tslint:disable-next-line:class-name
class cSnRectang extends internal_modules_4.acSection {
constructor(prms, dbg = false) {
super(prms, dbg);
this.nodeType = internal_modules_1.SectionType.SectionRectangle;
}
get prms() {
return this._prms;
}
/**
* Calcul du périmètre mouillé
* @return Périmètre mouillé (m)
*/
Calc_P() {
// return this.prms.LargeurBerge.v + super.Calc_P_Debordement(this.prms.Y.v);
const rPDeb = super.Calc_P_Debordement(this.prms.Y.v);
if (!rPDeb.ok) {
return rPDeb;
}
const v = this.prms.LargeurBerge.v + rPDeb.vCalc;
return new internal_modules_2.Result(v);
}
Calc_dP() {
return super.Calc_dP_Debordement();
}
Calc_B() {
return super.Calc_B_Debordement();
}
Calc_dB() {
return super.Calc_dB_Debordement();
}
Calc_S() {
return super.Calc_S_Debordement(this.prms.Y.v);
}
/**
* Calcul du tirant d'eau conjugué avec la formule analytique pour la section rectangulaire
* @return tirant d'eau conjugué
*/
CalcYco() {
const rFR = this.calcFromY("Fr");
if (!rFR.ok) {
return rFR;
}
const v = this.prms.Y.v * (Math.sqrt(1 + 8 * Math.pow(rFR.vCalc, 2)) - 1) / 2;
return new internal_modules_2.Result(v);
}
/**
* Critical depth calculation.
* Analytical formula
* @return Result object with critical depth
*/
Calc_Yc() {
const v = Math.pow(Math.pow(this.prms.Q.v / this.prms.LargeurBerge.v, 2) / internal_modules_3.ParamsSectionRectang.G, 1 / 3);
return super.Calc_Yc(v);
}
}
exports.cSnRectang = cSnRectang;
//# sourceMappingURL=section_rectang.js.map