当前位置:编程学习 > Matlab >>

关于matlab 的,为什么这个程序运行出来只有三条曲线,应该要四条啊,求高手帮忙啊

function [y]=Qfunct(x) % [y]=Qfunct(x) y=(1/2)*erfc(x/sqrt(2)); clear all echo on SNRindB1=0:0.1:10; for i=1:length (SNRindB1), SNR=exp(SNRindB1(i)*log(10)/10); %转化信噪比的数值 theo_err_prb1(i)=Qfunct(sqrt(2*SNR)); %mpsk理论比特误码率计算 theo_err_prb2(i)=2*Qfunct(sqrt(6*SNR)*sin(pi/8))/3; theo_err_prb3(i)=Qfunct(sqrt(2*SNR)); %mdpsk理论误码率 theo_err_prb4(i)=2*Qfunct(sqrt(SNR)); end; % 画出半对数坐标下的信噪比与误码率的关系曲线 semilogy (SNRindB1,theo_err_prb1,'b-',SNRindB1,theo_err_prb2,'r-', SNRindB1,theo_err_prb3,'g-',SNRindB1,theo_err_prb4,'m-'); axis([0,10,10^(-5),10^0]); grid xlabel('Eb/No in dB') ylabel('误码率') title('mpsk,mdpsk通信系统理论误码率的较') legend('2psk,4psk理论误码率','8psk理论误码率','2dpsk理论误码率','4dpsk,8dpsk理论误码率')
答案:theo_err_prb1(i)=Qfunct(sqrt(2*SNR));    %mpsk理论比特误码率计算
theo_err_prb3(i)=Qfunct(sqrt(2*SNR));      %mdpsk理论误码率
这两个有什么区别吗?我感觉是你自己写错了东西了。这两条一样的曲线画在一起了

上一个:下面matlab程序是书上的,但是我运行就是会出错求解释求更正
下一个:如何用pso算法优化离散数据?(matlab程序)

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,