📄 多项式_svm.m
字号:
close all;
clear all;
N=6;
M=8;
j=sqrt(-1);
len=100;
% rp.TNRdB=10;
% rp.INRdB=10;
% rp.mean_v = 0; % mean of complex-valued AWGN
% rp.var_v = 1; % variance of complex-valued AWGN
theta=[-20*pi/180,-10*pi/180,10*pi/180,20*pi/180,35*pi/180,50*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;
s5=2*(rand(1,len)>0.5)-1;
% t=0:0.01:0.2;
% x=rectpuls(t,1);
% for i=1:len
% x_bpsk1((i-1)*20+1:i*20)=s0(1,i)*x(1:20);%基带信号
% x_bpsk2((i-1)*20+1:i*20)=s1(1,i)*x(1:20);
% end
s=[s0;s1;s2;s3;s4;s5];
for i=1:M
for k=1:N
A1(i,k)=exp(-j*pi*(i-1)*sin(theta(k)));%array responce
end
end
X_nn=A1*s;
X=X_nn;
L=100;
a=zeros(1,L);
C=0.1;
y=s3;
for i=1:L
sum=0;
for k=1:L
K=(X(:,i)'*X(:,k)+1).^2;
sum=sum+a(k)*y(k)*K;
end
u=1/((X(:,i)'*X(:,i)+1).^2);
a(i)=a(i)+u*(1-y(i)*sum);
if a(i)<0
a(i)=0;
else if a(i)>C
a(i)=C;
end
end
end
% w=zeros(M,1);
% i=1;
% for i=1:L
% w=w+a(i)*y(i)*X_t(:,i);
% 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)
Gsita=0;
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)))];
for p=1:L
K=(a_sita_i(:,i)'*X(:,p)+1).^2;
Gsita= Gsita+a(p)*y(p)*K;
end
G_sita(i)=Gsita;
end
figure;
plot(sita1,10*log10(abs(G_sita)));
grid on ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -