
/*! ****************************************************************************
\ingroup DFT_GROUP
\fn int goertzel(double *x, int n, int *ind, int k, complex_t *y)
\brief 
<a href = "http://ru.dsplib.org/content/goertzel/goertzel.html">
Алгоритм Гёрцеля
</a> 
для расчета отдельных спектральных отсчетов дискретного 
преобразования Фурье вещественного сигнала `x`.
Данный алгоритм позволяет рассчитать `k` спектральных отсчетов 
`n`-точечного ДПФ, заданных вектором индексов `ind`.



\param[in]  x
Указатель на вектор вещественного входного сигнала. \n
Размер вектора `[n x 1]`. \n 
\n

\param[in]  n
Размер вектора входного сигнала. \n 
\n

\param[in]  ind
Указатель на вектор индексов спектральных отсчетов для расчета которых
будет использоваться алгоритм Герцеля. \n
Размер вектора `[k x 1]`. \n 
\n

\param[in]  k
Размер вектора индексов спектральных отсчетов `ind`. \n 
\n

\param[out]  y
Указатель на вектор спектральных отсчетов, соответствующих номерам `ind`. \n
Размер вектора `[k x 1]`. \n
Память должна быть выделена. \n 
\n

\return
`RES_OK` --- расчёт выполнен успешно.  \n
В противном случае \ref ERROR_CODE_GROUP "код ошибки". \n

\note
Алгоритм Гёрцеля эффективен когда необходимо рассчитать несколько 
спектральных отсчетов   сигнала большой длительности. \n
Однако, размер `k` вектора индексов `ind` может быть произвольным,
в том числе больше длины сигнала `n`. 
В этом случае некоторые спектральные отсчеты будут повторяться, но это 
не повлечет за собой ошибки выполнения. \n
Значения индексов спектральных отсчетов `ind` также могут быть 
произвольными целыми, в том числе и отрицательными. 
В этом случае будут рассчитаны спектральные отсчеты 
с индексами по модулю `n`. \n

\author
Бахурин Сергей
www.dsplib.org
***************************************************************************** */





/*! ****************************************************************************
\ingroup DFT_GROUP
\fn int goertzel_cmplx(complex_t *x, int n, int *ind, int k, complex_t *y)
\brief
<a href = "http://ru.dsplib.org/content/goertzel/goertzel.html">
Алгоритм Гёрцеля
</a> 
для расчета отдельных спектральных отсчетов дискретного 
преобразования Фурье комплексного сигнала `x`.
Данный алгоритм позволяет рассчитать `k` спектральных отсчетов 
`n`-точечного ДПФ, заданных вектором индексов `ind`.

Данный алгоритм позволяет рассчитать `k` спектральных отсчетов 
`n`-точечного ДПФ, заданных вектором индексов `ind`.

\param[in]  x
Указатель на вектор комплексного входного сигнала. \n
Размер вектора `[n x 1]`. \n 
\n

\param[in]  n
Размер вектора входного сигнала. \n 
\n

\param[in]  ind
Указатель на вектор индексов спектральных отсчетов для расчета которых
будет использоваться алгоритм Герцеля. \n
Размер вектора `[k x 1]`. \n 
\n

\param[in]  k
Размер вектора индексов спектральных отсчетов `ind`. \n 
\n


\param[out]  y
Указатель на вектор спектральных отсчетов, соответствующих номерам `ind`. \n
Размер вектора `[k x 1]`. \n
Память должна быть выделена. \n 
\n

\return
`RES_OK` --- функция выполнена успешно.  \n
В противном случае \ref ERROR_CODE_GROUP "код ошибки". \n

\note
Алгоритм Герцеля эффективен когда необходимо рассчитать несколько 
спектральных отсчетов сигнала большой длительности.  \n
Однако, размер `k` вектора индексов `ind` может быть произвольным,
в том числе больше длины сигнала `n`. 
В этом случае некоторые спектральные отсчеты 
будут повторяться, но это не повлечет за собой ошибки выполнения. \n
Значения индексов спектральных отсчетов `ind` также могут быть 
произвольными целыми, в том числе и отрицательными. 
В этом случае будут рассчитаны спектральные отсчеты с индексами
по модулю `n`. \n 
\n


\author
Бахурин Сергей
www.dsplib.org
***************************************************************************** */
