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

  • 相关阅读:
    MyCat 概念与配置
    使用zookeeper管理远程MyCat配置文件、MyCat监控、MyCat数据迁移(扩容)
    数据库分库分表中间件MyCat的安装和mycat配置详解
    搭建dubbo+zookeeper+dubboadmin分布式服务框架(windows平台下)
    数据库分库分表的类型和特点
    数据库为什么要分库分表
    正确安装MySQL5.7 解压缩版(手动配置)方法
    SQL 查询相同记录下日期最大的一条数据
    HashMap在Jdk1.7和1.8中的实现
    Spring Bean的生命周期
  • 原文地址:https://www.cnblogs.com/zzyzz/p/13580204.html
Copyright © 2011-2022 走看看