gusucode.com > CRB边界仿真源码程序 > CRB边界仿真源码程序/code/crb_ula.m

    clear;
index=1;
rmse_fi=0;
crb=zeros(1,51);
m=8; % 阵元数
p=1; % 信号数
%俯仰角为入射方向与圆阵轴线之间的夹角,方位角为x轴到入射线在圆阵上投影的夹角
st1=10; % 俯仰角
dt1=10; % 方位角
st2=85;
dt2=40;

st=[st1];
dt=[dt1];
degrad=pi/180;
lamda=0.3;
k0=2*pi/lamda;
radius=lamda/2.6;

tmp =-i*pi*sin(st*degrad);
tmp2=[0:m-1 ]';
a2=tmp2*tmp;
A=exp(a2);

% load sig3
% for snap=1:15
s1 = rand(256,1);

for snr=0:30
% snr=0;
sn=[snr];
nn=256;
tt=1:nn;
S=[s1(tt).'];
sigma=2;

Ps=S*S'/nn;
ps=diag(Ps);
refp=2*10.^(sn/10);
tmp=sqrt(refp./ps);
SS=diag(tmp)*S;

Ps=SS*SS'/nn;
R=A*Ps*A'+sigma*eye(m);
P=Ps*A'*inv(R)*A*Ps;
PP=P;
D=-degrad*i*pi*cos(st*degrad)*tmp2.*A;
H=D'*(eye(m,m)-A*inv(A'*A)*A')*D;
q=sqrt(sigma/(2*nn)*inv(real(H.*PP)))
crb(index)=q;
index=index+1;
end
snr=0:50;
semilogy(snr,crb);