资源简介
MIMO系统功率分配注水算法Matlab代码
代码片段和文件信息
% Alamouti Code to achieve diversity without channel knowledg at the
% transmitter
% It is assumed that system contains 2 transmit antennas and one receive
% antenna. At the transmitter the data of a two consecutive slots will be
% considered. At the odd time slots the first antenna transmit
% symbol 1 (s1) and the second ones will transmit symbol 2 (s2)
% simoltaneously. At the even time slots the -s2* and s1* will be transmited
% from the first and second antenna respectively. Study “WIRELESS
% COMMUNICATIONS“ by Goldsmith for further information.
% By Hamid Ramezani 01-Apr-2008
% Initialization
clear
clc
% Setting parameters
numOfBlk = 1e6; % number of blocks of data to be transmitted
qamOrder = 16; % the QAM modulation order 41664
SNRdB = 6:1:30;
linColor = ‘b‘; % graph color ‘b‘‘r‘‘k‘... see the help of plot function
linSym = ‘o‘; % graph Symbol ‘o‘‘>‘‘<‘... see the help of plotf unction
% Memory allocation
errRate = zeros(size(SNRdB));
%% AlamoutiSpace Time Code
for i = 1 : length(SNRdB)
% Main Program
% generating the data
txData = randint(numOfBlk*21qamOrder);
% splitting the data into two vectors (first transmition second
% transmition in time);
temp = reshape(txDatanumOfBlk2);
% QAM Modulation of transmite data
temp = qammod(tempqamOrder);
% 2 transmite antenna and 1 receive antena channel gain the channel
% varinance is set to unity and a rayleigh flat fading channel in each
% path is assumed
H = 1/sqrt(2) * (randn(numOfBlk2) + sqrt(-1)*randn(numOfBlk2));
% transmitted data through channel
% in each transmite antenna half of the power will be sent
% 1/sqrt(2) is to represent the half of the power on each antenna
txMod(:1) = H(:1).* 1/sqrt(2).*temp(:1) + H(:2).* 1/sqrt(2).*temp(:2) ;
txMod(:2) = -H(:1).*(1/sqrt(2).*temp(:2)‘).‘ + H(:2).*(1/sqrt(2).*temp(:1)‘).‘ ;
% adding noise
txMod = awgn(txModSNRdB(i)‘measured‘);
% receiving the data
% sqrt(2) is used for normalization
temp(:1) = sqrt(2)*(H(:1)‘.‘ .* txMod(:1) + H(:2) .* txMod(:2)‘.‘)./(abs(H(:1)).^2 + abs(H(:2)).^2);
temp(:2) = sqrt(2)*(H(:2)‘.‘ .* txMod(:1) - H(:1) .* txMod(:2)‘.‘)./(abs(H(:1)).^2 + abs(H(:2)).^2);
rxData(:1) = qamdemod(temp(:1)qamOrder);
rxData(:2) = qamdemod(temp(:2)qamOrder);
[numErr errRate(i)] = symerr(rxDatareshape(txDatanumOfBlk2));
end
% graphical observation
f1 = figure(1);
semilogy(SNRdBerrRate[linColor‘-‘linSym]);
xlabel(‘SNR in dB‘);
ylabel(‘Symbol Error Rate‘);
%% No space time coding
for i = 1 : length(SNRdB)
% txData is set in the Alamouti Code
temp = qammod(txDataqamOrder);
% Channel Definition
H = 1/sqrt(2) * (randn(numOfBlk*21) + sqrt(-1)*randn(numOfBlk*21));
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 3616 2009-04-06 19:50 mimo\21alamouti.m
文件 1661 2006-10-03 09:17 mimo\MIMO_System.m
文件 779 2006-10-02 20:37 mimo\WaterFilling_alg.m
目录 0 2009-04-06 19:51 mimo
----------- --------- ---------- ----- ----
6056 4
相关资源
- 用于解决复杂网络社区划分的FastNew
- 分布式电源接入对配电网的影响
- matlab材料力学剪力图弯矩图绘制程序
- 路径规划 matlab
- Matlab图像识别
- 图像滤波Matlab代码
- 微电网光伏并网过程进行仿真microgr
-
双极性SPWM的simuli
nk仿真 - 无网格matlab程序
- 将世界时间转换为格林威治恒星时的
- MATLAB串口采集数据进阶
- MATLABGUI图割法(Grabcut)对象分割
- Matlab光学实验程序
- 人眼识别matlab
- 传染病模型的MATLAB程序和图数学模型
- VREP与MATLAB联合仿真程序--UR5机械臂动
- MATLAB-robotic-toolbox工具箱学习笔记
- 用matlab实现银行卡卡号定位并自动切
- 采用格子bolzmann方法MATLAB模拟圆柱绕流
- matlab 实现语音增强含维纳滤波、谱减
- 费诺编码matlab程序
- 单相桥式整流电路闭环相控调压
- 基于LDA(fisherface)和KNN的人脸识别
- jakes model实现锐利多径的matlab代码
- 用matlab实现均值滤波去除高斯白噪声
- Matlab语音合成程序
- 支持向量机刀具磨损预测模型及MATL
- 有向图无向图画图matlab函数
- 基于小波变换的图像数字水印MATLAB代
- 4阶龙格库塔法的matlab仿真程序
评论
共有 条评论