2016-11-30 13 views
-1

Я играю с mathdotnet и экспериментирую с различными окнами для использования в FFT. Мне особенно интересно окно Hann (хотя я уверен, что это относится и к другим). Когда я создаю окно Hann, скажем, 2048 выборок в ширину, я ожидаю получить набор переменных, постепенно увеличиваясь до пика, а затем постепенно уменьшаясь с той же скоростью. Что я получаю вместо это:Окно Hann начинается и заканчивается значениями, которые, как представляется, не имеют смысла

[0] 0      double 
    [1] 2.3553948388377322E-06 double 
    [2] 9.421557163713512E-06 double 
    [3] 2.11984204002702E-05 double 
    [4] 3.768587359187503E-05 double 
    [5] 5.8883761400674306E-05 double 
    [6] 8.4791884109036708E-05 double 
    [7] 0.0001154099976216072 double 
    [8] 0.00015073781346730541 double 
    [9] 0.0001907749988023788 double 
    [10]0.00023552117641323367 double 
    .... 
    [2039] 0.00015073781346730541 double 
    [2040] 0.00011540999762155169 double 
    [2041] 8.4791884109036708E-05 double 
    [2042] 5.8883761400674306E-05 double 
    [2043] 3.768587359187503E-05 double 
    [2044] 2.11984204002702E-05 double 
    [2045] 9.421557163713512E-06 double 
    [2046] 2.3553948388377322E-06 double 
    [2047] 0      double 

Как вы можете видеть, значения в начале и в конце окна Hann, кажется, совершенно бессмысленно, особенно если учесть, что ничего более 1 не имеет смысла ...

Создание окна с гораздо меньшим количеством образцов (я попробовал 20) работает отлично.

Поскольку я не чувствую, что знаю достаточно о БПФ или самой библиотеке, я не чувствую, что comofrtable публикует отчет об ошибке, прежде чем получить ваше мнение. Заранее спасибо!

ответ

2

Номера выглядят правильно. Обратите внимание, что 2.3553948388377322 E-06 - это просто научное понятие написания 0.0000023553948388377322.

Обратите внимание, что при использовании для БПФ вы можете использовать Window.HannPeriodic вместо Window.Hann, который доступен с версии v3.14.0-beta01.

+0

О, мой. Как смешно меня ... Конечно, цифры в порядке. Есть ли пакет nuget для 3.14? –

+0

Существует только предварительная версия (https://www.nuget.org/packages/MathNet.Numerics/3.14.0-beta03), но я планирую сделать правильный выпуск в течение нескольких дней. –