Consenti alle coordinate cartesiane di un punto casuale di selezionare st .
Così, il raggio, , non è distribuita uniformemente come sottintende 's pdf .
Tuttavia mi aspetterei che sia quasi uniforme, escludendo gli artefatti dovuti ai 4 resti ai bordi:
Di seguito sono riportate le funzioni di densità di probabilità calcolate graficamente di e :
Ora, se io lascio essere distribuita st , allora sembra uniformemente distribuiti:x , y ∼ N ( 0 , 20 2 ) × N ( 0 , 20 2 ) θ
Perché non è uniforme quando ed è uniforme quando ?( x , y ) ∼ U ( - 10 , 10 ) × U ( - 10 , 10 ) x , y ∼ N ( 0 , 20 2 ) × N ( 0 , 20 2 )
Il codice Matlab che ho usato:
number_of_points = 100000;
rng('shuffle')
a = -10;
b = 10;
r = (b-a).*randn(2,number_of_points);
r = reshape(r, [2,number_of_points]);
I = eye(2);
e1 = I(:,1); e2 = I(:,2);
theta = inf*ones(1,number_of_points);
rho = inf*ones(1,number_of_points);
for i=1:length(r(1,:))
x = r(:,i);
[theta(i),rho(i)] = cart2pol(x(1),x(2));
end
figure
M=3;N=1; bins = 360;
subplot(M,N,1);
histogram(rad2deg(theta), bins)
title('Polar angle coordinate p.d.f');
subplot(M,N,2);
histogram(rho, bins);
title('Polar radius coordinate p.d.f');
subplot(M,N,3);
histogram(r(:));
title('The x-y cooridnates distrbution (p.d.f)');
Sostituendo la 3a riga: r = (b-a).*randn(2,number_of_points);
con r = (b-a).*randn(2,number_of_points) +a ;
cambierà la distribuzione di da normale a uniforme.