Добавил:
t.me Установите расширение 'SyncShare' для решения тестов в LMS (Moodle): https://syncshare.naloaty.me/ . На всякий лучше отключить блокировщик рекламы с ним. || Как пользоваться ChatGPT в России: https://habr.com/ru/articles/704600/ || Также можно с VPNом заходить в bing.com через Edge браузер и общаться с Microsoft Bing Chat, но в последнее время они форсят Copilot и он мне меньше нравится. || Студент-заочник ГУАП, группа Z9411. Ещё учусь на 5-ом курсе 'Прикладной информатики' (09.03.03). || Если мой материал вам помог - можете написать мне 'Спасибо', мне будет очень приятно :) Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Z9411_Моделирование_Лаб4_КафкаРС_

.pdf
Скачиваний:
2
Добавлен:
24.10.2023
Размер:
397.36 Кб
Скачать

МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ федеральное государственное автономное образовательное учреждение высшего образования

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»

ИНСТИТУТ НЕПРЕРЫВНОГО И ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ

КАФЕДРА 41

ОЦЕНКА

 

 

 

 

ПРЕПОДАВАТЕЛЬ

 

 

 

 

 

старший преподаватель

 

 

 

А. В. Сорокин

 

должность, уч. степень, звание

 

подпись, дата

 

инициалы, фамилия

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №4

ИССЛЕДОВАНИЕ ДАТЧИКОВ РАВНОМЕРНО РАСПРЕДЕЛЕННЫХ ПСЕВДОСЛУЧАЙНЫХ ЧИСЕЛ

по дисциплине: МОДЕЛИРОВАНИЕ

РАБОТУ ВЫПОЛНИЛ

 

 

 

 

 

СТУДЕНТ ГР. №

Z9411

 

 

 

Р. С. Кафка

 

номер группы

подпись, дата

 

инициалы, фамилия

Студенческий билет №

2019/3603

 

 

 

 

 

 

 

 

Санкт-Петербург 2023

1. Цель работы:

Ознакомление с методами и алгоритмами моделирования в программной среде MathCAD или MatLab случайных событий, а также изучение тестов для проверки качества моделирования.

2.Вариант задания

Мультипликативные датчики Полларда

3.Ход работы:

Разработана программа генерации псевдослучайных чисел, результат работы которой приведён на рисунках 1-6, программный код представлен в листинге 1.

Листинг 1

M = [286588 434446 388251];

K = [0.1452 0.8242 0.7653]; L = 997783;

temp = [];

n = [100 600 1000]; for i = 1:3

[M,K,L,temp] = myRand(M,K,L,n(i));

disp(['Среднее значение n=' int2str(n(i)) ': ' num2str(mean(temp))]) disp(['Дисперсия n=' int2str(n(i)) ': ' num2str(cov(temp))])

disp(['Стандартное отклонение выборки n=' int2str(n(i)) ': ' num2str(std(temp))])

end

function [M, K, L, R] = myRand(M, K, L, x) R = 1:x;

for i = 1:x

n = length(K)+1;

k = (M(1)*K(n-1)+M(2)*K(n-2)+M(3)*K(n-3))-floor((M(1)*K(n-1)+M(2)*K(n- 2)+M(3)*K(n-3))/L)*L;

K = [K k]; R(i) = k/L;

end figure(i) plot(R)

title(['СВ N = ', num2str(i)]) ylabel('Значения СВ') xlabel('Индекс СВ')

Y = sort(R); figure(i+3) plot(Y)

title(['Отсортированные СВ N = ', num2str(i)]) ylabel('Значения СВ')

xlabel('Индекс СВ') end

2

Рисунок 1 – Случайные величины при объёме выборки 100

Рисунок 2 – Отсортированные случайные величины при объёме выборки 100

3

Рисунок 3 – Случайные величины при объёме выборки 600

Рисунок 4 – Отсортированные случайные величины при объёме выборки 600

4

Рисунок 5 – Случайные величины при объёме выборки 1000

Рисунок 6 – Отсортированные случайные величины при объёме выборки 1000

На рисунке 7 представлены статистические показатели для СВ с объемом выборки равным 100, 600 и 1000.

5

Рисунок 7 – Статистические показатели

4.Контрольные вопросы:

1.Сформулируйте требования оформления подпрограмм в среде MathCAD и

MatLab.

ВMathCAD и MatLab для оформления подпрограмм используются функции, которые должны быть объявлены в начале программы, и иметь определенное название, входные и выходные параметры. Также должны быть соблюдены стандарты именования переменных и использования комментариев для улучшения читаемости кода.

2.Поясните работу подпрограммы, вычисляющей статистику Колмогорова-

Смирнова.

Подпрограмма, вычисляющая статистику Колмогорова-Смирнова,

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

3.Объясните, как в программе вычисляется корреляционная функция.

Впрограмме корреляционная функция вычисляется с помощью выражения, которое содержит среднее значение двух переменных, их стандартное отклонение и коэффициент корреляции между ними. Этот коэффициент показывает силу и направление связи между двумя переменными. Его значение может быть от -1 до 1, где -1 означает полное отрицательное соотношение, 0 - отсутствие соотношения, а 1 - полное положительное соотношение.

6

4. Почему выражение для Р можно использовать лишь при n=50.

Выражение для Р можно использовать лишь при n=50, потому что это минимальное значение n, при котором гипотеза о нормальности распределения данных может быть достаточно точно проверена с использованием этого выражения. При меньшем значении n точность проверки может быть низкой и выражение может давать недостоверные результаты.

5.Выводы:

Врезультате выполнения лабораторной работы, были получены практические навыки работы с методами и алгоритмами моделирования в программной среде

MatLab случайных событий, а также проведены тесты для проверки качества моделирования. Реализованный алгоритм даёт корректные результаты в интервале от 0 до 1. Из полученных статистических показателей видно, что чем больше объём выборки, тем ближе среднее случайных величин к медиане границ генерации чисел, сокращается дисперсия.

7