[an error occurred while processing this directive]
|
К сожалению, на работе матлаба нет (запрещено, ибо нелицензионно, а жаль...). Дома можно будет и посмотреть. Но кое-что мне кажется странным.
1) Я может, путаю чего, но как-то странно функция filter Вами используется. (По-крайней мере, я ее так никогда не использовал). Я это по поводу порядка следования параметров. Вот здесь справка по ней:
http://www.mathworks.com/access/helpdesk/help/toolbox/filterdesign/
(щелкните далее по "альфабетикал ордер" и найдите там "filter")
Просто вначале следует параметры фильтра, затем сигнал, а потом размерность. А в Вашей программе порядок следования размерности и сигнала инверсный. Но здесь допускаю, что формат мог изменяться от версии к версии.
2) Функция xcorr находит взаимную корреляцию. Но проблема в том, что она находит правильную корреляцию. Вам же нужна циклическая свертка. Попробуйте с ее помощью свернуть Вашу м-последовательность с ней же самой. У Вас смещенной дельта функции не получится. Используйте БПФ для получения правильного результата.
3) И нулями не надо дополнять входной сигнал.
И ГЛАВНОЕ. В матлабе чудес почти никогда не бывает. Во всяком случае, при решении таких задач. Поэтому возмите фильтр и м-последовательность. Пропустите ее через фильтр. Далее сделайте цикл. свертку вых. сигнала (незадержанного вначале, чтобы проверить только) и входной м-последовательности. У вас ДОЛЖНА, ОБЯЗАНА получиться ИХ фильтра. Если нет - ищите, в чем Вы неправы. Это закон.
E-mail: info@telesys.ru