Здравствуйте, mossad_re, Вы писали:
_>Доброго времени суток. _> Подскажите кто знает, в чём тут я ошибку допускаю. _> Есть файл с комплексными отсчётами (полоса с множеством сигналов). _> Я считываю из него по N отсчётов. _> Рассчитываю для этих отсчётов БПФ размерностью N. _> Затем сразу же считаю для результата БПФ обратное БПФ той же размерности. _> И записываю результат в другой файл. _> В итоге огибающая той же формы что и начальная..но при попытке демодулировать любой _> сигнал из полосы я гарантированно получаю разрыв фазы. _> Хотя в начальном файле всё демодулиться корректно. _> Подскажите как сживать результаты ОБПФ в такой ситуации? _>Заранее благодарен.
Если между БПФ-ОБПФ выделяешь нужную полосу умножая на АЧХ фильтра в частотной области, то в результате получается циклическая свертка фильтра вместо линейной. Чтобы правильно фильтровать в частотной области, нужно использовать overlap add или overlap save (эти слова можно поискать в интернете)
Если никакой обработки между ДПФ и ОДПФ не происходит, то у тебя скорее всего где-то ошибка. В результате БПФ-ОБПФ должны получиться те же отсчеты, что и были на входе, с точностью до (возможно) масштабирующего множителя и погрешностей вычисления.