📄 ls_svm2.m
字号:
close all;
clear all;
N=5;
M=8;
j=sqrt(-1);
len=100;
theta=[-45*pi/180,-30*pi/180,0*pi/180,10*pi/180,40*pi/180];
s0=2*(rand(1,len)>0.5)-1;
s1=2*(rand(1,len)>0.5)-1;
s2=2*(rand(1,len)>0.5)-1;
s3=2*(rand(1,len)>0.5)-1;
s4=2*(rand(1,len)>0.5)-1;
for i=1:len
x_bpsk1(i)=sqrt(10.^(-5/10))*s0(i);
x_bpsk2(i)=sqrt(10.^(8/10))*s1(i);
x_bpsk3(i)=sqrt(10.^(5/10))*s2(i);
x_bpsk4(i)=sqrt(10.^(5/10))*s3(i);
x_bpsk5(i)=sqrt(10.^(-8/10))*s4(i);
end
s=[x_bpsk1;x_bpsk2;x_bpsk3;x_bpsk4;x_bpsk5];
for i=1:M
for k=1:N
A1(i,k)=exp(-j*pi*(i-1)*sin(theta(k)));%array responce
end
end
rp.mean_v = 0; % mean of complex-valued AWGN
rp.var_v = 1; % variance of complex-valued AWGN
vr = sqrt(rp.var_v/2) * randn(M,len) + rp.mean_v;
vi = sqrt(rp.var_v/2) * randn(M,len) + rp.mean_v;
v = vr + j*vi;
X_nn=A1*s;
X=X_nn+v;
L=100;
r=5000;
y=s2;
B=zeros(len+1,1);
A=zeros(len+1,len+1);
C=zeros(len+1,1);
E=eye(len,len);
D=X'*X+1/r*E;
w=zeros(M,1);
for i=2:(len+1)
B(i)=y(i-1);
A(i,1)=1;
A(1,i)=1;
A(2:(len+1),i)=D(:,(i-1));
end
C=inv(A)*B;
for i=1:len
w=w+C(i+1)*X(:,i);
end
%the out data
f=zeros(1,len);
for i=1:len
f(i)=sign(real(w'*X(:,i)+C(1)));
end
sita1=[-90:2:90];
sita=sita1*pi/180;
G_sita=zeros(1,length(sita));
a_sita_i=zeros(M,length(sita));
for i=1:length(sita)
a_sita_i(:,i)=[1;exp(-j*pi*sin(sita(i))) ; exp(-j*2*pi*sin(sita(i))); exp(-j*3*pi*sin(sita(i))) ;exp(-j*4*pi*sin(sita(i))) ;exp(-j*5*pi*sin(sita(i))) ;exp(-j*6*pi*sin(sita(i))) ;exp(-j*7*pi*sin(sita(i)))];
G_sita(i)=a_sita_i(:,i)'*w;
end
figure;
plot(sita1,10*log10(abs(G_sita)));
grid on ;
figure;
subplot(2,1,1)
stem(s0,'r');hold on
subplot(2,1,2)
stem(f,'y');
grid on ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -