返回信息流下面我会贴代码的。
简要说下我的问题。
我里面有2000个循环,我需要提取powerfading这个数的值,他在每次循环的值不一样,我想着2000次都记录下来。但是最后workspace都是只显示一个值。拜托大牛看看我该怎么改能让他记录下来呢,不然我用断点一个一个记录实在是太累了!!
代码:
clear
close
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 系统参数 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dSimulationTime = 2000; % 仿真TTI数
nNumOfRuns = 1; % 撒点次数
nTotalNumofUser = 300; % 系统内总用户数
dwMsTransmitPower = 0.25; % 移动台发送功率 W
ddBmThermalNoise = -174; % 热噪声指数 dBm/Hz
dUserVelocity = 120; % 用户移动速度 km/h
dBER_Target = 10^(-6); % 目标误比特率
dSNR_gap = -log(5*dBER_Target)/1.5; % Tao 信噪比要求
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dKmCellRadius = struct('LTE',[1],... % 定义三个小区的小区半径
'WL',[0.5]);
dKmMinDistance = struct('LTE',[0.035],... % 用户和基站间的最小距离 km
'WL',[0.036]);
dwBsTransmitPower = struct('LTE',[40],... % 基站总发送功率 W
'WL',[20]);
%%%dB-W 乘以 时间=吞吐量
ddBBsNoisefigure = struct('LTE',[5],... % 基站噪声指数 dB
'WL',[4]);
ddBUENoisefigure = struct('LTE',[9],... % 移动台噪声指数 dB
'WL',[7]);
dMHzBandWidth = struct('LTE',[10],... % 系统带宽 MHz
'WL',[10]);
dMHzCarrierFrequency = struct('LTE',[2000],... % 载波频率 MHz
'WL',[2500]);
%%% LTE频率有三个 可选择 900MHZ,2000MHZ,2.5GHZ
dHzSubcarrierBandWidth = struct('LTE',[15000],... % 子载波带宽 Hz
'WL',[10938]);
dLenthofSubframe = struct('LTE',[0.001],... % 子帧时长 s
'WL',[0.005]);
nNumofSubcarrier = struct('LTE',[600],... % 子载波数
'WL',[840]);
nNumofSubchannel = struct('LTE',[24],... % 子信道数
'WL',[30]);
nNumofSubcarrierPerSubchannel = struct('LTE',[nNumofSubcarrier.LTE/nNumofSubchannel.LTE],... % 每个子信道上的子载波数
'WL',[nNumofSubcarrier.WL/nNumofSubchannel.WL]);
dwPerSubchannelWhiteNoise = struct('LTE',[10^((ddBmThermalNoise-30)/10)*dHzSubcarrierBandWidth.LTE*nNumofSubcarrier.LTE/nNumofSubchannel.LTE],... % 每个子信道上的白噪声 W
'WL',[10^((ddBmThermalNoise-30)/10)*dHzSubcarrierBandWidth.WL*nNumofSubcarrier.WL/nNumofSubchannel.WL]);
%%%%%%%%%%%%%%%%%%%%%%% OFDM参数 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dsTTILength = dLenthofSubframe.LTE; % 一个TTI的长度
nFFTSize = 1024; % FFT大小
%%%%%%%%%%%%%%%%%%%%% 信道、位置参数 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
ddBShadowFadingStd = 8; % 阴影衰落标准差 dB
dShadowFadowCorrelation = 0.5; % 阴影衰落相关系数
ddBTransmitAntennaGain = 15; % 全向天线发送天线增益 dB
ddBReceiveAntennaGain = -1; % 接受天线增益 dB
ddBPenetrationLoss = struct('LTE',[20],... % 穿透损耗 dB
'WL',[10]);
dUEPosition = zeros(1,nTotalNumofUser); % 定义用户位置坐标
CellPosition = struct('LTE',[0],... % 定义三个小区的基站坐标
'WL',[0]);
LargeScaleFading = struct( 'PathLoss',repmat([0],2,nTotalNumofUser),... % 大尺度衰落
'ShadowFading',repmat([0],2,nTotalNumofUser),...
'AntennaGain',repmat([0],2,nTotalNumofUser),...
'TotalPathLossIndB',repmat([0],2,nTotalNumofUser),...
'TotalPathLoss',repmat([0],2,nTotalNumofUser),...
'Distance',repmat([0],2,nTotalNumofUser));
%%%%%%%%%%%%%%%%%%%%%% CQI相关 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LargeScaleCQI=struct('LTE',zeros(1,nTotalNumofUser),...
'WL',zeros(1,nTotalNumofUser));
FastFadingCQI=struct('LTE',zeros(nTotalNumofUser,nNumofSubchannel.LTE),...
'WL',zeros(nTotalNumofUser,nNumofSubchannel.WL));
RSS=struct('LTE',zeros(1,nTotalNumofUser),...
'WL',zeros(1,nTotalNumofUser));
%%%%%%%%%%%%%%%%%%%%%% 切换相关参数(需要补充) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
ServingSys=1.*ones(1,nTotalNumofUser); % 1 LTE;2 WL;
AvrgThroughput=struct('LTE',[0],...
'WL',[0]);
AvrgPktDelay=struct('LTE',[0],...
'WL',[0]);
PowerFading=struct('LTE',[0],...
'WL',[0]);
User=struct('LTE',[0],...
'WL',[0]);
servPrice=struct('LTE',[0.8],...
'WL',[0.05]);
NumberOfHandover=zeros(1,nTotalNumofUser);
RSS=struct('LTE',zeros(1,nTotalNumofUser),...
'WL',zeros(1,nTotalNumofUser));
%%%%%%%%%%%%%%%%%%%%%% 调度相关参数 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
nLTEBSScheduler=struct( 'dwChannelPowerAllcation',repmat([0],1,nNumofSubchannel.LTE),...
'dChannelAllocation',repmat([0],1,nNumofSubchannel.LTE)...
);
nWLBSScheduler=struct( 'dwChannelPowerAllcation',repmat([0],1,nNumofSubchannel.WL),...
'dChannelAllocation',repmat([0],1,nNumofSubchannel.WL)...
);
nLTEUEScheduler=struct( 'dCostfunction',repmat([0],nTotalNumofUser,nNumofSubchannel.LTE),...
'dInstantThroughput',repmat([0],1,nTotalNumofUser),...
'dAverageThroughput',repmat([1],1,nTotalNumofUser),...
'dTotalThroughput',repmat([0],1,nTotalNumofUser),...
'dTotalThroughputInbps',repmat([0],1,nTotalNumofUser),...
'dDelta',repmat([0],1,nTotalNumofUser),...
'dHOL',repmat([0],1,nTotalNumofUser),...
'dT',repmat([0],1,nTotalNumofUser),...
'dTotalPacketDelay',repmat([0],1,nTotalNumofUser)...
);
nWLUEScheduler=struct( 'dCostfunction',repmat([0],nTotalNumofUser,nNumofSubchannel.WL),...
'dInstantThroughput',repmat([0],1,nTotalNumofUser),...
'dAverageThroughput',repmat([1],1,nTotalNumofUser),...
'dTotalThroughput',repmat([0],1,nTotalNumofUser),...
'dTotalThroughputInbps',repmat([0],1,nTotalNumofUser),...
'dDelta',repmat([0],1,nTotalNumofUser),...
'dHOL',repmat([0],1,nTotalNumofUser),...
'dT',repmat([0],1,nTotalNumofUser),...
'dTotalPacketDelay',repmat([0],1,nTotalNumofUser)...
);
%%%%%%%%%%%%%%%%%%%%%% 业务参数 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
MaxLTEBSBufferSizeInPacket = 200; % BS中每个用户数据包的最大数量
MaxWLBSBufferSizeInPacket = 400;
%%%%%%%%%%%%%%%%%%% 业务相关参数 (需要修改)%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
nTrafficBufferAtLTEBS = struct( 'CurrentBufferSizeInBit',repmat({0},1,nTotalNumofUser),...
'PacketBufferBeginIndex',repmat({0},1,nTotalNumofUser),...
'PacketBufferEndIndex',repmat({0},1,nTotalNumofUser),...
'CurrentTotalDelay',repmat({0},1,nTotalNumofUser),...
'CurrentPacketIndex',repmat({0},1,nTotalNumofUser),...
'DropedPacketNum', repmat({0},1,nTotalNumofUser),...
'TransferedPacketNum',repmat({0},1,nTotalNumofUser),...
'PacketSize',repmat({zeros(1,MaxLTEBSBufferSizeInPacket)},1,nTotalNumofUser),...
'PacketIndex',repmat({zeros(1,MaxLTEBSBufferSizeInPacket)},1,nTotalNumofUser),...
'PacketType',repmat({zeros(1,MaxLTEBSBufferSizeInPacket)},1,nTotalNumofUser),...
'PacketArrivalTime',repmat({zeros(1,MaxLTEBSBufferSizeInPacket)},1,nTotalNumofUser),...
'PacketLeaveTime',repmat({zeros(1,MaxLTEBSBufferSizeInPacket)},1,nTotalNumofUser),...
'PacketDelay',repmat({zeros(1,MaxLTEBSBufferSizeInPacket)},1,nTotalNumofUser)...
);
nTrafficBufferAtWLBS= struct( 'CurrentBufferSizeInBit',repmat({0},1,nTotalNumofUser),...
'PacketBufferBeginIndex',repmat({0},1,nTotalNumofUser),...
'PacketBufferEndIndex',repmat({0},1,nTotalNumofUser),...
'CurrentTotalDelay',repmat({0},1,nTotalNumofUser),...
'CurrentPacketIndex',repmat({0},1,nTotalNumofUser),...
'DropedPacketNum', repmat({0},1,nTotalNumofUser),...
'TransferedPacketNum',repmat({0},1,nTotalNumofUser),...
'PacketSize',repmat({zeros(1,MaxWLBSBufferSizeInPacket)},1,nTotalNumofUser),...
'PacketIndex',repmat({zeros(1,MaxWLBSBufferSizeInPacket)},1,nTotalNumofUser),...
'PacketType',repmat({zeros(1,MaxWLBSBufferSizeInPacket)},1,nTotalNumofUser),...
'PacketArrivalTime',repmat({zeros(1,MaxWLBSBufferSizeInPacket)},1,nTotalNumofUser),...
'PacketLeaveTime',repmat({zeros(1,MaxWLBSBufferSizeInPacket)},1,nTotalNumofUser),...
'PacketDelay',repmat({zeros(1,MaxWLBSBufferSizeInPacket)},1,nTotalNumofUser)...
);
nNumofTrafficClass=5
nTrafficQoSParameter=struct( 'Delta',repmat({0.01},1,nNumofTrafficClass),...
'MaxLatencyTime',repmat({3000},1,nNumofTrafficClass),...
'PLR',repmat({0},1,nNumofTrafficClass),...
'MinThroughput',repmat({0},1,nNumofTrafficClass)...
);
nVideoTrafficInLTE=struct( 'NxtFrmArvlSlot',repmat({0},1,nTotalNumofUser),...
'CurrentFrameIndex',repmat({0},1,nTotalNumofUser),...
'FrameBeginIndex',repmat({0},1,nTotalNumofUser),...
'FrameEndIndex',repmat({0},1,nTotalNumofUser),...
'NxtPcktArvlSlot',repmat({0},1,nTotalNumofUser),...
'CurrentPacketIndexInFrame',repmat({0},1,nTotalNumofUser),...
'DropedFrameNum',repmat({0},1,nTotalNumofUser),...
'TransferedFrameNum',repmat({0},1,nTotalNumofUser),...
'dueTimeSlot',repmat({zeros(1,50)},1,nTotalNumofUser),...
'FrameIndex',repmat({zeros(1,50)},1,nTotalNumofUser),...
'EndPacketIndexOfFrame',repmat({zeros(1,50)},1,nTotalNumofUser)...
);
nVideoTrafficInWL=struct( 'NxtFrmArvlSlot',repmat({0},1,nTotalNumofUser),...
'CurrentFrameIndex',repmat({0},1,nTotalNumofUser),...
'FrameBeginIndex',repmat({0},1,nTotalNumofUser),...
'FrameEndIndex',repmat({0},1,nTotalNumofUser),...
'NxtPcktArvlSlot',repmat({0},1,nTotalNumofUser),...
'CurrentPacketIndexInFrame',repmat({0},1,nTotalNumofUser),...
'DropedFrameNum',repmat({0},1,nTotalNumofUser),...
'TransferedFrameNum',repmat({0},1,nTotalNumofUser),...
'dueTimeSlot',repmat({zeros(1,50)},1,nTotalNumofUser),...
'FrameIndex',repmat({zeros(1,50)},1,nTotalNumofUser),...
'EndPacketIndexOfFrame',repmat({zeros(1,50)},1,nTotalNumofUser)...
);
nARQTransmitProcessInLTE = struct( 'PacketIndex',repmat({-1},1,nTotalNumofUser),...
'PacketSize',repmat({-1},1,nTotalNumofUser),...
'PacketArrivalTime',repmat({-1},1,nTotalNumofUser),...
'PacketLeaveTime',repmat({-1},1,nTotalNumofUser),...
'PacketDelay',repmat({-1},1,nTotalNumofUser),...
'TransmitFlag',repmat({-1},1,nTotalNumofUser)...
);
nARQTransmitProcessInWL= struct( 'PacketIndex',repmat({-1},1,nTotalNumofUser),...
'PacketSize',repmat({-1},1,nTotalNumofUser),...
'PacketArrivalTime',repmat({-1},1,nTotalNumofUser),...
'PacketLeaveTime',repmat({-1},1,nTotalNumofUser),...
'PacketDelay',repmat({-1},1,nTotalNumofUser),...
'TransmitFlag',repmat({-1},1,nTotalNumofUser)...
);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% OVER %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 读取语音数据文件 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
SCFid=fopen('SrcConfigFile_VTMix6AT','r');
SrcCnfgrFile=fscanf(SCFid,'%d',[5,171])';
fclose(SCFid);
aSFid=fopen('audio Source File.bin','r');
%NumLines=fscanf(aSFid,'%d',1);
%NumSlots=fscanf(aSFid,'%d',1);
status=fseek(aSFid,16,'bof');
nVoIPSourceFile=fscanf(aSFid,'%d',[3,58019])';
fclose(aSFid);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%业务QoS参数%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%% VoIP %%%%%%%%%%%%%%%%%%%
nTrafficQoSParameter(1).Delta=0.03;
nTrafficQoSParameter(1).MaxLatencyTime=20;
%%%%%%%%%%%%%%%%%%%% rtVideo %%%%%%%%%%%%%%%%%%%
nTrafficQoSParameter(2).Delta=0.01;
nTrafficQoSParameter(2).MaxLatencyTime=5;
%%%%%%%%%%%%%%%%%%%% nrtVideo %%%%%%%%%%%%%%%%%%%
nTrafficQoSParameter(3).Delta=0.01;
nTrafficQoSParameter(3).MaxLatencyTime=2000;
nTrafficQoSParameter(3).MinThroughput=9600;
%%%%%%%%%%%%%%%%%%%%Full Buffer%%%%%%%%%%%%%%%%%%%
nTrafficQoSParameter(4).MinThroughput=9600;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
seed = [1001,100000,100000000,2000000,1000300];
for nRun = 1:nNumOfRuns
rand('seed',seed(nRun));
randn('seed',seed(nRun));
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 初始化模块 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[CellPosition,dUEPosition,LargeScaleFading]=initialize(dwBsTransmitPower,nNumofSubchannel,CellPosition,dUEPosition,dKmCellRadius,nTotalNumofUser,LargeScaleFading,...
ddBTransmitAntennaGain,ddBReceiveAntennaGain,dShadowFadowCorrelation,ddBShadowFadingStd,ddBPenetrationLoss,dKmMinDistance);
PositionPlot(nTotalNumofUser,dUEPosition,CellPosition,dKmCellRadius);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 服务小区更新%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[ServingSys]=SSD(ServingSys,CellPosition,dUEPosition,dKmCellRadius,nTotalNumofUser,LargeScaleCQI);
%%%%%%%%%%%%%%%%%%%%%%%%%% 初始化用户移动的角度 %%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 给用户一个随机角度,之后一直按这个方向运动
nUserMoveTheta=4*pi/3*ones(1,nTotalNumofUser);
nUserMoveDirection = cos(nUserMoveTheta)+j*sin(nUserMoveTheta);
% %%%%%%%%%%%%%%%%%%%%%%%%%%取出一个用户按特定方向走%%%%%%%%%%%%%
% dUEPosition(1)=-0.8-j*1/2;
% nUserMoveDirection(1)=1;
% [ServingSys]=SSD(ServingSys,CellPosition,dUEPosition,dKmCellRadius,nTotalNumofUser,LargeScaleCQI);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%生成用户的业务类型%%%%%%%%%%%%%%%%%%%%%%
TrafficType = zeros(1,nTotalNumofUser);
TrafficType = 3*ones(1,nTotalNumofUser);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 仿真循环 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for t_index = 1:dSimulationTime
t_index
%%%%%%%%%%%%%%%%%%%%%% Position Update Module %%%%%%%%%%%%%%%%%%%%%%%%%%%
if mod(t_index,dLenthofSubframe.WL/dLenthofSubframe.LTE)==0 % 每5个tti记录一次坐标
[CellPosition,dUEPosition,LargeScaleFading]= position_update(dwBsTransmitPower,nNumofSubchannel,CellPosition,dUEPosition,dKmCellRadius,nTotalNumofUser,nUserMoveDirection,LargeScaleFading,dKmMinDistance,...
ddBTransmitAntennaGain,ddBReceiveAntennaGain,dShadowFadowCorrelation,ddBShadowFadingStd,ddBPenetrationLoss,t_index,dUserVelocity,dLenthofSubframe,dsTTILength);
Numofnetwork=2;
Network_avrgThroughput=[AvrgThroughput.LTE AvrgThroughput.WL];
Network_coverWide=[dKmCellRadius.LTE dKmCellRadius.WL];
Network_load=[User.LTE User.WL];
Network_servPrice=[servPrice.LTE servPrice.WL];
Network_powerFading=[PowerFading.LTE PowerFading.WL];
%%% 需要提取出来largeScaleFading %%%
for i=1:nTotalNumofUser
if (ServingSys(i)==1)&(abs(dUEPosition(i)-CellPosition.WL)<=dKmCellRadius.WL)
[ServingSys,NumberOfHandover]=handover(NumberOfHandover,ServingSys,i,Numofnetwork,Network_avrgThroughput,Network_coverWide,Network_load,Network_servPrice,Network_powerFading);
nARQTransmitProcessInWL(i).TransmitFlag=-1;
else
if (ServingSys(i)==2)&(abs(dUEPosition(i)-CellPosition.WL)>dKmCellRadius.WL)
ServingSys(i)=1;
nARQTransmitProcessInLTE(i).TransmitFlag=-1;
end
end
end
end
totalNumberOfHandover=0;
for i=1:nTotalNumofUser
totalNumberOfHandover= totalNumberOfHandover+NumberOfHandover(i);
end
%%%%%%%%%%%%%%%%%%%%%%Traffic Module (需要修改)%%%%%%%%%%%%%%%%%%%%%%%%%
[nTrafficBufferAtLTEBS,nTrafficBufferAtWLBS,nVideoTrafficInLTE,nVideoTrafficInWL]=Traffic(nTrafficBufferAtLTEBS,nTrafficBufferAtWLBS,MaxLTEBSBufferSizeInPacket,MaxWLBSBufferSizeInPacket,t_index,nVideoTrafficInLTE,nVideoTrafficInWL,SrcCnfgrFile,nVoIPSourceFile,nARQTransmitProcessInLTE,nARQTransmitProcessInWL,TrafficType,nTotalNumofUser,ServingSys);
%%%%%%%%%%%%%%%%%%%%%%Schedule Module (需要修改)%%%%%%%%%%%%%%%%%%%%%%
[nLTEUEScheduler,nWLUEScheduler,nLTEBSScheduler,nWLBSScheduler,nARQTransmitProcessInLTE,nARQTransmitProcessInWL]...
=Scheduler(nLTEUEScheduler,nWLUEScheduler,nLTEBSScheduler,nWLBSScheduler,dwBsTransmitPower,nARQTransmitProcessInLTE,nARQTransmitProcessInWL,dsTTILength,...
nTrafficBufferAtLTEBS,nTrafficBufferAtWLBS,t_index,nTotalNumofUser,dSimulationTime,ServingSys,nNumofSubchannel,dLenthofSubframe,nNumofSubcarrier,FastFadingCQI,dSNR_gap,dHzSubcarrierBandWidth);
%%%%%%%%%%%%%%%%%%%%%%Update Module%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[nTrafficBufferAtLTEBS,nTrafficBufferAtWLBS]=LastUpdate(dLenthofSubframe,nTrafficBufferAtLTEBS,nTrafficBufferAtWLBS,MaxLTEBSBufferSizeInPacket,MaxWLBSBufferSizeInPacket,t_index,nARQTransmitProcessInLTE,nARQTransmitProcessInWL,nTotalNumofUser,ServingSys);
%%%%%%%%%%%%%%%%%%%%%%网络参数统计%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
User.LTE=0;
User.WL=0;
AvrgThroughput.LTE=0;
AvrgThroughput.WL=0;
AvrgPktDelay.LTE=0;
AvrgPktDelay.WL=0;
PowerFading.LTE=0;
PowerFading.WL=0;
for i=1:nTotalNumofUser
if ServingSys(i)==1
User.LTE=User.LTE+1;
end
if ServingSys(i)==2
User.WL=User.WL+1;
end
end
for i=1:nTotalNumofUser
if ServingSys(i)==1
TotalPacketNumInLTE(i)=nTrafficBufferAtLTEBS(i).TransferedPacketNum+nTrafficBufferAtLTEBS(i).DropedPacketNum;
if TotalPacketNumInLTE(i)~=0
AvrgPktDelay.LTE=AvrgPktDelay.LTE+(nTrafficBufferAtLTEBS(i).CurrentTotalDelay/TotalPacketNumInLTE(i));
AvrgThroughput.LTE=AvrgThroughput.LTE+nLTEUEScheduler.dTotalThroughputInbps(i);
end
else
TotalPacketNumInWL(i)=nTrafficBufferAtWLBS(i).TransferedPacketNum+nTrafficBufferAtWLBS(i).DropedPacketNum;
if TotalPacketNumInWL(i)~=0
AvrgPktDelay.WL=AvrgPktDelay.WL+(nTrafficBufferAtWLBS(i).CurrentTotalDelay/TotalPacketNumInWL(i));
AvrgThroughput.WL=AvrgThroughput.WL+nWLUEScheduler.dTotalThroughputInbps(i);
end
end
end
AvrgThroughput.LTE=AvrgThroughput.LTE/User.LTE;
AvrgThroughput.WL=AvrgThroughput.WL/User.WL;
%%% dwBsTransmitPower.LTE=10^(dwBsTransmitPower.LTE/10);
%%% dwBsTransmitPower.WL=10^(dwBsTransmitPower.WL/10);
PowerFading.LTE= dwBsTransmitPower.LTE*(User.LTE/(User.LTE+User.WL))+PowerFading.LTE;
PowerFading.WL=dwBsTransmitPower.WL*(User.WL/(User.LTE+User.WL))*PowerFading.WL;
%%%%%%%%%%%%%%%%%%%%%%% CQI Feedback Module %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[LargeScaleCQI,FastFadingCQI,RSS]=CQIReport(RSS,LargeScaleCQI,FastFadingCQI,dwBsTransmitPower,nNumofSubchannel,nNumofSubcarrier,nTotalNumofUser,...
dwPerSubchannelWhiteNoise,ddBUENoisefigure,LargeScaleFading,nFFTSize,t_index,dUserVelocity,dHzSubcarrierBandWidth,dsTTILength,dLenthofSubframe);
end
end
这是一条镜像帖。来源:北邮人论坛 / matlab / #8177同步于 2011/5/13
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Matlab机器人发帖
急!拜托各位了!怎么能让我免去上万次的手动记录,直接让他在w
gatekeeper
2011/5/13镜像同步1 回复
订阅后,新回复会通过你的通知中心匿名送达。
1 条回复