Как использовать MathNet.Numerics, чтобы найти все частоты сигнала?C#

Место общения программистов C#
Ответить
Anonymous
 Как использовать MathNet.Numerics, чтобы найти все частоты сигнала?

Сообщение Anonymous »

Я хочу найти все частоты сигнала (массив двойных значений), где каждая выборка берется с одинаковым интервалом (5 минут).
Я подумал, что можно использовать:

Код: Выделить всё

MathNet.Numerics.IntegralTransforms.Fourier.Forward(new double[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 });
Но есть 2 ошибки. Функция принимает Complex[], а не double[]. Результата нет, возвращается только «void».
Итак, есть идеи, что мне следует вызвать и где я могу найти результаты: частоты, угол и амплитуду?
Кстати, мой сигнал имеет 2 основные частоты: По году и по дням. Может ли БПФ найти обе частоты (год и день), если день равен частоте 1/365 года (не кратен 2)?
Какова минимальная длина сигнала, которую нужно найти периодичность года (2 года, как сказал NYQIST)?

Подробнее здесь: https://stackoverflow.com/questions/786 ... f-a-signal
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»