Автор: flammmable
Про РЧ/СВЧ для программистов: теорема Найквиста — Шеннона в картинках (часть 1)

Среди электротехнических дисциплин РЧ/СВЧ особенно выделяется своими контринтуитивными принципами. Их понимание всегда происходит с трудом. Если
в них разобраться, то эти принципы начинают казаться чем‑то совершенно естественным,
и их сложность забывается. Возможно, именно поэтому справочные материалы по
РЧ/СВЧ нередко подобны анекдоту «А восьмёрка, сын, пишется как знак бесконечности, повёрнутый на пи пополам».
С учётом подобной особенности я постараюсь максимально доступно и в картинках
показать, как и почему работает теорема Найквиста — Шеннона. И как иногда обходят ограничения, которые эта теорема устанавливает.
Игры с синусоидой
Допустим, у нас есть синусоида единичной амплитуды и частоты.
Сделаем замеры её значений через равные интервалы времени, а
затем воспользуемся дискретным преобразованием Фурье как чёрным ящиком, чтобы
получить спектр.

Спектр синусоиды единичной частоты и амплитуды
Теперь попробуем поменять интервалы между замерами.

Какие-то непонятные артефакты
Мы видим, что при увеличении периода дискретизации в спектре появляются артефакты в виде парных пиков. Каждый пик — это синусоида с определённой частотой и амплитудой (и фазой, но значения фазы на спектре не видны и они для нас пока не принципиальны).
Частоты синусоид этих артефактов следуют определённой закономерности.

Закономерность расположения артефактов в спектре
Попробуем разобраться в этой закономерности.
Посмотрим на сумму синусоид первого артефакта:
sin((n+1)f)+sin((n−1)f)
Сумму синусов можно представить в виде произведения синуса и
косинуса:
sin(ɑ)+sin(β)=2sin((ɑ+β)/2)cos((ɑ−β)/2)
В нашем случае ɑ=(n+1)f, а β=(n−1)f.
Соответственно (ɑ+β)/2 будет равно:
(ɑ+β)/2=((n+1)f+(n−1)f)/2=f(n+1+n−1)/2=fn
,а (ɑ−β)/2 будет равно:
(ɑ−β)/2=((n+1)f−(n−1)f)/2=f(n+1−n+1)/2=f
Таким образом, получается:
sin((n+1)f)+sin((n−1)f)=2sin(fn)cos(f)
Уберём множитель «2» и подумаем, как будет выглядеть sin(nf)cos(f)?
Как высокочастотная синусоида sin(nf), промодулированная
низкочастотной косинусоидой cos(f).

Форма артефактов во временной области
Строго говоря, косинусоида — это синусоида, сдвинутая на четверть периода. Зная это, попробуем сделать одно важное наблюдение: давайте посмотрим, как будет выглядеть не наш sin(nf)cos(f), а cos(nf)sin(f):

Артефакты, оригинальный сигнал и дискретные значения
Получается, если мы берём косинусоиду с частотой, равной произведению базовой частоты f на количество замеров в периоде, то её максимумы («единицы») будут приходиться на моменты замеров.
Если же мы умножим такую косинусоиду на sin(f) — синусоиду с базовой частотой, — то значение sin(f) в каждой точке замера будет умножаться на единицу и получившаяся кривая пройдёт ровно через те же точки.
Полученная кривая, очевидно, принципиально отличается от sin(f), но если смотреть лишь на значения, полученные во время дискретизации, то эти две кривые оказываются неразличимы!
Говоря более общими словами, в отсутствие дополнительных условий восстановление синусоиды из данных дискретизации не является однозначной операцией.
Чем больше замеров, тем лучше?
Прежде чем двигаться дальше, рассмотрим один важный аспект.
В теореме Найквиста — Шеннона речь идёт о частоте дискретизации.
Иногда при формулировании положений теоремы вместо частоты дискретизации
говорят о «количестве замеров (семплов, отсчётов) на один период дискретизируемого сигнала».
А затем, в ряде случаев, это выражение риторически редуцируется просто до «количества замеров».
Здесь начинаются «чудеса» в духе «восстановления сигнала сложной формы по двум точкам» :)
Надо понимать, что общее количество замеров может быть сколь угодно больши́м, но если интервал между замерами велик, то в спектре артефакты будут близки по частотам к оригинальному сигналу.
Количество же охватываемых измерениями периодов сигнала (которое равно отношению общего количества замеров к количеству замеров на период) будет влиять на ширину пиков.
Это две различные характеристики массива значений
дискретизации, которые влияют на разные элементы спектра.



В общем, да. Чем больше замеров, тем лучше. Но есть нюансы :)
Комментировать
Подробнее https://reactor...