- •Моделирование нелинейной нестационарной модели средствами SciLab
- •Постановка задачи
- •2. Порядок выполнения работы
- •Порядок выполнения
- •Содержание отчета
- •Условия моделирования
- •Построение генератора случайных чисел с заданным законом распределения
- •Постановка задачи
- •Порядок выполнения
- •Содержание отчета
- •Условия моделирования
- •Построение генератора случайного процесса методом формирующего фильтра
- •Постановка задачи
- •Порядок выполнения
- •Содержание отчета
- •Условия моделирования
Порядок выполнения
Построить программный генератор случайных чисел с заданной корреляционной функцией. Использовать метод формирующего фильтра. Значения дисперсии D, параметра и шага дискретизации h заданы в табл.5.
Рассчитать и построить графики заданной и полученной корреляционных функций для интервала .
Рассмотреть различные способы повышения точности построения процесса с заданной корреляционной функцией.
Содержание отчета
Графическое и аналитическое отображение заданной корреляционной функции.
Расчет параметров формирующего фильтра.
Случайный процесс, полученный в результате работы генератора.
Корреляционная функция, соответствующая полученному случайному процессу.
Текст программы на языке SciLab.
Условия моделирования
Табл.5.
№ варианта |
D |
h |
№ варианта |
D |
h | ||
1 |
2 |
5 |
0.001 |
1 |
2 |
2 |
0.001 |
2 |
1 |
0.1 |
0.05 |
2 |
10 |
10 |
0.001 |
3 |
0.5 |
2 |
0.002 |
3 |
0.1 |
0.2 |
0.01 |
4 |
0.1 |
10 |
0.001 |
4 |
10 |
2 |
0.001 |
5 |
1 |
1 |
0.01 |
5 |
0.1 |
1 |
0.01 |
6 |
2 |
3 |
0.001 |
6 |
2 |
5 |
0.001 |
7 |
4 |
0.2 |
0.01 |
7 |
3 |
10 |
0.002 |
8 |
2 |
4 |
0.001 |
8 |
1 |
2 |
0.001 |
9 |
5 |
1 |
0.01 |
9 |
5 |
1 |
0.01 |
10 |
1 |
0.5 |
0.02 |
10 |
2 |
10 |
0.001 |
11 |
10 |
2 |
0.0011 |
11 |
2 |
4 |
0.001 |
12 |
2 |
0.2 |
0.01 |
12 |
1 |
0.1 |
0.01 |
13 |
1 |
4 |
0.001 |
13 |
2 |
1 |
0.01 |
14 |
1 |
0.1 |
0.01 |
14 |
1 |
10 |
0.001 |
15 |
0.2 |
2 |
0.001 |
15 |
1 |
2 |
0.002 |
16 |
2 |
2 |
0.001 |
16 |
1 |
0.5 |
0.01 |
17 |
1 |
10 |
0.001 |
17 |
2.5 |
5 |
0.001 |
18 |
2 |
5 |
0.005 |
18 |
2 |
2 |
0.001 |
19 |
1 |
5 |
0.001 |
19 |
1 |
0.2 |
0.01 |
20 |
1 |
1 |
0.01 |
20 |
0.4 |
1.5 |
0.001 |
21 |
5 |
0.1 |
0.02 |
21 |
5 |
0.3 |
0.01 |
22 |
0.5 |
2 |
0.001 |
22 |
3 |
2 |
0.002 |
23 |
2 |
3 |
0.001 |
23 |
2 |
10 |
0.001 |
24 |
1 |
0.5 |
0.01 |
24 |
1 |
0.75 |
0.01 |
Приложение 1 – программа моделирования по лаб.1
clear all, close all;
global k l m n Kt i1 i2 S V ht x
global delta_max delta_max_st
% определение констант
k=1;
l=10;
m=2;
n=8;
Kt=100;
i1=10;
i2=1;
S=100;
V=800;
delta_max=0.5;
delta_max_st=2.6;
% определение начальных условий
x10=1;
x20=1;
x30=0;
x40=0;
x50=0;
X0=[x10,x20,x30,x40,x50];
ht=0.001; % шаг вычислений
Tk=10; % конечное время моделирования
time=0:ht:Tk;
[t,x]=ode45('system_diff_24',time,X0);
subplot(5,1,1),plot(t,x(:,1)),grid on;
subplot(5,1,2),plot(t,x(:,2)),grid on;
subplot(5,1,3),plot(t,x(:,3)),grid on;
subplot(5,1,4),plot(t,x(:,4)),grid on;
subplot(5,1,5),plot(t,x(:,5)),grid on;
----------------------------------------------------------------
function dx=sysmem_diff_24(t,x)
global k l m n Kt i1 i2 S V
global delta_max
teta=(10000-x(5))/(22000-V*t);
if abs(x(4))<= delta_max
x4_zv=x(4);
else
x4_zv=delta_max*sign(x(4));
end
% система дифференциальных уравнений
dx(1)=k*x(2)-k*x(1);
dx(2)=x(3);
dx(3)=l*x(1)-l*x(2)-m*x(3)+n*x(4);
dx(4)=-Kt*x4_zv-i1*x(2)-i2*x(3)+S*(teta-x(2));
dx(5)=V*sin(x(1));
dx=dx';