function [ pd ] =CAS_nak_m2(SNR,N,m,NN)

%N为衰落程度系数,mnakagami-m的衰落系数,SNR为信噪比,

pf=0.01;

SNR_integer=10^(SNR/10);%信噪比十进制形式

SNR_integer=1/SNR_integer*m^N;

u=1;

lamda=2*gammaincinv(1-pf,u);%判决门限根据虚警概率确定,见文中公式(2)

pp=(factorial(m-1))^N;

pp=1/pp;

s=zeros(1,length(NN)+1);

for n=0:NN; %为了计算方便,我们可以假设的

w=zeros(1,length(n+u-1)+1);

for k=0:n+u-1

w(k+1)=exp(-lamda/2)/(factorial(k))*(lamda/2)^k;

end

alpha=1-n;

ss=['[[',num2str(alpha),'],[]]'];

rr=['[[',num2str(m),',',num2str(m),'],[]]'];

s(n+1)=sum(w)*1/(factorial(n))*arrayfun(@(SNR_integer) double(feval(symengine,'meijerG',ss, rr,num2str(SNR_integer))), SNR_integer);

end

pd=pp*sum(s);

end

主程序;

clc

clear all

close all

m=2;

N=2;

NN=30;

SNR=[5:0.5:20];

pm=zeros(1,length(SNR));

for i=1:length(SNR)

pm(i)=1-CAS_nak_m2(SNR(i),N,m,NN);

end

figure;

semilogy(SNR,pm);

2016-10-5 16:38 上传

442a53943febe9465fc072b4fbe10813.gif

b2a5a3e0dcc7d508e00275fe42fce1b5.gif

m=2,N=2,U=1,λ程序中给出计算方法

8ef3d4773f818543a713922c00caaa14.png

2016-10-5 16:43 上传

442a53943febe9465fc072b4fbe10813.gif

b2a5a3e0dcc7d508e00275fe42fce1b5.gif

程序应该得到的结果

5ba30206f22d5fd6289bae8f25d3143d.png

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐