public ViewModel() { DataRepository = new DataRepository(); _engine = new SynteticDataGenerator( new RealDataImporter(), new FtfTensorCurveImporter(), new ObservatoryDataExporter()); LoadDataCommand = new DelegateCommand(Load); LoadImpedanceCommand = new DelegateCommand(LoadImpedance); LoadGicCommand = new DelegateCommand(LoadGic); SaveDataCommand = new DelegateCommand(SaveData, CanSaveData); SaveSpectraCommand = new DelegateCommand(SaveSpectraData, CanSaveSpectraData); ExportCommand = new DelegateCommand(ExportImage); Status = new CalculationInfoModel(Validation, Calculate); SpectraStatus = new CalculationInfoModel(ValidationSpectra, CalculateSpectra); Status.RaiseValidation(); SpectraStatus.RaiseValidation(); SaveDataCommand.RaiseCanExecuteChanged(); SaveSpectraCommand.RaiseCanExecuteChanged(); DataRepository.SelectedSites.CollectionChanged += SelectedSites_CollectionChanged; DataRepository.All.CollectionChanged += All_CollectionChanged; }
static void Main(string[] args) { System.Console.WriteLine(); System.Console.WriteLine(@"-- Расчёт электрического поля - 1.2 - 01.04.2018 --"); System.Console.WriteLine(@"-- Епишкин Дмитрий - [email protected] --"); System.Console.WriteLine(); if (!ReadSettings()) { System.Console.WriteLine(@"Программа завершена"); System.Console.ReadKey(); return; } System.Console.WriteLine(); System.Console.WriteLine("Проверка входных параметров.."); if (!CheckSettings()) { System.Console.WriteLine(@"Файл input.inf содержит недопустимые параметры"); System.Console.WriteLine(@"Программа завершена"); System.Console.ReadKey(); return; } System.Console.WriteLine("Всё в порядке!"); System.Console.WriteLine(); System.Console.WriteLine("Длина окна для преобразования поля: " + _windowGenerating); System.Console.WriteLine("Шаг окна преобразования поля: " + _step); System.Console.WriteLine("Длина окна для расчёта амплитуд и спектральных мощностей: " + _windowPowerSpectra); System.Console.WriteLine(); var data = new SynteticDataGenerator( new RealDataImporter(), new FtfTensorCurveImporter(), new ObservatoryDataExporter()) .Generate(_tsFile, _zFile, _outTsFile, _windowGenerating, _step, _acFilter); System.Console.WriteLine(); System.Console.WriteLine("Расчёт средней амплитуды и спектральной мощности Hx"); var hx = PowerSpectraCalculation.Run(data.Hx, _windowPowerSpectra); System.Console.WriteLine("Расчёт средней амплитуды и спектральной мощности Hy"); var hy = PowerSpectraCalculation.Run(data.Hy, _windowPowerSpectra); System.Console.WriteLine("Расчёт средней амплитуды и спектральной мощности Ex"); var ex = PowerSpectraCalculation.Run(data.Ex, _windowPowerSpectra); System.Console.WriteLine("Расчёт средней амплитуды и спектральной мощности Ey"); var ey = PowerSpectraCalculation.Run(data.Ey, _windowPowerSpectra); System.Console.WriteLine("Сохранение амплитуд и спектральных мощностей в файл"); PowerSpectraExporter.Export(_outPowerSpectraFile, ex, ey, hx, hy); System.Console.WriteLine(); System.Console.WriteLine("-- Готово --"); System.Console.ReadKey(); }