%E:\大学课件&科学浏览器\大三下\光纤通信\光纤实验\M-PSK非线性决策边界
clear all;
M=4;
ini_phase = 0;%初始相位
Ts = 1; %码元周期
N_sample = 100; %每个码元抽样点数
fs=N_sample;
dt = Ts/N_sample; %抽样的时间间隔
N = 20; %码元数
L = N* N_sample;
t = 0:dt:(N*N_sample-1)*dt;
df = fs/length(t);
f = -fs/2:df:fs/2-df; %定义频率矢量(频谱图的横坐标)
% 基本码元 g(t) = 1
gt0 = zeros(1,N_sample);
gt1 = ones(1,N_sample); %单极性不归零
%生成随机码元
random_code1 = randi([0,1],1,N);
random_code2 = randi([0,1],1,N);
%单极性波形的最后结果
yt1 = zeros(1,N*N_sample-1); %1路数据
yt2 = zeros(1,N*N_sample-1); %2路数据
for i = 1:N
if random_code1(i) == 1 %得到波形图
yt1((i-1)*N_sample+1:i*N_sample) = gt1; %单极性不归零NRZ波形
else
yt1((i-1)*N_sample+1:i*N_sample) = gt0;
end
end
for i = 1:N
if random_code2(i) == 1 %得到波形图
yt2((i-1)*N_sample+1:i*N_sample) = gt1; %单极性归零RZ波形
else
yt2((i-1)*N_sample+1:i*N_sample) = gt0;
end
end
figure;
subplot(211)
plot(t,yt1);
axis([0 10 -0.1 1.1]);
title('第一路数据');
subplot(212)
plot(t,yt2);
axis([0 10 -0.1 1.1]);
title('第二路数据');
Group1=zeros(1,L);
Group2=zeros(1,L);
Group1=Group1';
Group2=Group2';
send = zeros(1,N*N_sample);
for i = 1:N*N_sample
if yt1(i) == 0 && yt2(i) == 0
send(i) = exp(1i*(2*pi*0/M)+ini_phase);
Group1(i) = 1;
Group2(i) = 1;
elseif yt1(i) == 0 && yt2(i) == 1
send(i) = exp(1i*(2*pi*1/M)+ini_phase);
Group1(i) = 1;
Group2(i) = -1;
elseif yt1(i) == 1 && yt2(i) == 1
send(i) = exp(1i*(2*pi*2/M)+ini_phase);
Group1(i) = -1;
Group2(i) = -1;
elseif yt1(i) == 1 && yt2(i) == 0
send(i) = exp(1i*(2*pi*3/M)+ini_phase);
Group1(i) = -1;
Group2(i) = 1;
end
end
figure;
send = awgn(send,10);
plot(real(send),imag(send),'*');
title('接收端星座图');
grid on;
TrainData=[real(send)',imag(send)'];
Group1=Group1';
Group2=Group2';
figure;
SVMStruct1 = svmtrain(TrainData,Group1,'kernel_function','rbf','Showplot',true) % train
hold on;
SVMStruct2 = svmtrain(TrainData,Group2,'kernel_function','rbf','Showplot',true) % train
hold off;
title('默认的SVM');
% 不同的sigma
figure('Name','不同的sigma');
subplot(221)
sigma=0.1;
SVMStruct1=svmtrain(TrainData,Group1,'kernel_function','rbf','rbf_sigma',sigma,'Showplot',true); % train
hold on;
SVMStruct2=svmtrain(TrainData,Group2,'kernel_function','rbf','rbf_sigma',sigma,'Showplot',true); % train
title('sigma=0.1');
hold off;
subplot(222)
sigma=1;
SVMStruct1=svmtrain(TrainData,Group1,'kernel_function','rbf','rbf_sigma',sigma,'Showplot',true); % train
hold on;
SVMStruct2=svmtrain(TrainData,Group2,'kernel_function','rbf','rbf_sigma',sigma,'Showplot',true); % train
title('sigma=0.1');
hold off;
subplot(223)
sigma=5;
SVMStruct1=svmtrain(TrainData,Group1,'kernel_function','rbf','rbf_sigma',sigma,'Showplot',true); % train
hold on;
SVMStruct2=svmtrain(TrainData,Group2,'kernel_function','rbf','rbf_sigma',sigma,'Showplot',true); % train
title('sigma=1');
hold off;
subplot(224)
sigma=10;
SVMStruct1=svmtrain(TrainData,Group1,'kernel_function','rbf','rbf_sigma',sigma,'Showplot',true); % train
hold on;
SVMStruct2=svmtrain(TrainData,Group2,'kernel_function','rbf','rbf_sigma',sigma,'Showplot',true); % train
title('sigma=10');
hold off;
% 不同的C
figure('Name','不同的C');
subplot(221)
C=0.1;
SVMStruct1=svmtrain(TrainData,Group1,'kernel_function','rbf','boxconstraint',C,'Showplot',true); % train
hold on;
SVMStruct2=svmtrain(TrainData,Group2,'kernel_function','rbf','boxconstraint',C,'Showplot',true); % train
title('C=0.1');
hold off;
subplot(222)
C=1;
SVMStruct1=svmtrain(TrainData,Group1,'kernel_function','rbf','boxconstraint',C,'Showplot',true); % train
hold on;
SVMStruct2=svmtrain(TrainData,Group2,'kernel_function','rbf','boxconstraint',C,'Showplot',true); % train
title('C=1');
hold off;
subplot(223)
C=5;
SVMStruct1=svmtrain(TrainData,Group1,'kernel_function','rbf','boxconstraint',C,'Showplot',true); % train
hold on;
SVMStruct2=svmtrain(TrainData,Group2,'kernel_function','rbf','boxconstraint',C,'Showplot',true); % train
title('C=5');
hold off;
subplot(224)
C=10;
SVMStruct1=svmtrain(TrainData,Group1,'kernel_function','rbf','boxconstraint',C,'Showplot',true); % train
hold on;
SVMStruct2=svmtrain(TrainData,Group2,'kernel_function','rbf','boxconstraint',C,'Showplot',true); % train
title('C=10');
hold off;
PSK_4.rar_M psk matlab_m-PSK_psk svm_svm 星座图_决策图
版权申诉
132 浏览量
2022-07-15
13:20:41
上传
评论
收藏 1KB RAR 举报
钱亚锋
- 粉丝: 86
- 资源: 1万+
最新资源
- 上市公司-股票性质数据-工具变量(民企、国企、央企)2003-2022年.dta
- 上市公司-股票性质数据-工具变量(民企、国企、央企)2003-2022年.xlsx
- Reeds+Shepp曲线算法讲解和实现.pdf
- 毕业设计基于SpringBoot+MyBatisPlus+MySQL+Vue的外卖配送信息系统源代码+数据库
- 词向量(Word Embeddings)是自然语言处理(NLP)领域的一种重要技术.txt
- Surfer,线性函数
- MyBatis 的动态 SQL 是其核心特性之一.txt
- 时代的sdddsddsddsd
- 基于哈希链表的简单人员信息管理系统
- 其他类别JdonFramework开源框架 v5.1 Build20071025-jdonframework-5.1.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈