Документация Engee

nuttallwin

Минимальное четырехчленное окно Блэкмана—Харриса, определенное Наттоллом.

Библиотека

EngeeDSP

Синтаксис

Вызов функции

  • w = nuttallwin(L) — возвращает L-точечное симметричное четырехчленное окно Блэкмана—Харриса, определенное Наттоллом. Коэффициенты этого окна отличаются от коэффициентов окна Блэкмана—Харриса, вычисленных с помощью blackmanharris, и дают несколько меньшие боковые лепестки.

  • w = nuttallwin(L,sflag) — также использует выборку окна, заданную аргументом sflag.

Аргументы

Входные аргументы

# L — длина окна
скаляр

Details

Длина окна, заданная как вещественное положительное число.

Типы данных

Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64

# sflag — выборка окна
"symmetric" (по умолчанию) | "periodic"

Details

Метод выборки окна, заданный как "symmetric" или "periodic". Уравнения, определяющие симметричные и периодические окна см. в разделе Алгоритмы.

Типы данных

String

Выходные аргументы

# w — окно Блэкмана—Харриса, определенное Наттоллом
вектор-столбец

Details

Окно Блэкмана—Харриса, определенное Наттоллом, возвращаемое в виде вектора-столбца длиной L. Функция минимизирует максимальные боковые лепестки окна. Уравнения, определяющие окно см. в разделе Алгоритмы.

Примеры

Окна Наттолла и Блэкмана—Харриса

Details

Сравним окна Наттолла и Блэкмана—Харриса сгенерированные по 64 точкам. Отобразим результат с помощью plot.

import EngeeDSP.Functions: blackmanharris
import EngeeDSP.Functions: nuttallwin
using Plots
w = blackmanharris(64)
y = nuttallwin(64)
plot(w,
     label = "Blackman-Harris Window",
     xlabel = "Sample Number",
     ylabel = "Amplitude",
     linewidth = 2,
     color = :blue,
     grid = true)
plot!(y,
      label = "Nuttall Window",
      linewidth = 2,
      color = :red)

nuttallwin

Вычислим максимальную разницу между двумя окнами.

max_diff = maximum(abs.(y - w))
0.009894115670254444

Алгоритмы

Уравнение для симметричного четырехчленного окна Блэкмана—Харриса , определенного Наттоллом, имеет вид:

где , — длина окна.

Уравнение для периодического четырехчленного окна Блэкмана—Харриса, определенного Наттоллом, имеет вид:

где . Периодическое окно имеет период .

Коэффициенты окна приведены в таблице.

Коэффициент Значение

0.3635819

0.4891775

0.1365995

0.0106411

Литература

  1. Nuttall, Albert H. «Some Windows with Very Good Sidelobe Behavior.» IEEE® Transactions on Acoustics, Speech, and Signal Processing. Vol. ASSP-29, February 1981, pp. 84–91.