Студенческий сайт КФУ - ex ТНУ » Учебный раздел » Учебные файлы »ПРОГРАММИРОВАНИЕ

Моделирование случайных процессов с заданными свойствами

Тип: контрольная работа
Категория: ПРОГРАММИРОВАНИЕ
Скачать
Купить
Методика моделирования случайного процесса по заданной корреляционной функции и математическому ожиданию с использованием MatLab. Вычисление передаточной функций формирующего фильтра. Реализация случайного процесса. Значения корреляционной функции.
Краткое сожержание материала:

Размещено на

Размещено на

Федеральное агентство по образованию

ГОУВПО Норильский индустриальный институт

Кафедра электропривода и автоматизации технологических процессов и производств

Расчетно-графическая работа

по Моделированию систем

Тема: Моделирование случайных процессов с заданными свойствами

Вариант 01

Выполнил: ст. гр. АПм-06

Арламов А.С.

Проверил: Писарев А.И

Норильск 2009

Цель работы

Освоить методику моделирования случайного процесса по заданной корреляционной функции и математическому ожиданию с использованием MatLab.

Исходные данные.

N

D

1

4

0,4

1,5

Выполнение работы.

1. По исходным данным вычислить передаточную функцию формирующего фильтра.

2. Выполнить моделирование в программе MatLab. При этом входной сигнал - белый шум со спектральной плотностью .

Схема моделирования

3. Записать в таблицы реализации случайного процесса Y(t),

График процесса Y(t).

График процесса .

4. Выполнить проверку моделирования. Для этого нужно рассчитать значения корреляционной функции по табличным данным Y(t) в пяти точках двумя способами.

Проверка включает в себя два метода: метод усреднения по времени и метод усреднения по реализациям.

Воспользуемся первым методом - усреднение по времени. Для этого используем следующую формулу:

случайный процесс корреляционный функция

? - шаг, выбираемый из соображений точности построения

В нашем случае:

n =200 - общее количество точек;

?=0,20,40,60,80,100,120,140,160,180,200 - шаг, равный 20 точкам.

Для усреднения по времени используем значение точек центрированного случайного процесса.

Корреляционная функция в нуле должна равняться дисперсии.

Усреднение по числу реализаций.

Листинг программы

%Построение случайного процесса по заданным точкам

figure('name','Случайный нецентрированный процесс')

subplot(2,1,1);

load data.mat %открытие файла данных и их загрузка в Workspace

A=data; %присвоение значений матрице А

t=A(1,:)'; %задание времени из 1 строки

Y=A(2,:)'; %задание функции из 2 строки

plot(t,Y,'color','red'); %построение графика Y(t)

set(gcf,'color','w'); %установка белого фона

xlabel('t'); %подпись к оси ОХ

ylabel('Y(t)'); %подпись к оси ОY

title('Случайный нецентрированный процесс');

grid on %отображение сетки

subplot(2,1,2);

plot(t,Y-1.5,'color','blue');

title('Случайный центрированный процесс Y(t)-m');

xlabel('t'); %подпись к оси ОХ

ylabel('Y(t)'); %подпись к оси ОY

grid on

%----------------------------------------------------------------

%Построение корреляционной функции (по формуле)

figure('name','Корреляционная функция по формуле');

tau=0:0.1:20;

K=4*exp(-0.4*tau);

plot(tau,K,'color','blue');

xlabel('tau'); %подпись к оси ОХ

ylabel('Ky(tau)');

title('Корреляционная функция')

set(gcf,'color','w');

grid on

%----------------------------------------------------------------

%Построение корреляционной функции методом усреднения по времени

m=1.5; %математическое ожидание

y=A(2,:)'-1.5;

k0=0; k1=0; k2=0; k3=0; k4=0; k5=0; k6=0; k7=0; k8=0; k9=0; k10=0;

%Вычислим корреляцинную функцию в 0с

n=200; %общее количество точек

for i=1:n

k0=k0+(y(i,1)^2)/n;

end

%Вычислим корреляционную функцию в 2с

for i=1:n-20

k1=k1+y(i,1)*y(i+20,1)/(n-20);

end

%Вычислим корреляционную функцию в 4с

for i=1:n-40

k2=k2+y(i,1)*y(i+40,1)/(n-40);

end

%Вычислим корреляционную функцию в 6с

for i=1:n-60

k3=k3+y(i,1)*y(i+60,1)/(n-60);

end

%Вычислим корреляционную функцию в 8с

for i=1:n-80

k4=k4+y(i,1)*y(i+80,1)/(n-80);

end

%Вычислим корреляционную функцию в 10с

for i=1:n-100

k5=k5+y(i,1)*y(i+100,1)/(n-100);

end

%Вычислим корреляционную функцию в 12с

for i=1:n-120

k6=k6+y(i,1)*y(i+120,1)/(n-120);

end

%Вычислим корреляционную функцию в 14с

for i=1:n-140

k7=k7+y(i,1)*y(i+140,1)/(n-140);

end

%Вычислим корреляционную функцию в 16с

for i=1:n-160

k8=k8+y(i,1)*y(i+160,1)/(n-160);

end

%Вычислим корреляционную функцию в 18с

for i=1:n-180

k9=k9+y(i,1)*y(i+180,1)/(n-180);

end

%Вычислим корреляционную функцию в 20с

for i=1:n-200

k10=k10+y(i,1)*y(i+200,1)/(n-200);

end

%----------------------------------------------------------------

%Создаем матрицу, содержащую полученные значения

Kf=[k0 k1 k2 k3 k4 k5 k6 k7 k8 k9 k10]'

figure('name','Корреляционная функция методом усреднения по времени');

T=0:2:20; %устанавливаем временной промежуток и шаг

plot(T,Kf,'color','magenta','marker','o','markeredgecolor','k',...

'MarkerFaceColor','red','MarkerSize',5,'linestyle','none');

set(gcf,'color','w'); %установка белого фона

grid on %включение сетки

hold on %добавление на график полинома

p6=polyfit(T,Kf',5) %нахождение коэффициентов полинома

T2=0:0.1:20; %установка шага аппроксимации

P6=polyval(p6,T2)

plot(T2, P6,'color','red'); %построение полинома

title('Корреляционная функция методом усреднения по времени');

hold on

plot(tau,K,'color','blue');

legend(-2,'Реальные данные','Полином','Теоретические данные')

xlabel('t'); %подпись к оси ОХ

ylabel('К(t)'); %подпись к оси ОY

%----------------------------------------------------------------

%Реализация метода усреднения по реализациям

figure(4);

subplot(5,2,1);

plot(A(1,1:20)',A(2,1:20));

grid on

title('1-ая реализация')

subplot(5,2,3);

plot(A(1,20:40)',A(2,20:40));

grid on

title('2-ая реализация')

subplot(5,2,5);

plot(A(1,40:60)',A(2,40:60));

grid on

title('3-ая реализация')

subplot(5,2,7);

plot(A(1,60:80)',A(2,60:80));

grid on

title('4-ая реализация')

subplot(5,2,9);

plot(A(1,80:100)',A(2,80:100));

grid on

title('5-ая реализация')

subplot(5,2,2);

plot(A(1,100:120)',A(2,100:120));

grid on

title('6-ая реализация')

subplot(5,2,4);

plot(A(1,120:140)',A(2,120:140));

grid on

title('7-ая реализация')

subplot(5,2,6);

plot(A(1,140:160)',A(2,140:160));

grid on

title('8-ая реализация')

subplot(5,2,8);

plot(A(1,160:180)',A(2,160:180));

grid on

title('9-ая реализация')

subplot(5,2,10);

plot(A(1,180:200)',A(2,180:200));

grid on

title('10-ая реализация')

set(gcf,'color','w');

%----------------------------------------------------------------

Другие файлы:

Гибкие компьютеризированные системы и робототехника
Моделирование термодинамической системы с распределенными параметрами, случайных процессов и систем. Статистическое (имитационное) моделирование физич...

Теория случайных процессов
В сборнике изложены результаты исследований по современным проблемам теории случайных процессов. Рассмотрены вопросы теории стохастических дифференциа...

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

Предельные теоремы для случайных процессов: В 2 т. Т.1
Содержится систематическое изложение теории функциональных и конечномерных предельных теорем для классов случайных процессов семимаргингального вида,...

Имитационное моделирование
Всесторонне рассмотрены все важные аспекты, связанные с имитационным моделированием - моделирование, программное обеспечение моделирования, проверка д...