libdspl-2.0/dspl/dox/ru/goertzel.dox

99 wiersze
5.8 KiB
Plaintext
Czysty Zwykły widok Historia

2018-03-13 20:46:25 +00:00
/*! **************************************************************************************************
\ingroup DFT_GROUP
\fn int goertzel(double *x, int n, int *ind, int k, complex_t *y)
\brief Алгоритм Герцеля для расчета отдельных спектральных отсчетов
дискретного преобразования Фурье вещественного сигнала `x`.
Данный алгоритм позволяет рассчитать `k` спектральных отсчетов `n`-точечного ДПФ,
заданных вектором индексов `ind`.
\param[in] x Указатель на вектор вещественного входного сигнала.<BR>
Размер вектора `[n x 1]`.<BR><BR>
\param[in] n Размер вектора входного сигнала.<BR><BR>
\param[in] ind Указатель на вектор индексов спектральных отсчетов для расчета которых
будет использоваться алгоритм Герцеля.<BR>
Размер вектора `[k x 1]`.<BR><BR>
\param[in] k Размер вектора индексов спектральных отсчетов `ind`.<BR><BR>
\param[out] y Указатель на вектор спектральных отсчетов,
соответствующих номерам `ind`.<BR>
Размер вектора `[k x 1]`.<BR>
Память должна быть выделена.<BR><BR>
\return
`RES_OK` Функция выполнена успешно. <BR>
В противном случае \ref ERROR_CODE_GROUP "код ошибки".<BR>
\note
Алгоритм Герцеля эффективен когда необходимо рассчитать несколько спектральных отсчетов
сигнала большой длительности. <BR>
Однако, размер `k` вектора индексов `ind` может быть произвольным,
в том числе больше длины сигнала `n`. В этом случае некоторые спектральные отсчеты
будут повторяться, но это не повлечет за собой ошибки выполнения.<BR>
Значения индексов спектральных отсчетов `ind` также могут быть произвольными целыми,
в том числе и отрицательными. В этом случае будут рассчитаны спектральные отсчеты с индексами
по модулю `n`.<BR>
\author
Бахурин Сергей.
www.dsplib.org
**************************************************************************************************** */
/*! **************************************************************************************************
\ingroup DFT_GROUP
\fn int goertzel_cmplx(complex_t *x, int n, int *ind, int k, complex_t *y)
\brief Алгоритм Герцеля для расчета отдельных спектральных отсчетов
дискретного преобразования Фурье комплексного сигнала `x`.
Данный алгоритм позволяет рассчитать `k` спектральных отсчетов `n`-точечного ДПФ,
заданных вектором индексов `ind`.
\param[in] x Указатель на вектор комплексного входного сигнала.<BR>
Размер вектора `[n x 1]`.<BR><BR>
\param[in] n Размер вектора входного сигнала.<BR><BR>
\param[in] ind Указатель на вектор индексов спектральных отсчетов для расчета которых
будет использоваться алгоритм Герцеля.<BR>
Размер вектора `[k x 1]`.<BR><BR>
\param[in] k Размер вектора индексов спектральных отсчетов `ind`.<BR><BR>
\param[out] y Указатель на вектор спектральных отсчетов,
соответствующих номерам `ind`.<BR>
Размер вектора `[k x 1]`.<BR>
Память должна быть выделена.<BR><BR>
\return
`RES_OK` Функция выполнена успешно. <BR>
В противном случае \ref ERROR_CODE_GROUP "код ошибки".<BR>
\note
Алгоритм Герцеля эффективен когда необходимо рассчитать несколько спектральных отсчетов
сигнала большой длительности. <BR>
Однако, размер `k` вектора индексов `ind` может быть произвольным,
в том числе больше длины сигнала `n`. В этом случае некоторые спектральные отсчеты
будут повторяться, но это не повлечет за собой ошибки выполнения.<BR>
Значения индексов спектральных отсчетов `ind` также могут быть произвольными целыми,
в том числе и отрицательными. В этом случае будут рассчитаны спектральные отсчеты с индексами
по модулю `n`.<BR><BR>
\author
Бахурин Сергей.
www.dsplib.org
**************************************************************************************************** */