/// <reference path="../node_modules/@types/jasmine/index.d.ts" /> import { Result } from "../src/base"; import { precDist, equalEpsilon } from "./nubtest"; import { ParamsSectionCirc, cSnCirc } from "../src/section/section_circulaire"; let paramSection: ParamsSectionCirc; let sect: cSnCirc; function createSection(prec: number): cSnCirc { paramSection = new ParamsSectionCirc(2, // diamètre 0.8, // tirant d'eau 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 cSnCirc(undefined, paramSection); } function check(val1: number, val2: number) { expect(equalEpsilon(val1, val2)).toBeTruthy("expected " + val2 + ", got " + val1); } describe('Section paramétrée circulaire : ', () => { beforeEach(() => { sect = createSection(precDist); }); describe('torrentiel :', () => { // charge spécifique it('Hs should equal to 4.501', () => { check(sect.Calc("Hs"), 4.501); }); // charge critique it('Hsc should equal to 2.263', () => { check(sect.Calc("Hsc"), 2.263); }); // largeur au miroir it('B should equal to 1.960', () => { check(sect.Calc("B"), 1.960); }); // périmètre mouillé it('P should equal to 2.739', () => { check(sect.Calc("P"), 2.739); }); // surface mouillée it('S should equal to 1.173', () => { check(sect.Calc("S"), 1.173); }); // rayon hydraulique it('R should equal to 0.428', () => { check(sect.Calc("R"), 0.428); }); // vitesse moyenne it('V should equal to 8.522', () => { check(sect.Calc("V"), 8.522); }); // nombre de Froude it('Fr should equal to 3.516', () => { check(sect.Calc("Fr"), 3.516); }); // tirant d'eau critique it('Yc should equal to 1.581', () => { check(sect.Calc("Yc"), 1.581); }); // tirant d'eau normal it('Yn should equal to 4.624', () => { check(sect.Calc("Yn"), 4.624); }); // tirant d'eau fluvial it('Yf should equal to 4.43', () => { check(sect.Calc("Yf"), 4.43); }); // tirant d'eau torrentiel it('Yt should equal to 0.8', () => { check(sect.Calc("Yt"), 0.8); }); // tirant d'eau conjugué it('Yco should equal to 0.8', () => { check(sect.Calc("Yco"), 0.8); }); // perte de charge it('J should equal to 0.141', () => { //sect = createSection(0.00001); check(sect.Calc("J"), 0.141); }); // Variation linéaire de l'énergie spécifique it('I-J should equal to -0.14', () => { //sect = createSection(0.00001); check(sect.Calc("I-J"), -0.14); }); // impulsion hydraulique it('Imp should equal to 89065.861', () => { check(sect.Calc("Imp"), 89065.861); }); // force tractrice (contrainte de cisaillement) it('Tau0 should equal to 590.605', () => { check(sect.Calc("Tau0"), 590.605); }); }); });