section_param_puiss_torrentiel.spec.ts 3.70 KiB
/// <reference path="../node_modules/@types/jasmine/index.d.ts" />
import { Result } from "../src/base";
import { nub, precDigits, precDist } from "./nubtest";
import { ParamsSectionPuiss, cSnPuiss } from "../src/section/section_puissance";
let paramSection: ParamsSectionPuiss;
let sect: cSnPuiss;
function createSection(prec: number): cSnPuiss {
    paramSection = new ParamsSectionPuiss(0.5, // coefficient
        0.8, // tirant d'eau
        4, // largeur de berge
        40, //  Ks=Strickler
        10,  //  Q=Débit
        0.001, //  If=pente du fond
        prec, // précision
        1 // YB= hauteur de berge
        // YCL=Condition limite en cote à l'amont ou à l'aval
    return new cSnPuiss(undefined, paramSection);
describe('Section paramétrée puissance :', () => {
    beforeEach(() => {
        sect = createSection(precDist);
    });
    describe('torrentiel / pas de débordement :', () => {
        // charge spécifique
        it('Hs should equal to 2.2', () => {
            expect(sect.Calc("Hs")).toBeCloseTo(2.2, precDigits);
        });
        // charge critique
        it('Hsc should equal to 1.616', () => {
            expect(sect.Calc("Hsc")).toBeCloseTo(1.616, precDigits);
        });
        // largeur au miroir
        it('B should equal to 3.578', () => {
            expect(sect.Calc("B")).toBeCloseTo(3.578, precDigits);
        });
        // périmètre mouillé
        it('P should equal to 4.223', () => {
            expect(sect.Calc("P")).toBeCloseTo(4.223, precDigits);
        });
        // surface mouillée
        it('S should equal to 1.908', () => {
            expect(sect.Calc("S")).toBeCloseTo(1.908, precDigits);
        });
        // rayon hydraulique
        it('R should equal to 0.452', () => {
            expect(sect.Calc("R")).toBeCloseTo(0.452, precDigits);
        });
        // vitesse moyenne
        it('V should equal to 5.241', () => {
            expect(sect.Calc("V")).toBeCloseTo(5.241, precDigits);
        });
        // nombre de Froude
        it('Fr should equal to 2.291', () => {
            expect(sect.Calc("Fr")).toBeCloseTo(2.291, precDigits);
        });
7172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
// tirant d'eau critique it('Yc should equal to 1.186', () => { expect(sect.Calc("Yc")).toBeCloseTo(1.186, precDigits); }); // tirant d'eau normal it('Yn should equal to 1.916', () => { expect(sect.Calc("Yn")).toBeCloseTo(1.916, precDigits); }); // tirant d'eau fluvial it('Yf should equal to 2.126', () => { expect(sect.Calc("Yf")).toBeCloseTo(2.126, precDigits); }); // tirant d'eau torrentiel it('Yt should equal to 0.8', () => { expect(sect.Calc("Yt")).toBeCloseTo(0.8, precDigits); }); // tirant d'eau conjugué it('Yco should equal to 1.746', () => { expect(sect.Calc("Yco")).toBeCloseTo(1.746, precDigits); }); // perte de charge it('J should equal to 0.05', () => { //sect = createSection(0.00001); expect(sect.Calc("J")).toBeCloseTo(0.05, precDigits); }); // Variation linéaire de l'énergie spécifique it('I-J should equal to -0.049', () => { //sect = createSection(0.00001); expect(sect.Calc("I-J")).toBeCloseTo(-0.049, precDigits); }); // impulsion hydraulique it('Imp should equal to 58397.786', () => { expect(sect.Calc("Imp")).toBeCloseTo(58397.786, precDigits); }); // force tractrice (contrainte de cisaillement) it('Tau0 should equal to 219.455', () => { expect(sect.Calc("Tau0")).toBeCloseTo(219.455, precDigits); }); }); });