Matlab: статистические штучки для получения реализаций случайной величины

2008 Февраль 22
by bausk
Это первое (upd.: и единственное) сообщение, отосланное через ScribeFire, аддон к браузеру FireFox.
Так-с. Исходные данные. Предполагается, что читатель знаком с:

Предположим, что у нас есть случайная прочность R с параметрами m=350, s=30. Это выглядит так:

Функции распределения и функции плотности в Матлабе соответствуют команды

cdf('norm', x, Mean1, StdDev1)pdf('norm', x, Mean1, StdDev1)
Команда cdf(…) отвечает на вопрос «какова вероятность того, что реализация случайной переменной будет меньше, чем x
Но для задачи вероятностного расчета методом Монте-Карло нам нужно средство генерации множества реализаций нашей случайной прочности.
Для равномерного распределения такое средство одинаково в любом языке программирования и называется RND. И в Екселе тоже есть.
Для любого другого распределения для генерации случайных чисел нам нужна функция, обратная CDF, отвечающая на вопрос «какое число соответствует вероятности непревышения такой-то?». Такой способ получения случайных чисел называется методом обратного преобразования.
Откуда нам взять такого зверя? На помощь приходит замечательный статистический пакет Stixbox, о котором я обещал написать :
>> MonteCarloData1 = rnorm(1000, 350, 30);
 >> Mean1 = mean(MonteCarloData1)
 Mean1 =349.9133
 >> StdDev1 = std(MonteCarloData1)
 StdDev1 =30.7880
Функция rnorm(количество_реализаций, среднее, стд_отклонение) выдает столько реализаций случайной величины с нормальным распределением, сколько нам заблагорассудится. С ее помощью и построена наложенная на рисунок гистограмма реализаций случайной величины (красненьким).
Аналогичные функции есть в этом пакете и для других известных распределений. Для задач вероятностного анализа расчетных моделей конструкций более чем достаточно. Спасибо за этот замечательный инструмент Андерсу Хольтсбергу.
Один ответ leave one →
  1. 2009 Апрель 27
    Тамара permalink

    Функции распределения и функции плотности в Матлабе соответствуют команды

    cdf(‘norm’, x, Mean1, StdDev1)pdf(‘norm’, x, Mean1, StdDev1)
    А можно подробнее как реализовать эти функции, спасибо.

Ответить

Для отправки комментария вы должны авторизоваться.