17th
Май

Гауссовское распределение

Posted by bullvinkle under Пост-обзор

К примеру, нормальное (Гауссово) строится используя математическую хитрость о том, что сумма равномерно-распределенных случ. величин – есть нормальная случ. величина.

Код:

{ Моделирование нормального распределения }
function Norm: Real;
var
  s: Real;
  i: Integer;
begin
  s := 0;
  for i := 1 to Nmax do s := s + Random;
  norm := s-Nmax/2;
end;

{ Моделирование распределения скоростей Максвелла }
procedure Maxwell(disp,norm:real;var vx,vy:array of Real);
var
  i: integer;
begin
  for i := 1 to Nmax do begin
    vx := norm*disp;
    vy := norm*disp;
  end;
end;

Максвеловское (на самом деле это очень похожее на него) приведено для примера. Как управлять дисперсией.
С нормальным немного почесать затылок и можно будет сместить и среднее значение и среднее отклонение.

ЗЫ: Random – встроенный генератор случайных чисел, выдает случайную величину с равномерной плотностью распределения. если что ))

Тема на форуме.

Похожие статьи