/*! **************************************************************************** \ingroup DFT_GROUP \fn int fourier_series_dec(double* t, double* s, int nt, double period, int nw, double* w, complex_t* y) \brief Расчет коэффициентов разложения в ряд Фурье Функция рассчитывает спектр периодического сигнала при усечении ряда Фурье
\param[in] t Указатель на массив моментов времени дискретизации исходного сигнала `s`
размер вектора вектора `[nt x 1]`.
Память должна быть выделена.

\param[in] s Указатель на массив значений исходного сигнала`s`
размер вектора вектора `[nt x 1]`.
Память должна быть выделена.

\param[in] nt размер выборки исходного сигнала.
Значение должно быть положительным.

\param[in] period Период повторения сигнала.

\param[in] nw Размер усеченного ряда Фурье.

\param[out] w Указатель на массив частот спектра периодического сигнала.
Размер вектора `[nw x 1]`.
Память должна быть выделена.

\param[out] y Указатель массив комплексных значений спектра периодического сигнала.
Размер вектора `[nw x 1]`.
Память должна быть выделена.

\return `RES_OK` Массивы нулей и полюсов рассчитаны успешно.
В противном случае \ref ERROR_CODE_GROUP "код ошибки".
\note Для расчета спектра сигнала используется численное интегрирование исходного сигнала методом трапеций. Данная функция не является эффективной. Для увеличения скорости расчета спектра сигнала целесообразнее использовать алгоритмы дискретного и быстрого преобразования Фурье.
\author Бахурин Сергей www.dsplib.org ***************************************************************************** */ /*! **************************************************************************** \ingroup DFT_GROUP \fn int fourier_series_rec(double* w, complex_t* s, int nw, double *t, int nt, complex_t* y) \brief Восстановление сигнала при усечении ряда Фурье Функция рассчитывает восстановленный сигнал при усечении ряда Фурье: \f[ s(t) = \sum\limits_{n = 0}^{n_{\omega}-1} S(\omega_n) \exp(j\omega_n t) \f] \param[in] w Указатель на массив частот \f$\omega_n\f$ усеченного ряда Фурье.
Размер вектора `[nw x 1]`.
Память должна быть выделена и заполнена.

\param[in] s Указатель на массив значений спектра \f$S(\omega_n)\f$.
Размер вектора `[nw x 1]`.
Память должна быть выделена и заполнена.

\param[in] nw Количество членов усеченного ряда Фурье.
Значение должно быть положительным.

\param[in] t Указатель на массив временных отсчетов восстановленного сигнала.
Размер вектора `[nt x 1]`.
Память должна быть выделена и заполнена.



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

\param[out] y Указатель на массив восстановленного сигнала.
Размер вектора `[nt x 1]`.
Память должна быть выделена.

\return `RES_OK` Массивы нулей и полюсов рассчитаны успешно.
В противном случае \ref ERROR_CODE_GROUP "код ошибки".
\note Выходной восстановленный сигнал в общем случае является комплексным. Однако при соблюдении свойств симметрии векторов `w` и `s` относительно нулевой частоты получим мнимую часть элементов вектора `y` на уровне ошибок округления числа с двойной точностью. Ничтожно малую мнимую часть в этом случае можно игнорировать.
\author Бахурин Сергей www.dsplib.org ***************************************************************************** */