2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


Посмотреть правила форума



Начать новую тему Ответить на тему
 
 Идентификация системы
Сообщение21.01.2018, 22:09 


11/11/17
5
Есть входной сигнал х. Есть КИХ система с h. Наблюдаем выход y. Наблюдая за выходом системы "с нуля" ( в коде ofs=1), по выходу у и входу х считаем оценку ИХ h_est. Ошибка между оценкой ИХ и заданной нулевая.

Теперь моделируем ситуацию, когда мы несколько отсчетов входного сигнала х пропустили, не знаем,... и соответственно выход системы у смотрим не с нуля, а с некой задержкой (в коде ofs=17). Опять считаем h_est, но уже на основе усеченного по началу входу и выходу. В этом случая ошибка оценки ИХ уже "заметна на глаз", при этом даже если увеличивать размер входного сигнала L, ошибка уменьшается, но все равно остается существо больше, чем при наблюдении "с нуля".

По сути ситуации различаются тем, что при наблюдении с нуля мы наблюдаем переходный процесс фильтра в чистом виде, а при наблюдении с задержкой чистого переходного процесса у нас нет, пропущен.

Так и должно получаться или в случае наблюдения с задержкой я неправильно формурию матрицу свертки при оценке ИХ?

Код:
% Estimating impulse response function from input and output signal
clear all
sps=8; % число отсчетов на символ
L=20; % число входных символов
ofs=17; %1 or 17 for test, для моделирования полного и неполного набора данных

hStr = RandStream('mt19937ar', 'Seed', 0);
x = 2*randi(hStr, [0 1], L, 1)-1;
x=upsample(x,sps);
h=rcosdesign(0.5,6,sps); % модельная ИХ

y=(conv(h,x)); % прохождение полного входного сигнала черех систему с модедьной ИХ h

x1=x;
y1=y(1:L*sps);

x1=x1(ofs:L*sps); % отсчеты входа, которые используются при оценке ИХ
y1=y1(ofs:L*sps); % отсчеты выхода, которые используются при оценке ИХ

figure
subplot(311)
stem(x, 'rx'); % график полного входа
hold on
plot(y) % график полного выхода
stem(ofs:L*sps, x1, 'kx'); % график отсчетов входа, которые используются при оценке ИХ
plot(ofs:L*sps, y1,'ok'); % график отсчетов выхода, которые используются при оценке ИХ

    X = toeplitz(x1, [x1(1) zeros(1, length(h)-1)]);      % X : convolution matrix
    h_est = X \ conj(y1) ; % оцененная ИХ
    err=h-h_est'; % ошибка оценненой ИХ
   
    subplot(312)
    plot(h_est/std(h_est)) % график оцененной ИХ
    hold on
    stem(h/std(h), 'rx'); % график модельной ИХ
   
    subplot(313)
    plot(err) % график ошибки оценненой ИХ

 Профиль  
                  
 
 Re: Идентификация системы
Сообщение22.01.2018, 07:17 


10/03/16
3995
Aeroport
Timur66

Когда вы подаёте урезанный сигнал, обратная задача становится неустойчивой. Мультиколлинеарность возникает скорее всего

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group