zoukankan      html  css  js  c++  java
  • CCS

    Three different detectors for recovering the transmitted data symbols and
    evaluate their performance for Rayleigh fading and additive white Gaussian noise.

     

    Matlab coding

    Implement the three types of detectors.

    Nt = 2;                                                                             % No. of transmit antennas
    Nr = 2;                                                                             % No. of receive antennas
    S = [1 1 -1 -1; 1 -1 1 -1];                                                  % Reference codebook
    H = (randn(Nr,Nt) + 1i*randn(Nr,Nt))/sqrt(2); % Channel coefficients
    s = 2*randi([0 1],Nt,1) - 1;                                               % Binary transmitted symbols
    No = 0.1;                                                                         % Noise Noiance
    noise = sqrt(No/2)*(randn(Nr,1) + 1i*randn(Nr,1));         % AWGN noise
    y = H*s + noise;                                                              % Inputs to the detectors
    disp(['The transmitted symbols are: ',num2str(s')])

    % Maximum Likelihood Detector:
    mu = zeros(1,4);
    for i = 1:4
      mu(i) = sum(abs(y - H*S(:,i)).^2);                           % Euclidean distance metric
    end
    [Min idx] = min(mu);
    s_h = S(:,idx);
    disp(['The detected symbols using the ML method are: ',num2str(s_h')])

    % MMSE Detector:
    w1 = (H*H' + No*eye(2))^(-1) * H(:,1); % Optimum weight vector 1
    w2 = (H*H' + No*eye(2))^(-1) * H(:,2); % Optimum weight vector 2
    W = [w1 w2];
    s_h = W'*y;
    for i = 1:Nt
      if s_h(i) >= 0
        s_h(i) = 1;
      else
        s_h(i) = -1;
      end
    end
    disp(['The detected symbols using the MMSE method are: ',num2str(s_h')])

    % Inverse Channel Detector:
    s_h = Hy;
    for i = 1:Nt
      if s_h(i) >= 0
        s_h(i) = 1;
      else
        s_h(i) = -1;
      end
    end
    disp(['The detected symbols using the ICD method are: ',num2str(s_h')])

    Output,

    >> Round 1
    The transmitted symbols are: 1 1
    The detected symbols using the ML method are: 1 1
    The detected symbols using the MMSE method are: 1 1
    The detected symbols using the ICD method are: 1 1
    >> Round 2
    The transmitted symbols are: 1 -1
    The detected symbols using the ML method are: 1 -1
    The detected symbols using the MMSE method are: 1 -1
    The detected symbols using the ICD method are: 1 -1
    >> Round 3
    The transmitted symbols are: -1 1
    The detected symbols using the ML method are: -1 1
    The detected symbols using the MMSE method are: -1 1
    The detected symbols using the ICD method are: -1 1

    Reference,

      1. <<Contemporary Communication System using MATLAB>> - John G. Proakis

  • 相关阅读:
    Day 29 作业/服务端实现接收客户端的连接并发
    Day 28 操作系统发展/进程
    Day 27 作业(FTP)
    Day 27 subprocess模块/粘包问题以及解决/UDP协议/socketserver
    Day 26 作业
    Day 26 互联网协议/Socket套接字
    Day 22 绑定方法和非绑定方法/isinstance/issubclass/反射/魔法方法/单例模式
    Day 21 作业
    Day 21 组合/封装/property特性/多态和多态性/抽象类/鸭子类型
    day 20 作业
  • 原文地址:https://www.cnblogs.com/zzyzz/p/13580204.html
Copyright © 2011-2022 走看看