- •С.В. Ерин
- •Основы работы с Scilab
- •Объекты scilAb Скалярные величины
- •Векторы
- •Двумерные матрицы
- •Единичные матрицы
- •Создание строки, элементы которой будут последовательными целыми числам от n до m
- •Генератор случайных чисел
- •Операции над числовыми матрицами
- •Нахождение суммы и произведения элементов матрицы
- •Нечисловые (символьные) матрицы
- •Полиномы и полиномные матрицы Алгебраический полином можно определить командой poly
- •Определение корней полинома
- •Индексирование элементов в матрицах
- •2D графика
- •Следующая функция позволяет отобразить линии вспомогательной сетки в осях координат
- •Изображение нескольких рисунков в одном графическом окне
- •Программирование с использованием встроенного текстового редактора Scipad
- •Литература1. Алексеев е.Р., Чеснокова о.В., Рудченко е.А. Scilab: Решение инженерных и математических задач. – м: «Бином». 2008 г. Лабораторная работа №2
- •Описание
- •Получение случайных чисел из данного распределения.
- •Примеры:
Описание
Эта функция генерирует случайные числа с разными законами распределений. Список вызовов:
Y=grand(m,n,"bet",A,B)
Y=grand(m,n,"bin",N,p)
Y=grand(m,n,"nbn",N,p)
Y=grand(m,n,"chi", Df)
Y=grand(m,n,"nch",Df,Xnon)
Y=grand(m,n,"exp",Av)
Y=grand(m,n,"f",Dfn,Dfd)
Y=grand(m,n,"nf",Dfn,Dfd,Xnon)
Y=grand(m,n,"gam",shape,scale)
Y=grand(m,n,"nor",Av,Sd)
Y=grand(m,n,"geom", p)
Y=grand(m,n,"poi",mu)
Y=grand(m,n,"def")
Y=grand(m,n,"unf",Low,High)
Y=grand(m,n,"uin",Low,High)
Y=grand(m,n,"lgi")
Создаёт матрицу размером mхnсо случайными числами.
Вызов:
Y=grand(X,...)
где Xматрица размеромmхn, даёт тот же самый эффект. В этом случае используется размер матрицыX.
Последовательность вызовов:
Y=grand(n,"mn",Mean,Cov)
Y=grand(n,"markov",P,x0)
Y=grand(n,"mul",nb,P)
Y=grand(n,"prm",vect)
Даёт матрицу размером mхnсо случайными числами, гдеmвеличина аргументовMean,Cov,Pиvect.
Последовательность вызовов:
S=grand("getgen")
grand("setgen",gen)
S=grand("getsd")
grand("setsd",S)
grand("setcgn",G)
S=grand("getcgn")
grand("initgn",I)
grand("setall",s1,s2,s3,s4)
grand("advnst",K)
задаёт и конфигурирует состояние генераторов случайных чиселconfigure.
Получение случайных чисел из данного распределения.
chisquare
Y=grand(m,n,"chi", Df)генерирует случайные числа из распределения хи-квадрат сDf(real> 0.0) степенями свободы.
exponential
Y=grand(m,n,"exp",Av)генерирует случайные числа из экспоненциального распределения со среднимAv(real> 0.0).
GaussLaplace(normal)
Y=grand(m,n,"nor",Av,Sd)генерирует случайные числа из нормального распределения со среднимAv(real) и стандартным отклонениемSd(real>= 0).
Poisson
Y=grand(m,n,"poi",mu)генерирует случайные числа из распределения Пуассона со среднимmu(real>= 0.0).
uniform (uin)
Y=grand(m,n,"uin",Low,High)генерирует случайные числа однородного распределения распределённого междуLowandHigh(границы включены).High and Low должны быть целыми (High-Low+1) < 2,147,483,561.
[0, 2^31 - 1]for urand.
Примеры:
В следующих примерах сгенерированы случайные числа из различных распределений и представлены их графики.
// Returns a 400-by-800 matrix of random doubles, // with normal distribution and average 0 and standard deviation 1. R = grand(400,800,"nor",0,1); scf(); histplot(10,R); xtitle("Normal random numbers from grand","X","Frequency"); // Returns a 400-by-800 matrix of random doubles, // uniform in [0,1). R = grand(400,800,"def"); scf(); histplot(10,R); xtitle("Uniform random numbers from grand","X","Frequency"); // Returns a 400-by-800 matrix of random doubles, // with Poisson distribution and average equal to 5. R = grand(400,800,"poi",5); scf(); histplot(10,R); xtitle("Poisson random numbers from grand","X","Frequency"); |
|
В этом примере генерируются случайные числа из экспоненциального распределения и сравниваются эмпирическое и теоретическое распределения.
lambda=1.6; N=100000; X = grand(1,N,"exp",lambda); scf(); classes = linspace(0,12,25); histplot(classes,X) x=linspace(0,12,25); y = (1/lambda)*exp(-(1/lambda)*x); plot(x,y,"ro-"); legend(["Empirical" "Theory"]); xtitle("Exponential random numbers from grand","X","Frequency"); |
|
Задания для самостоятельного выполнения.
1.) Сгенерировать нормальное распределение со средним Amean=0 и стандартным отклонением dev=1.
Рассчитать коэффициент эксцесса и коэффициент асимметрии. Произвести расчёт этих коэффициентов для параметров Amean [0,2,4,8,10] и dev[1,2,4]. Построить графики
2.) Сгенерировать распределение хи-квадрат с 1, 2, 3, 4, 5, 20 степенями свободы. Рассчитать коэффициент эксцесса и коэффициент асимметрии. Построить графики.
Электронные учебники по статистике
1.) Учебник StatSoft http://www.statsoft.ru/home/textbook/default.htm