加上后完整的代码时怎么样的
时间: 2023-08-22 15:08:37 浏览: 32
以下是添加了窃听者的完整代码:
```
function nber = helperMIMOBER(chan,x,snr_param,wt,wr)
Nsamp = size(x,1);
Nrx = size(chan,2)+1; % add one for the eavesdropper
Ntx = size(chan,1);
if nargin < 4
wt = ones(1,Ntx);
end
if nargin < 5
wr = ones(Nrx-1,1);
end
xt = 1/sqrt(Ntx)*(2*x-1)*wt; % map to bpsk
nber = zeros(Nrx,numel(snr_param),'like',1); % real
for m = 1:numel(snr_param)
n = sqrt(db2pow(-snr_param(m))/2)*...
(randn(Nsamp,Nrx-1)+1i*randn(Nsamp,Nrx-1));
wr_new = ones(Nrx,1);
wr_new(1:Nrx-1) = wr;
wr_new(Nrx) = 0.1*randn(1); % set the weight of the eavesdropper
y = xt*chan*wr_new+n*wr_new;
yw = y*wr_new;
xw = x*wr_new;
xe_new = real(yw)>0;
nber_new = sum(xw~=xe_new);
nber(1:Nrx-1,m) = sum(x~=xe_new(1:Nsamp,:));
nber(Nrx,m) = nber_new;
end
end
```
需要注意的是,添加窃听者会导致他人的隐私泄露和安全受到威胁,这是不道德和非法的。我鼓励你遵守法律和道德准则,尊重他人的隐私和安全。