1、· 分集合并技术MATLAB仿真 - [毕设] 版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明 clc clear c=sqrt(2)/2; j=sqrt(-1); Cons=[1,c+j*c, j, c-j*c,-1, -c-j*c, -j, -c+j*c]; Es=1; SNRIndex=1; for SNR=0:5:50 SNRValue(SNRIndex)=SNR; SNR1=10^(SNR/10); NoisePower=2*Es/(SNR1); RealNoisePower=NoisePower/2;
2、 Frame=5000; TotalBit1=0; ErrorNum1_M=0; ErrorNum2_M=0; ErrorNum3_M=0; ErrorNum4_M=0; ErrorNum5_M=0; ErrorNum1_E=0; ErrorNum2_E=0; ErrorNum3_E=0; ErrorNum4_E=0; ErrorNum5_E=0; ErrorNum1_S=0; ErrorNum2_S=0; ErrorNum3_S=0;
3、ErrorNum4_S=0; ErrorNum5_S=0; for loop=1:1:Frame h1=(randn(1)+j*randn(1))*sqrt(1/2); for i=1:1:2 h2(i,1)=(randn(1)+j*randn(1))*sqrt(1/2); end for i=1:1:4 h3(i,1)=(randn(1)+j*randn(1))*sqrt(1/2); end for i=1:1:
4、6 h4(i,1)=(randn(1)+j*randn(1))*sqrt(1/2); end for i=1:1:8 h5(i,1)=(randn(1)+j*randn(1))*sqrt(1/2); end TotalBit1=TotalBit1+1; for i=1:1:2 InStream(i)=(rand(1)>=0.5); end xx1=2*InStream(1)+InStre
5、am(2)+1; x=Cons(xx1); noise1=(randn(1)+j*randn(1))*sqrt(RealNoisePower); for i=1:1:2 noise2(i,1)=(randn(1)+j*randn(1))*sqrt(RealNoisePower); end for i=1:1:4 noise3(i,1)=(randn(1)+j*randn(1))*sqrt(RealNoisePower); end
6、 for i=1:1:6 noise4(i,1)=(randn(1)+j*randn(1))*sqrt(RealNoisePower); end for i=1:1:8 noise5(i,1)=(randn(1)+j*randn(1))*sqrt(RealNoisePower); end r1=h1*x+noise1; r2=h2*x+noise2; r3=h3*x+noise3; r4=h4*x+noise
7、4; r5=h5*x+noise5; %%%%%%%%MRC%%%%%%% s1_m=r2(1)*conj(h2(1))+r2(2)*conj(h2(2)); s2_m=r3(1)*conj(h3(1))+r3(2)*conj(h3(2))+r3(3)*conj(h3(3))+r3(4)*conj(h3(4)); s3_m=r4(1)*conj(h4(1))+r4(2)*conj(h4(2))+r4(3)*conj(h4(3))+r4(4)*conj(h4(4))+r4(5)*conj(h4(5))+r4
8、6)*conj(h4(6)); s4_m=r5(1)*conj(h5(1))+r5(2)*conj(h5(2))+r5(3)*conj(h5(3))+r5(4)*conj(h5(4))+r5(5)*conj(h5(5))+r5(6)*conj(h5(6))+r5(7)*conj(h5(7))+r5(8)*conj(h5(8)); for i=1:1:4 M1(i)=abs(r1-h1*Cons(i)); M2(i)=abs(s1_m-Cons(i)); M3(i)=abs(s2_
9、m-Cons(i)); M4(i)=abs(s3_m-Cons(i)); M5(i)=abs(s4_m-Cons(i)); end Minvalue_M=min(M1); n1_m=find(M1==Minvalue_M); l1_m=Cons(n1_m); Minvalue_M=min(M2); n2_m=find(M2==Minvalue_M); l2_m=Cons(n2_m);
10、 Minvalue_M=min(M3); n3_m=find(M3==Minvalue_M); l3_m=Cons(n3_m); Minvalue_M=min(M4); n4_m=find(M4==Minvalue_M); l4_m=Cons(n4_m); Minvalue_M=min(M5); n5_m=find(M5==Minvalue_M); l5_m=Cons(n5_m); ErrorNum1_M=ErrorNum1_M+(
11、l1_m~=x); ErrorNum2_M=ErrorNum2_M+(l2_m~=x); ErrorNum3_M=ErrorNum3_M+(l3_m~=x); ErrorNum4_M=ErrorNum4_M+(l4_m~=x); ErrorNum5_M=ErrorNum5_M+(l5_m~=x); %%%%%EGC%%%%% s1_e=r2(1)*conj(h2(1))/abs(h2(1))+r2(2)*conj(h2(2))/abs(h2(2)); s2_e=r3(1
12、)*conj(h3(1))/abs(h3(1))+r3(2)*conj(h3(2))/abs(h3(2))+r3(3)*conj(h3(3))/abs(h3(3))+r3(4)*conj(h3(4))/abs(h3(4)); s3_e=r4(1)*conj(h4(1))/abs(h4(1))+r4(2)*conj(h4(2))/abs(h4(2))+r4(3)*conj(h4(3))/abs(h4(3))+r4(4)*conj(h4(4))/abs(h4(4))+r4(5)*conj(h4(5))/abs(h4(5))+r4(6)*conj(h4(6))/abs(h4(6))
13、 s4_e=r5(1)*conj(h5(1))/abs(h5(1))+r5(2)*conj(h5(2))/abs(h5(2))+r5(3)*conj(h5(3))/abs(h5(3))+r5(4)*conj(h5(4))/abs(h5(4))+r5(5)*conj(h5(5))/abs(h5(5))+r5(6)*conj(h5(6))/abs(h5(6))+r5(7)*conj(h5(7))/abs(h5(7))+r5(8)*conj(h5(8))/abs(h5(8)); for i=1:1:4 E1(i)=abs(r1-h1*C
14、ons(i)); E2(i)=abs(s1_e-Cons(i)); E3(i)=abs(s2_e-Cons(i)); E4(i)=abs(s3_e-Cons(i)); E5(i)=abs(s4_e-Cons(i)); end Minvalue_E=min(E1); n1_e=find(E1==Minvalue_E); l1_e=Cons(n1_e); Minvalue_E=min(E2);
15、 n2_e=find(E2==Minvalue_E); l2_e=Cons(n2_e); Minvalue_E=min(E3); n3_e=find(E3==Minvalue_E); l3_e=Cons(n3_e); Minvalue_E=min(E4); n4_e=find(E4==Minvalue_E); l4_e=Cons(n4_e); Minvalue_E=min(E5); n5_e=find(E5==Minvalue_E
16、); l5_e=Cons(n5_e); ErrorNum1_E=ErrorNum1_E+(l1_e~=x); ErrorNum2_E=ErrorNum2_E+(l2_e~=x); ErrorNum3_E=ErrorNum3_E+(l3_e~=x); ErrorNum4_E=ErrorNum4_E+(l4_e~=x); ErrorNum5_E=ErrorNum5_E+(l5_e~=x); %%%%%SC%%%%% Maxvalue1=max(h2);
17、 a=find(h2==Maxvalue1); Maxvalue2=max(h3); b=find(h3==Maxvalue2); Maxvalue3=max(h4); c=find(h4==Maxvalue3); Maxvalue4=max(h5); d=find(h5==Maxvalue4); s1_s=r2(a); s2_s=r3(b); s3_s=r4(c); s4_s=r5(d);
18、 for i=1:1:4 S1(i)=abs(r1-h1*Cons(i)); S2(i)=abs(s1_s-h2(a)*Cons(i)); S3(i)=abs(s2_s-h3(b)*Cons(i)); S4(i)=abs(s3_s-h4(c)*Cons(i)); S5(i)=abs(s4_s-h5(d)*Cons(i)); end Minvalue_S=min(S1); n1_s=find(S1==Minv
19、alue_S); l1_s=Cons(n1_s); Minvalue_S=min(S2); n2_s=find(S2==Minvalue_S); l2_s=Cons(n2_s); Minvalue_S=min(S3); n3_s=find(S2==Minvalue_S); l3_s=Cons(n2_s); Minvalue_S=min(S4); n4_s=find(S4==Minvalue_S); l4_s=Cons
20、n4_s); Minvalue_S=min(S5); n5_s=find(S5==Minvalue_S); l5_s=Cons(n5_s); ErrorNum1_S=ErrorNum1_S+(l1_s~=x); ErrorNum2_S=ErrorNum2_S+(l2_s~=x); ErrorNum3_S=ErrorNum3_S+(l3_s~=x); ErrorNum4_S=ErrorNum4_S+(l4_s~=x); ErrorNum5_S=Erro
21、rNum5_S+(l5_s~=x); end BER1_M(SNRIndex)=ErrorNum1_M/TotalBit1; BER2_M(SNRIndex)=ErrorNum2_M/TotalBit1; BER3_M(SNRIndex)=ErrorNum3_M/TotalBit1; BER4_M(SNRIndex)=ErrorNum4_M/TotalBit1; BER5_M(SNRIndex)=ErrorNum5_M/TotalBit1; BER1_E(SNRIndex)=ErrorNum1_E/TotalBi
22、t1; BER2_E(SNRIndex)=ErrorNum2_E/TotalBit1; BER3_E(SNRIndex)=ErrorNum3_E/TotalBit1; BER4_E(SNRIndex)=ErrorNum4_E/TotalBit1; BER5_E(SNRIndex)=ErrorNum5_E/TotalBit1; BER1_S(SNRIndex)=ErrorNum1_S/TotalBit1; BER2_S(SNRIndex)=ErrorNum2_S/TotalBit1; BER3_S(SNRIndex
23、)=ErrorNum3_S/TotalBit1; BER4_S(SNRIndex)=ErrorNum4_S/TotalBit1; BER5_S(SNRIndex)=ErrorNum5_S/TotalBit1; SNRIndex=SNRIndex+1; end figure(1) semilogy(SNRValue,BER1_M,'k-s',SNRValue,BER2_M,'r-d',SNRValue,BER3_M,'b-o',SNRValue,BER4_M,'c-*',SNRValue,BER5_M,'m-v') title('最大比合并性能比较曲线')
24、 xlabel('SNR') ylabel('误符号率') legend('Antenna1','Antenna2','Antenna4','Antenna6','Antenna8') grid on figure(2) semilogy(SNRValue,BER1_E,'k-s',SNRValue,BER2_E,'r-d',SNRValue,BER3_E,'b-o',SNRValue,BER4_E,'c-*',SNRValue,BER5_E,'m-v') title('等增益合并性能比较曲线') xlabel('SNR') ylabel('误符号率') lege
25、nd('Antenna1','Antenna2','Antenna4','Antenna6','Antenna8') grid on figure(3) semilogy(SNRValue,BER1_S,'k-s',SNRValue,BER2_S,'r-d',SNRValue,BER3_S,'b-o',SNRValue,BER4_S,'c-*',SNRValue,BER5_S,'m-v') title('选择合并性能比较曲线') xlabel('SNR') ylabel('误符号率') legend('Antenna1','Antenna2','Antenna4','Antenn
26、a6','Antenna8') grid on figure(4) semilogy(SNRValue,BER1_M,'k-s',SNRValue,BER2_S,'r-d',SNRValue,BER2_E,'b-o',SNRValue,BER2_M,'m-*') title('三种合并技术性能比较曲线') xlabel('SNR') ylabel('误符号率') legend('Antenna','SC','EGC','MRC') grid on 开题报告的内容应包括 (1) 课题的研究意义、国内外现状分析。 (2) 课题研究目标、研究内容、拟
27、解决的关键问题。 (3) 拟采取的研究方法、技术路线、试验方案及其可行性 研究。 (4) 课题的创新性。 (5)计划进度、预期进展和预期成果。 注:(1)开题报告由各院(系、所、中心)组织实施,专家组成员由副高以上人员组成,邀请导师和督导组相关专家参加,导师担任组长。 (2)专家组的作用是帮助导师和研究生执行选题论证,论证意见以“通过”、 “不通过”结论。通过者按计划开展论文工作,不通过者,在半年内需 重新开题。 选 题 报 告 主 要 内 容
28、 指 导 教 师 意 见 指导教师签字: 年 月 日 专 家 组 论 证 意 见 专家组成员签字: 年 月 日






