Z9411_Моделирование_Лаб4_КафкаРС_
.docx
МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
федеральное государственное автономное образовательное учреждение высшего образования
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»
ИНСТИТУТ НЕПРЕРЫВНОГО И ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ
КАФЕДРА 41
|
ОЦЕНКА
ПРЕПОДАВАТЕЛЬ
старший преподаватель |
|
|
|
А. В. Сорокин |
должность, уч. степень, звание |
|
подпись, дата |
|
инициалы, фамилия |
ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №4
|
ИССЛЕДОВАНИЕ ДАТЧИКОВ РАВНОМЕРНО РАСПРЕДЕЛЕННЫХ ПСЕВДОСЛУЧАЙНЫХ ЧИСЕЛ
|
по дисциплине: МОДЕЛИРОВАНИЕ |
РАБОТУ ВЫПОЛНИЛ
СТУДЕНТ ГР. № |
Z9411 |
|
|
|
Р. С. Кафка |
|
номер группы |
|
подпись, дата |
|
инициалы, фамилия |
Студенческий билет № |
2019/3603 |
|
|
|
Санкт-Петербург 2023
Цель работы:
Ознакомление с методами и алгоритмами моделирования в программной среде MathCAD или MatLab случайных событий, а также изучение тестов для проверки качества моделирования.
Вариант задания
Мультипликативные датчики Полларда
Ход работы:
Разработана программа генерации псевдослучайных чисел, результат работы которой приведён на рисунках 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 |
Рисунок 1 – Случайные величины при объёме выборки 100
Рисунок 2 – Отсортированные случайные величины при объёме выборки 100
Рисунок 3 – Случайные величины при объёме выборки 600
Рисунок 4 – Отсортированные случайные величины при объёме выборки 600
Рисунок 5 – Случайные величины при объёме выборки 1000
Рисунок 6 – Отсортированные случайные величины при объёме выборки 1000
На рисунке 7 представлены статистические показатели для СВ с объемом выборки равным 100, 600 и 1000.
Рисунок 7 – Статистические показатели
Контрольные вопросы:
Сформулируйте требования оформления подпрограмм в среде MathCAD и MatLab.
В MathCAD и MatLab для оформления подпрограмм используются функции, которые должны быть объявлены в начале программы, и иметь определенное название, входные и выходные параметры. Также должны быть соблюдены стандарты именования переменных и использования комментариев для улучшения читаемости кода.
Поясните работу подпрограммы, вычисляющей статистику Колмогорова-Смирнова.
Подпрограмма, вычисляющая статистику Колмогорова-Смирнова, использует функцию, которая сравнивает фактическое распределение данных с теоретическим распределением. Эта статистика используется для проверки гипотезы о том, что данные имеют определенное распределение.
Объясните, как в программе вычисляется корреляционная функция.
В программе корреляционная функция вычисляется с помощью выражения, которое содержит среднее значение двух переменных, их стандартное отклонение и коэффициент корреляции между ними. Этот коэффициент показывает силу и направление связи между двумя переменными. Его значение может быть от -1 до 1, где -1 означает полное отрицательное соотношение, 0 - отсутствие соотношения, а 1 - полное положительное соотношение.
Почему выражение для Р можно использовать лишь при n=50.
Выражение для Р можно использовать лишь при n=50, потому что это минимальное значение n, при котором гипотеза о нормальности распределения данных может быть достаточно точно проверена с использованием этого выражения. При меньшем значении n точность проверки может быть низкой и выражение может давать недостоверные результаты.
Выводы:
В результате выполнения лабораторной работы, были получены практические навыки работы с методами и алгоритмами моделирования в программной среде MatLab случайных событий, а также проведены тесты для проверки качества моделирования. Реализованный алгоритм даёт корректные результаты в интервале от 0 до 1. Из полученных статистических показателей видно, что чем больше объём выборки, тем ближе среднее случайных величин к медиане границ генерации чисел, сокращается дисперсия.