Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: окно Дольфа-Чебышева
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
1ns1d3r
Необходима литература, в которой описывался бы синтез окна Дольфа-Чебышева, где получена формула для расчета коэффициентов. В статье Фредерика Хэрриса "Использование окон при гармоническом анализе методом дискретного преобразования Фурье" дана только формула для расчета и по этой формуле посчитать коэффициенты не получается, так как при вычислениях получаются большие числа. В статье Хэрриса есть ссылка на Helms H. D. Digital filters with equiripple or minimax responses - возможно у кого-то есть эта статья?
Поделитесь опытом, кто занимался окнами с равновеликими боковыми лепестками.
спасибо)
M@kar
Запросите статью в Документации по электронике в теме "Запрос стандартов и статей IEEE, у кого есть халявный доступ к IEEE, помогите!"
AndeyP
Первоисточником считается статья 1946 года C.L.Dolph "A Current Distribution for Broadside Arrays Which Optimizes the Relationship Between Beam Width and Side-Lobe Level"
Код
#define acosh(x)        (log((x) + sqrt((x) * (x) - 1)))

void DolphChebyshev (double * win, int n, double db)
{
    int i, j, m = n-1;
    for (j = 0; j < n; j++)
    {
        win[j] = 0;
        for (i = 0; i < n; i++)
        {
            double t = PI*(i - m*.5)/n;
            double x = cosh(acosh(pow(10, db / 20)) / m) * cos(t);
            double w = fabs(x) <= 1.0 ? cos(m * acos(x)) : cosh(m * acosh(x));
            win[j] += w * cos(t*(j - m*.5)*2);
        }
    }
    double scale = 1./win[n/2];
    for (i = 0; i < n; i++)
    {
        win[i] *= scale;
    }
}

Пример: рассчитать окно на 256 отсчетов с подавлением 100 дб
double win[256];
DolphChebyshev(win, 256, 100);
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.