Example #1
0
        public void CalcIBL_H2_Test()
        {
            WakeCollection    WakeModList = new WakeCollection();
            TurbineCollection turbineList = new TurbineCollection();

            double[]     power      = new double[23];
            string       Power_file = testingFolder + "\\Calc_IBL_H2\\Power.txt";
            StreamReader sr         = new StreamReader(Power_file);

            for (int i = 0; i <= 22; i++)
            {
                power[i] = Convert.ToSingle(sr.ReadLine());
            }

            double[] Thrust      = new double[23];
            string   Thrust_file = testingFolder + "\\Calc_IBL_H2\\Thrust.txt";

            sr = new StreamReader(Thrust_file);

            for (int i = 0; i <= 22; i++)
            {
                Thrust[i] = Convert.ToSingle(sr.ReadLine());
            }

            turbineList.AddPowerCurve("GW 1500/87", 3, 22, 1500, power, Thrust, 87, 16, 10, 1, 0);

            Turbine[] UW_Turbs = new Turbine[1];
            UW_Turbs[0]      = new Turbine();
            UW_Turbs[0].UTMX = 283000;
            UW_Turbs[0].UTMY = 4553300;

            MetCollection metList = new MetCollection();

            metList.metItem     = new Met[1];
            metList.metItem[0]  = new Met();
            metList.WS_FirstInt = 0.5f;
            metList.WS_IntSize  = 1;
            metList.numWS       = 30;

            WakeModList.AddWakeModel(1, 5, 10, turbineList.powerCurves[0], 10, 3.5f, 0.03f, "Linear");
            double This_IBL_H2 = WakeModList.Calc_IBL_H2(UW_Turbs[0], 280000, 4553500, WakeModList.wakeModels[0], 90f, metList, 80.0);

            Assert.AreEqual(This_IBL_H2, 394.2, 1, "Wrong IBL H2");
        }