[an error occurred while processing this directive]
|
==============
Про 4 дополнительные ненулевые выборки я с Вами полностью согласен (но, по-моему, для приведенного примера необходимо и достаточно всего 4 ненулевые выборки, разбросанные по времени как угодно, только не в моменты, кратные периоду w).
А вот если все 6 выборок попали в нули приведенной мной суммы, то я могу, в зависимости от фантазии:))), восстановить:
sin(wt), sin(wt)+0.1sin(3wt), sin(wt)+0.1sin(3wt)+0.1sin(6wt) и т.д.
Если Ваш алгоритм может различить эти суммы только по их нулям (для всех сумм положение нулей и их количество одинаковы), то я Вам никогда не поверю, у Вас где-то есть ошибка.
==============
Значится так. Ошибка именно у Вас. Для начала чуть-чуть теории. Предположим имеется функция
A*sin(wt+B)
Для того, чтобы знать значение этой функции в ЛЮБОЙ точке необходимо найти следующие параметры
A, w, B
Для нахождения их можно использовать неоднородную систему из трех уравнений, которые получаются взятием трех выборок. Чтобы система вруг не стала однородной (все выборки окажутся в нулях), рекомендуется брать выборки в пределах одного периода.
Таким образом, если Вы работаете с функцией (2 гармоники)
A * sin(wt + B) + C * sin( 3wt + D) Вам, действительно, нужно четыре выборки.
Если Вы работаете с функцией (3 гармоники)
A * sin(wt + B) + C * sin( 2wt + D) + E * sin( 3wt + F) Вам, нужно шесть выборок.
И маленькая свинья с моей стороны - для вашей функции
sin(wt)+0.1sin(3wt) нужно НОЛЬ выборок :))))))))))
Теперь конкретно по вопросу. Уж сколько раз твердил я миру! Читайте Финка и каждый не уйдет отсюда обиженым!!! Вы опять забыли о базе сигнала...
Если функция sin(wt) имеет шесть нулей, то это уже отрезок длиной
6 * Pi. База такого сигнала действительно 6.
А вот если функция sin(wt)+0.1sin(3wt) имеет шесть нулей, то отрезок тот же, но база (и необходимое для восстановления количество выборок) уже в 3 раза больше!!! Т.е. на периоде
6 * Pi нужно 18 выборок. А для
sin(wt)+0.1sin(3wt)+0.1sin(6wt) уже 36, а если Вы возмете все-таки 6 выборок (наплевав на Котельникова), то Бог Вам судья. Боюсь здесь даже равномерная дискретизация не поможет.
E-mail: info@telesys.ru