(主函数)
clear all;
Monte_MAX=10^5;
MIN_SNR=0;
MAX_SNR=30;
INTEVAL=2;
POW_DIV=1/2;
sr1_distance=1;
r1d_distance=1;
sr2_distance=1;
r2d_distance=1;
M2=10^3;%一次传输的码元数
count=0;
for SNR_dB=MIN_SNR:INTEVAL:MAX_SNR %发射节点和中继节点的发射功率
snr=10^(SNR_dB/10);
count=count+1;
for tries=1:Monte_MAX %尝试10^5次
%产生源信号,进行BPSK调制,信号为-1,1
X1=randi([0 1],1,M2);
Xs=X1*2-1;
Xst=sqrt(POW_DIV*snr)*Xs;
%产生源节点到中继1,2节点的信道
CH_sr1=xy_RayleighCH(1)/sqrt((sr1_distance)^2); %路径损耗系数a=2
CH_sr2=xy_RayleighCH(1)/sqrt((sr2_distance)^2);
%中继协作节点接收到的信号
y_sr1=CH_sr1*Xst+xy_noise(M2);
y_sr2=CH_sr2*Xst+xy_noise(M2);
%放大系数