Forked from HYCAR-Hydro / airGR
Source project has a limited visibility.
structure_weir_free.ts 1.00 KiB
import { Result } from "../util/result";
import { RectangularStructure } from "./rectangular_structure";
import { RectangularStructureParams } from "./rectangular_structure_params";
import { Structure, StructureFlowMode, StructureFlowRegime } from "./structure";
export { RectangularStructureParams };
/**
 * Equation classique seuil dénoyé
export class StructureWeirFree extends RectangularStructure {
    /**
     * Calcul analytique Q = f(Cd, L, h1, h2, W) seuil dénoyé
     * @param sVarCalc Variable à calculer (doit être "Q")
    public Equation(sVarCalc: string): Result {
        Structure.CheckEquation(sVarCalc);
        const data = super.defaultResultData();
        // TODO : Warning si les conditions hydrauliques ne correspondent pas à un seuil dénoyé
        data.Regime = StructureFlowRegime.FREE;
        data.Mode = StructureFlowMode.WEIR;
        const v = this.prms.Cd.v * this.prms.L.v * Structure.R2G * Math.pow(this.prms.h1.v, 1.5);
        return new Result(v, data);