function f=mimo_corr(anglespread,angle,d,M)
L=1000;
anglespread1=720;
c=0;
% clear i;
p=zeros(1,L);
fai=zeros(1,L);
fai1=zeros(1,L);
FAI=zeros(1,L);
matrix1=zeros(M,1);
matrix2=zeros(1,M);
correlation1 =zeros(M,M);
correlation2=zeros(M,M);
correlation=zeros(M,M);
for m=1:L
fai1(1,m)=angle-anglespread1+2*anglespread1*m/L;
fai(1,m)=2*pi*(angle-anglespread1+2*anglespread1*m/L)/360;
FAI(1,m)=d*sin(fai(1,m));
end
for m= 1:L
p(1,m)= 1/(anglespread*sqrt(2))*exp(-sqrt(2)*abs(fai1(1,m)-angle)/anglespread)*2*anglespread1/L;
end
for m=1:L
c=p(1,m)+c;
end
c;
for m= 1:L
for n= 1:M
matrix1(n,1)=exp(i*FAI(m)*2*pi*(n-1));
end
matrix2=matrix1';
correlation1 =matrix1 *matrix2*p(1,m);
correlation2=correlation1+correlation2;
end
for m=1:M
for n=1:M
correlation(m,n)=abs(correlation2(m,n))/c;
end
end
f=correlation;