Esempio n. 1
0
        private void CalcConvolutionButton_Click(object sender, RoutedEventArgs e)
        {
            ConvolutionTabItem.IsEnabled  = true;
            ConvolutionTabItem.IsSelected = true;

            _yForwardFourier = _FourierTransform.ForwardTransform(_yFuncResults);
            _zForwardFourier = _FourierTransform.ForwardTransform(_zFuncResults);

            var temp = new Complex[N];

            for (int i = 0; i < N; i++)
            {
                temp[i] = _yForwardFourier[i] * _zForwardFourier[i];
            }

            _convolutionResults = _FourierTransform.BackwardTransform(temp);
            int j = 0;

            foreach (var convolRes in _convolutionResults)
            {
                ConvolutionChartValues.Add(new ChartValue(_args[j], convolRes));
                j++;
            }
        }
Esempio n. 2
0
        private void ReverseTransformButton_Click(object sender, RoutedEventArgs e)
        {
            double[] res = _FourierTransform.BackwardTransform(_fourierTransformResults);

            Complex[] resD = _FourierTransform.DiscretFourier(_discrRes, false);

            int j = 0;

            ReverseFourierChartValues.Clear();
            foreach (var r in res)
            {
                ReverseFourierChartValues.Add(new ChartValue(BaseChartValues[j].X, r));
                DiscrReverseFourierChartValues.Add(new ChartValue(BaseChartValues[j].X, resD[j].Real));
                j++;
            }

            ReverseTransformTabItem.IsEnabled  = true;
            ReverseTransformTabItem.IsSelected = true;
        }