int szoras(int u)
{
if(u==0) return 0;
return -u+(rand()%(2*u));
}
void epr_aspect_kiserlet()
{
for(int polarizator_polarizacio=0;polarizator_polarizacio<360;polarizator_polarizacio+=2) {
//kvantummechanika joslata
double szog_radian=(double)polarizator_polarizacio/360.0;
int y=(int)(200.0*pow(cos(szog_radian*2.0*3.1415926),2.0));
pixel(polarizator_polarizacio,300-y,255,0,0);
// polarizator_hatar_szog , veletlen_szog
//aspect modell: 45 , 0
//javitott: 38 , 15 tol 20 ig
//vagy 35 , 25
int polarizator_hatar_szog=36,veletlen_szog=24;
int korrellacio_szamlalo_bazis=0,korrellacio_szamlalo=0;
//meres azonos iranyu polarizatorokkal,
for(int fotonpar=0;fotonpar<50000;fotonpar+=1) {
int fotonpar_polarizacio=rand()%360;
int polarizacio_kulombseg=abs(polarizator_polarizacio-fotonpar_polarizacio+szoras(veletlen_szog));
//0-90 fokra korlatozza az erteket
if(polarizacio_kulombseg>=90&&polarizacio_kulombseg<=270) polarizacio_kulombseg=abs(180-polarizacio_kulombseg);
if(polarizacio_kulombseg>=270) polarizacio_kulombseg=abs(polarizacio_kulombseg-360);
int meres_jobboldal=polarizacio_kulombseg;
polarizacio_kulombseg=abs(polarizator_polarizacio-fotonpar_polarizacio+szoras(veletlen_szog));
//0-90 fokra korlatozza az erteket
if(polarizacio_kulombseg>=90&&polarizacio_kulombseg<=270) polarizacio_kulombseg=abs(180-polarizacio_kulombseg);
if(polarizacio_kulombseg>=270) polarizacio_kulombseg=abs(polarizacio_kulombseg-360);
int meres_baloldal=polarizacio_kulombseg;
if(meres_jobboldal<polarizator_hatar_szog)
if(meres_baloldal<polarizator_hatar_szog) korrellacio_szamlalo_bazis+=1;
}
//meres kulonbozo iranyu polarizatorokkal
for(int fotonpar=0;fotonpar<50000;fotonpar+=1) {
int fotonpar_polarizacio=rand()%360;
int polarizacio_kulombseg=abs(polarizator_polarizacio-fotonpar_polarizacio+szoras(veletlen_szog));
//0-90 fokra korlatozza az erteket
if(polarizacio_kulombseg>=90&&polarizacio_kulombseg<=270) polarizacio_kulombseg=abs(180-polarizacio_kulombseg);
if(polarizacio_kulombseg>=270) polarizacio_kulombseg=abs(polarizacio_kulombseg-360);
int meres_jobboldal=polarizacio_kulombseg;
//masik polarizator 0 fok
polarizacio_kulombseg=abs(0-fotonpar_polarizacio+szoras(veletlen_szog));
//0-90 fokra korlatozza az erteket
if(polarizacio_kulombseg>=90&&polarizacio_kulombseg<=270) polarizacio_kulombseg=abs(180-polarizacio_kulombseg);
if(polarizacio_kulombseg>=270) polarizacio_kulombseg=abs(polarizacio_kulombseg-360);
int meres_baloldal=polarizacio_kulombseg;
if(meres_jobboldal<polarizator_hatar_szog)
if(meres_baloldal<polarizator_hatar_szog) korrellacio_szamlalo+=1;
}
y=korrellacio_szamlalo*200/korrellacio_szamlalo_bazis;
pixel(polarizator_polarizacio,300-y,255,255,0);
}
}