kopia lustrzana https://github.com/Dsplib/libdspl-2.0
126 wiersze
5.0 KiB
Plaintext
126 wiersze
5.0 KiB
Plaintext
/*!*****************************************************************************
|
||
\ingroup RESAMPLING_GROUP
|
||
\fn int farrow_lagrange(double *s, int n, double p, double q,
|
||
double frd, double **y, int *ny)
|
||
\brief Передискретизация вещественного сигнала на основе
|
||
полиномиальной Лагранжевой интерполяции.
|
||
|
||
Данная функция осуществляет передискретизацию входного сигнала `s` в `p/q` раз
|
||
со смещением дробной задержки `frd`. \n
|
||
|
||
Для передискретизации используется
|
||
<a href = "http://ru.dsplib.org/content/resampling_lagrange/resampling_lagrange.html">
|
||
полиномиальная Лагранжева интерполяция
|
||
</a>
|
||
(структура Фарроу для полиномиальной интерполяции). \n
|
||
|
||
|
||
\param [in] s
|
||
Указатель на вектор входного вещественного сигнала. \n
|
||
Размер вектора `[n x 1]`. \n
|
||
\n
|
||
|
||
\param [in] n
|
||
Размер вектора входного сигнала. \n
|
||
\n
|
||
|
||
\param [in] p
|
||
Числитель коэффициента передискретизации. \n
|
||
\n
|
||
|
||
\param [in] q
|
||
Знаменатель коэффициента передискретизации. \n
|
||
\n
|
||
|
||
\param [in] frd
|
||
Значение смещения дробной задержки в пределах одного отсчета. \n
|
||
Значение должно быть от 0 до 1. \n
|
||
\n
|
||
|
||
\param [out] y
|
||
Указатель на адрес результата передискретизации. \n
|
||
По данному адресу будет произведено динамическое выделение памяти
|
||
для результата передискретизации. \n
|
||
Будет выделено памяти под `n*q/p` отсчетов выходного сигнала. \n
|
||
Данный указатель не может быть `NULL`. \n
|
||
\n
|
||
|
||
\param [in] ny
|
||
Указатель на переменную, в которую будет записан
|
||
размер вектора `(*y)` после выделения памяти. \n
|
||
\n
|
||
|
||
\return
|
||
`RES_OK` --- передискретизация рассчитана успешно. \n
|
||
В противном случае \ref ERROR_CODE_GROUP "код ошибки". \n
|
||
|
||
\author
|
||
Бахурин Сергей.
|
||
www.dsplib.org
|
||
***************************************************************************** */
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
/*! ****************************************************************************
|
||
\ingroup RESAMPLING_GROUP
|
||
\fn int int farrow_spline(double *s, int n, double p, double q, double frd,
|
||
double **y, int *ny)
|
||
\brief Передискретизация вещественного сигнала на основе сплайн интерполяции.
|
||
|
||
Данная функция осуществляет передискретизацию
|
||
входного сигнала `s` в `p/q` раз со смещением дробной задержки `frd`. \n
|
||
Для передискретизации используются
|
||
<a href = "http://ru.dsplib.org/content/resampling_spline/resampling_spline.html">
|
||
кубические сплайны Эрмита
|
||
</a>
|
||
(структура Фарроу для для сплайн-интерполяции). \n
|
||
|
||
|
||
\param [in] s
|
||
Указатель на вектор входного вещественного сигнала. \n
|
||
Размер вектора `[n x 1]`. \n
|
||
\n
|
||
|
||
\param [in] n
|
||
Размер вектора входного сигнала. \n
|
||
\n
|
||
|
||
\param [in] p
|
||
Числитель коэффициента передискретизации. \n
|
||
\n
|
||
|
||
\param [in] q
|
||
Знаменатель коэффициента передискретизации. \n
|
||
\n
|
||
|
||
\param [in] frd
|
||
Значение смещения дробной задержки в пределах одного отсчета. \n
|
||
Значение должно быть от 0 до 1. \n
|
||
\n
|
||
|
||
\param [out] y
|
||
Указатель на адрес результата передискретизации. \n
|
||
По данному адресу будет произведено динамическое выделение памяти
|
||
для результата передискретизации. \n
|
||
Будет выделено памяти под `n*q/p` отсчетов выходного сигнала. \n
|
||
Данный указатель не может быть `NULL`. \n
|
||
\n
|
||
|
||
\param [in] ny
|
||
Указатель на переменную, в которую будет записан
|
||
размер вектора `(*y)` после выделения памяти. \n \n
|
||
|
||
\return
|
||
`RES_OK` --- передискретизация рассчитана успешно. \n
|
||
В противном случае \ref ERROR_CODE_GROUP "код ошибки". \n
|
||
|
||
\author
|
||
Бахурин Сергей.
|
||
www.dsplib.org
|
||
***************************************************************************** */
|