매틀랩에서는 normrnd()함수로 정규난수(normal random variable)를 발생시킬 수 있긴 하지만
여기서는 균일분포(균등분포)를 변환하여 생성해보도록 한다.
균일분포(uniform distribution)인 랜덤변수와
박스뮬러 변환(Box-Muller Transformation)을 이용하여 정규난수(Gaussian Random)을 만들 수 있다.
아래는 매트랩으로 작성한 코드와 실행결과이다.
format long
N = 1000000;
u1 = rand(1,N);
u2 = rand(1,N);
s = 1;
m = 0;
x = m+s*sqrt(-2*log(u1)).*cos(2*pi*u2);
y = m+s*sqrt(-2*log(u1)).*sin(2*pi*u2);
n = horzcat(x,y);
hist(n, 50);
- 매틀랩의 다양한 plot들을 사용해서 그려본 도표들.
- 누적분포함수(cdf)
극좌표 방법(polar method)에 대해서는 다음 글에 이어집니다.
관련글 : http://tibyte.kr/219