public void AddValue(ValueType Value)
        {
            _ValuesCount++;
            if (!MinMaxBufferFull)
            {
                MaxValues.Add(Value);
                MinValues.Add(Value);
                if (MaxValues.Count > 9)
                {
                    MaxBoundary      = MaxValues.Min();
                    MinBoundary      = MinValues.Max();
                    MinMaxBufferFull = true;
                }
                return;
            }


            if (Value.CompareTo(MaxBoundary) > 0)
            {
                MaxValues.Remove(MaxBoundary);
                MaxValues.Add(Value);
                MaxBoundary = MaxValues.Min();
            }
            if (Value.CompareTo(MinBoundary) < 0)
            {
                MinValues.Remove(MinBoundary);
                MinValues.Add(Value);
                MinBoundary = MinValues.Max();
            }
        }
Beispiel #2
0
 public static void Load()
 {
     RuntimeData      = new DataLists();
     RuntimeProperty  = RuntimeData.GlobalProperties.First();
     RuntimeIndex     = new IndexViewModel();
     RuntimePlane     = new PlaneViewModel();
     RuntimeMaxValues = new MaxValues();
 }
        public void Save(string title)
        {
            MeanValues.SaveStats(title, "AVG");
            MinValues.SaveStats(title, "MIN");
            MaxValues.SaveStats(title, "MAX");

            MeanValuesSFC.SaveStats(title, "AVG");
            MinValuesSFC.SaveStats(title, "MIN");
            MaxValuesSFC.SaveStats(title, "MAX");
        }
Beispiel #4
0
        public IActionResult GetMax()
        {
            MaxValues max = new MaxValues();

            max.COMaxCon  = COMaxCon;
            max.NO2MaxCon = NO2MaxCon;
            max.SO2MaxCon = SO2MaxCon;
            max.AQIMax    = AQIMax;
            return(Ok(max));
        }
Beispiel #5
0
        /// <summary>
        /// Save Features.Charts settings to the settings file
        /// </summary>
        /// <param name="generalNode">XML-node for the Features.Charts settings</param>
        public void Save(XmlNode chartsNode)
        {
            string  xpath;
            XmlNode node;

            xpath = "./height";
            SettingsHelper.SetSettingValue(xpath, chartsNode, Height.ToString());

            xpath = "./maxHeight";
            SettingsHelper.SetSettingValue(xpath, chartsNode, MaxHeight.ToString());

            xpath = "./width";
            SettingsHelper.SetSettingValue(xpath, chartsNode, Width.ToString());

            xpath = "./maxWidth";
            SettingsHelper.SetSettingValue(xpath, chartsNode, MaxWidth.ToString());

            xpath = "./colors";
            SettingsHelper.SetSettingValue(xpath, chartsNode, "color", Colors);

            xpath = "./lineThickness";
            SettingsHelper.SetSettingValue(xpath, chartsNode, LineThickness.ToString());

            xpath = "./maxLineThickness";
            SettingsHelper.SetSettingValue(xpath, chartsNode, MaxLineThickness.ToString());

            xpath = "./logotype";
            SettingsHelper.SetSettingValue(xpath, chartsNode, Logotype);

            xpath = "./maxValues";
            SettingsHelper.SetSettingValue(xpath, chartsNode, MaxValues.ToString());

            xpath = "./timeSortOrder";
            SettingsHelper.SetSettingValue(xpath, chartsNode, TimeSortOrder.ToString());

            xpath = "./labelOrientation";
            SettingsHelper.SetSettingValue(xpath, chartsNode, LabelOrientation.ToString());

            xpath = "./font";
            node  = SettingsHelper.GetNode(chartsNode, xpath);
            _fontSettings.Save(node);

            xpath = "./legend";
            node  = SettingsHelper.GetNode(chartsNode, xpath);
            _legendSettings.Save(node);

            xpath = "./guidelines";
            node  = SettingsHelper.GetNode(chartsNode, xpath);
            _guidelinesSettings.Save(node);

            xpath = "./showSourse";
            SettingsHelper.SetSettingValue(xpath, chartsNode, ShowSource.ToString());

            xpath = "./showLogo";
            SettingsHelper.SetSettingValue(xpath, chartsNode, ShowLogo.ToString());

            xpath = "./lineThicknessPhrame";
            SettingsHelper.SetSettingValue(xpath, chartsNode, LineThicknessPhrame.ToString());

            xpath = "./lineColorPhrame";
            SettingsHelper.SetSettingValue(xpath, chartsNode, LineColorPhrame.ToString());

            xpath = "./backgroundColorGraphs";
            SettingsHelper.SetSettingValue(xpath, chartsNode, BackgroundColorGraphs.ToString());
        }
 public void ProcessAtmSnapshot(Atmosphere atm)
 {
     MeanValues.Add(atm);
     MinValues.GetMin(atm);
     MaxValues.GetMax(atm);
 }
        public DetOptStudy(string name, string description, string parentName = "")
            : base(name, null, null, description, parentName)
        {
            // Create SQL statements to create tables, sqlStatement1 for OptimAllResults and sqlStatement2 for OptimGenResults
            sqlStatement1  = "create table OptimAllResults (";
            sqlStatement2  = "create table OptimGenResults (";
            sqlStatement1 += "ID int, ";
            sqlStatement2 += "ID int, Category int, ";

            #region Atif
            // Prepare results database
            foreach (var designVariable in OptimisationTemplate.DesignVariables)
            {
                string columnHeader = designVariable.Name;
                ColumnNames.Add(columnHeader);
                sqlStatement1 += columnHeader + " ";
                sqlStatement2 += columnHeader + " ";
                if (designVariable.Data is IntegerData)
                {
                    ColumnTypes.Add(DataTypes.INTEGER);
                    ColumnFormats.Add(0);
                    sqlStatement1 += "int, ";
                    sqlStatement2 += "int, ";
                }
                else if (designVariable.Data is DoubleData)
                {
                    ColumnTypes.Add(DataTypes.DOUBLE);
                    ColumnFormats.Add(((DoubleData)(designVariable.Data)).DecimalPlaces);
                    sqlStatement1 += "float, ";
                    sqlStatement2 += "float, ";
                }
                ColumnUnits.Add(designVariable.Data.Unit);
                MinValues.Add(designVariable.LowerBound);
                MaxValues.Add(designVariable.UpperBound);
            }
            foreach (Objective objective in OptimisationTemplate.Objectives)
            {
                string columnHeader = objective.Name;
                ColumnNames.Add(columnHeader);
                sqlStatement1 += columnHeader + " ";
                sqlStatement2 += columnHeader + " ";
                if (objective.Data is IntegerData)
                {
                    ColumnTypes.Add(DataTypes.INTEGER);
                    ColumnFormats.Add(0);
                    sqlStatement1 += "int, ";
                    sqlStatement2 += "int, ";
                }
                else if (objective.Data is DoubleData)
                {
                    ColumnTypes.Add(DataTypes.DOUBLE);
                    ColumnFormats.Add(((DoubleData)(objective.Data)).DecimalPlaces);
                    sqlStatement1 += "float, ";
                    sqlStatement2 += "float, ";
                }
                ColumnUnits.Add(objective.Data.Unit);
                MinValues.Add(Double.NaN);
                MaxValues.Add(Double.NaN);
            }
            foreach (Aircadia.ObjectModel.Treatments.Optimisers.Formulation.Constraint constraint in OptimisationTemplate.Constraints)
            {
                string columnHeader = constraint.Name;
                ColumnNames.Add(columnHeader);
                sqlStatement1 += columnHeader + " ";
                sqlStatement2 += columnHeader + " ";
                if (constraint.Data is IntegerData)
                {
                    ColumnTypes.Add(DataTypes.INTEGER);
                    ColumnFormats.Add(0);
                    sqlStatement1 += "int, ";
                    sqlStatement2 += "int, ";
                }
                else if (constraint.Data is DoubleData)
                {
                    ColumnTypes.Add(DataTypes.DOUBLE);
                    ColumnFormats.Add(((DoubleData)(constraint.Data)).DecimalPlaces);
                    sqlStatement1 += "float, ";
                    sqlStatement2 += "float, ";
                }
                ColumnUnits.Add(constraint.Data.Unit);
                MinValues.Add(Double.NaN);
                MaxValues.Add(Double.NaN);
            }

            TableNames.Add("OptimAllResults");
            TableNames.Add("OptimGenResults");

            if (OptimisationTemplate.DesignVariables.Count() + OptimisationTemplate.Objectives.Count() + OptimisationTemplate.Constraints.Count() > 0)
            {
                sqlStatement1 = sqlStatement1.Remove(sqlStatement1.Length - 2);
                sqlStatement2 = sqlStatement2.Remove(sqlStatement2.Length - 2);
            }
            sqlStatement1 += ")";
            sqlStatement2 += ")";


            #endregion Atif
        }