Exemple #1
0
        /// <summary>
        /// обработать ряд и получить характеристики по всему ряду
        /// </summary>
        /// <param name="range"></param>
        /// <param name="totalRange"></param>
        /// <returns></returns>
        public static EnergyInfo ProcessRange(RawRange range, RawRange totalRange = null)
        {
            double density = range.AirDensity;

            totalRange = totalRange ?? range;

            if (range.Count == 0)
            {
                return(null);
            }
            EnergyInfo res = new EnergyInfo();

            res.FromDate               = range[0].Date;
            res.ToDate                 = range.Last().Date;
            res.PowerDensity           = getAveragePower(range, density);
            res.V0                     = getAverageSpeed(range);
            res.StandardDeviationSpeed = getSigmV(res.V0, range);
            res.Vmax                   = getMaxSpeed(range);
            res.Vmin                   = getMinSpeed(range);
            res.EnergyDensity          = res.PowerDensity * 8760d;
            res.Cv                     = res.StandardDeviationSpeed / res.V0;
            res.VeybullGamma           = getVeybullGamma(res.Cv);
            res.VeybullBeta            = getVeybullBeta(res.V0, res.VeybullGamma);
            res.ExtremalSpeed          = getExtremalSpeed(res.V0, res.VeybullGamma);
            res.ExpectancyDeviation    = getExpectancyDeviation(range, totalRange);

            return(res);
        }
Exemple #2
0
        private void buttonOpenRange_Click(object sender, EventArgs e)
        {
            RawRange tempr = range.GetRange(
                radioButtonSelectPeriod.Checked,
                radioButtonSelectYearMonth.Checked,
                dateTimePickerFrom.Value,
                dateTimePickerTo.Value,
                comboBoxYear.SelectedItem,
                comboBoxMonth.SelectedItem
                );

            if (tempr == null)
            {
                throw new Exception("что-то совсем не так!!");
            }
            tempr.Name = range.Name + $" {tempr.First().Date:dd.MM.yyyy} - {tempr.Last().Date:dd.MM.yyyy}";

            _ = Program.winMain.mainTabControl.OpenNewTab(tempr, tempr.Name).Focus();
            Close();
        }