
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.97.14.87] |
![]() |
|
Страницы: (5) « Первая ... 3 4 [5] все ( Перейти к последнему сообщению ) |
Сообщ.
#61
,
|
|
|
У меня возник вопрос по-поводу функции окна. при расчете ее значений используется ограничение |nTd|<NTd/2, как и при расчете ДПФ, для неограниченого во времени сигнала, но там оно не играет роли поскольку не влияет на значение функции f(nTd), тут же оно оспользуеться, насколько я понимаю для того, что бы придать функции вид треугольника симметричного относительно 0. то есть для рачета нужно пробегать значения в диапазоне [-(N-1/2)..(N-1)/2], но в этом случае количество точек на 1 меньше реального, и что делать, когда N-нечетно.Насколько я себе представляю, рассчитывать функцию окна проще всего для первых -(N-1)/2 а потом записывать его в формулу симметрически с конца. И еще вопрос, в ДПФ нужно пермножать значения функции окна и значения функции на отсчетах, а в ОДПФ-их спектры. Если я не прав, то обьясните, как ей грамотно пользоваться
![]() |
Сообщ.
#62
,
|
|
|
Здравствуйте уважаемые форумчане.
У меня возникла маленькая проблемка. Необходимо написать программу по расчету БПФ. Брать уже имеющиеся исходники я не хочу, поскольку хочу разобраться во всем сам. Если я все правильно понимаю ДПФ выражается через формулу: Xj = SUM (Xk*e^(-i*(2Pi/N)*kj)) (пределы суммирования по k от 0 до N-1) e^(-i*(2Pi/N)*kj) = Cos((2Pi/N)*kj)+iSin((2Pi/N)*kj) (1) где: Cos((2Pi/N)*kj) = Re iSin((2Pi/N)*kj) = Im Так вот, вычисление действительной (Re) части выражения (1) не составляет труда, а вот с вычислением мнимой части (Im) у меня большие затруднения. А именно, я не могу понять как вычислить iSin((2Pi/N)*kj), как избавиться от этой проклятущей i и необходимо ли вообще вычислять мнимую часть выражения (1). Люди добрые! Помогите, объясните дауну, что к чему!!! |
Сообщ.
#63
,
|
|
|
люди, помогите ламеру! у меня имеется ф-ция от времени x(t)=sin(20*t)+3*cos(30*t)
Необходимо в Матлабе: 1.исользовать бпф и построить частотный спектр 2.применить оконную ф-цию(любую)+бпф и посторить спектр! 3.применить фильтр + бпф и построить спектр 4.достроить исходный сигнал нулями и построить его спектр Выручайте..!! ![]() ![]() Заранее огромное спасибо |
Сообщ.
#64
,
|
|
|
4elovek, ты хочешь чтоб тебе готовый код Matlab выложили?
|
Сообщ.
#65
,
|
|
|
я в принципе со всем разобрался! вопрос только в применении окна! Допустим Yn - значения БПФ! W - оконная ф-ция (пусть это будет прямоугольное окно boxcar)
Yn=fft(xn); считаем бпф для исходного дискретного сигнала xn. W=boxcar(n); оконная ф-ция в n кол-ве отсчетов. Вопрос: окно применяется как G=Yn*W? Если да, то при умножении получается число, т.к. Yn - вектор строка, а W - столбец! как быть? что делать? !!!!!!И если кому не трудо приведите плиз элементарный пример применения любого окна в MAtlab.!!!!! |
Сообщ.
#66
,
|
|
|
СанитарЖеня, а каким образом в твоем примере реализовать обратное преобразования.. а то чет туплю никак не соображу
|
Сообщ.
#67
,
|
|
|
У него нет обратного преобразования.
Вообще, обратное знаком перед мнимой составляющей (синусной) поворачивающего множителя. Плюс результат умножается на другой множитель |