Получается, в данном случае ради ДПФ мы меняем исходный сигнал. И получаем ДПФ уже другого, измененного сигнала? Это вообще правомерно?
Не ради ДПФ, а ради БПФ. Но чаще вообще ради того, чтобы иметь тот шаг дискретизации спектра, который мы хотим иметь. Дополнение нулями исходного дискретного сигнала никак не влияет на его спектр, который определяется по известной формуле
. Если дописали к сигналу из
отсчётов ещё
нулевых отсчётов, то по факту это никак не изменяет верхний предел записанной суммы, поскольку суммировать нулевые слагаемые можно сколько угодно. Однако ДПФ в обоих случаях будет отличаться объёмом. В первом случае (до дополнения нулями) это будет ДПФ объёмом
, а во втором случае - ДПФ объёмом
. Но ДПФ, как известно, даёт отсчёты спектра дискретного сигнала
, взятые с шагом
. Соответственно при объёме ДПФ
шаг дискретизации спектра будет
.
Что касается одного периода синуса, то один период его спектра отнюдь не одна спектральная линия. Но при ДПФ спектр оказывается дискретизирован так, что только один отсчёт спектра отличается от нуля, а все остальные отсчёты приходятся в нулевые значения спектра. Если добавляются нулевые отсчёты, то спектр дискретизируется гуще и становятся видны отличные от нуля отсчёты спектра.
Этот эффект проще наблюдать даже не на гармонике, а на прямоугольном импульсе. Если применить ДПФ к
единицам, то получим одну спектральную линию в нуле, а остальные значения ДПФ на периоде нулевыми. Если добавить нулевых отсчётов, то увидим дискретный спектр, похожий на отсчёты спектра прямоугольного импульса.
При желании вот здесь есть программа, которая показывает все спектры в накладку
http://circuits-signals.narod.ru/DSpectr.zip