//Методы расчетов public void SystemCalc() { CurrentSystem = new RfSystem(comboBox1.SelectedItem as Element, comboBox2.SelectedItem as Element, comboBox3.SelectedItem as Element, comboBox4.SelectedItem as Element); label14.Text = "Усиление системы = " + Convert.ToString(CurrentSystem.TotalGain()) + " dB"; label15.Text = "Шум системы = " + Convert.ToString(CurrentSystem.TotalNoise()) + " dB"; label16.Text = "Цена системы = " + Convert.ToString(CurrentSystem.TotalCost()) + " $"; } // Расчет текущей системы
//Конструктор хромосомы с задаными индексами для детей public Chromosome(int SwitchIndex, int LNAIndex, int MixerIndex, int FilterIndex) { this.SwitchIndex = SwitchIndex; this.LNAIndex = LNAIndex; this.MixerIndex = MixerIndex; this.FilterIndex = FilterIndex; RfSystem SystemChromosome = new RfSystem(ElementStore.Switches[SwitchIndex], ElementStore.LNAs[LNAIndex], ElementStore.Mixers[MixerIndex], ElementStore.Filters[FilterIndex]); ChromosomeTotalGain = SystemChromosome.TotalGain(); ChromosomeTotalNoise = SystemChromosome.TotalNoise(); ChromosomeTotalCost = SystemChromosome.TotalCost(); // Есть и цена, и цена фитнесс - надо определиться и что то одно оставить ChromosomeDescription = SystemChromosome.SystemDescription(); //Запрос имен ChromosomeIndexes = SwitchIndex + " " + LNAIndex + " " + MixerIndex + " " + FilterIndex; //Запрос индексов SystemSwitch = SystemChromosome.SystemSwitch(); SystemLNA = SystemChromosome.SystemLNA(); SystemMixer = SystemChromosome.SystemMixer(); SystemFilter = SystemChromosome.SystemFilter(); GetRecall(); //Пересчет всегда, при создании хромосомы }