亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? measurement2.m

?? 基于OFDM的無線寬帶系統仿真It contains mainly two parts, i.e. link-level simulator and system-level simulator.
?? M
字號:
function [cnt_meas,st_measurement,st_mobileStations] = measurement2(cnt_meas,st_channelGrid,st_measurement,st_baseStation,st_mobileStations,st_initConfig)% This function will measure the signal to interference plus noise ratio at% each OFDM symbol at each sub carrier for each mobile at each location,% for as many frames as being simulated.% Then will find the Frame in error or not and will record it% It will also store the allocated modulation and FEC rate% It will also store the Feedback SINR to be used in the next round of% frame transmissiong_lin = st_channelGrid.g_lin;sub_chan_alloc_chart(1:st_baseStation.nuSubChannels)=st_baseStation.allocation(1:st_baseStation.nuSubChannels,1,1);for lp_nmob=1:st_initConfig.nuMob    % find the subchannels allocated to the current mobile handle index    sub_chan_allocated = find(sub_chan_alloc_chart==lp_nmob); %    sub_carrs_allocated=[];    for lp_num_sub_chan_alloc=sub_chan_allocated        sub_carrs_allocated = [sub_carrs_allocated (lp_num_sub_chan_alloc-1)*st_baseStation.nuSubCarrPerSubChan+1:lp_num_sub_chan_alloc*st_baseStation.nuSubCarrPerSubChan]; %    end    num_sub_carr_alloc=length(sub_carrs_allocated);    gain_ctf = nan(st_initConfig.nuSubCarr,st_initConfig.nuOfdmSymbPerSubFrame,st_initConfig.nuBs,st_initConfig.nuAntennaBS,st_initConfig.nuAntennaMS);    for lp_nBs = 1:st_initConfig.nuBs        for lp_nTxAntenna=1:st_initConfig.nuAntennaBS            for lp_nRxAntenna=1:st_initConfig.nuAntennaMS                index1 = st_mobileStations(lp_nmob).ch_idx(lp_nBs,lp_nTxAntenna,lp_nRxAntenna)+st_mobileStations(lp_nmob).ch_step(lp_nBs,lp_nTxAntenna,lp_nRxAntenna)*st_initConfig.feedBackDelayIntervalNuOfdms;                gain_ctf(:,:,lp_nBs,lp_nTxAntenna,lp_nRxAntenna) = g_lin(lp_nmob,lp_nBs)*st_channelGrid.gain_ch(st_initConfig.sub_cars,index1:st_mobileStations(lp_nmob).ch_step(lp_nBs,lp_nTxAntenna,lp_nRxAntenna):index1+st_mobileStations(lp_nmob).ch_step(lp_nBs,lp_nTxAntenna,lp_nRxAntenna)*(st_initConfig.nuOfdmSymbPerSubFrame-1));                tmp = st_mobileStations(lp_nmob).ch_idx(lp_nBs,lp_nTxAntenna,lp_nRxAntenna) +  st_mobileStations(lp_nmob).ch_step(lp_nBs,lp_nTxAntenna,lp_nRxAntenna)*(st_initConfig.nuOfdmSymbPerSubFrame -1);                if tmp > st_initConfig.chnums_max,                                        tmp = tmp- (st_initConfig.chnums_max - st_initConfig.chnums_min);                elseif tmp <=st_initConfig.chnums_min                    tmp = tmp+ (st_initConfig.chnums_max - st_initConfig.chnums_min);                end                st_mobileStations(lp_nmob).ch_idx(lp_nBs,lp_nTxAntenna,lp_nRxAntenna) = tmp;                                end        end    end    sinr = sum(gain_ctf(st_initConfig.sub_cars,:,st_initConfig.desiredBsIdx,1,:)./(sum(gain_ctf(st_initConfig.sub_cars,:,st_initConfig.intfBsIdxvector,1,:),3) + st_initConfig.noisePowerPerSubc/st_initConfig.maxPowBsSubCarr),5);    sinrChErr = sinr + sqrt(10^(1/10))*randn(size(sinr)); % 1dB error    sinrChErr(sinrChErr<0) = 1e-10;    for lp_all_subChan=1:st_baseStation.nuSubChannels        st_mobileStations(lp_nmob).sinrFeedBack(lp_all_subChan) ...            = mean(sinrChErr((lp_all_subChan-1)*st_baseStation.nuSubCarrPerSubChan+1:lp_all_subChan*st_baseStation.nuSubCarrPerSubChan,st_initConfig.nuOfdmSymbPerSubFrame-st_initConfig.feedBackDelayIntervalNuOfdms));        st_mobileStations(lp_nmob).sinrFeedBackNoChErr(lp_all_subChan) ...            = mean(sinr((lp_all_subChan-1)*st_baseStation.nuSubCarrPerSubChan+1:lp_all_subChan*st_baseStation.nuSubCarrPerSubChan,st_initConfig.nuOfdmSymbPerSubFrame-st_initConfig.feedBackDelayIntervalNuOfdms));    end    % LOOK UP THE SNR VS FER TABLE    cnt_lp_sub_chan=0;    total_bits_sent_by_mobile_in_this_frame=0;    tmp_Thpt = zeros(1,length(sub_chan_allocated));    for lp_nuSubChannels=sub_chan_allocated%1:num_sub_carr_alloc %sub_carrs_allocated        cnt_lp_sub_chan=cnt_lp_sub_chan+1;        curr_sinr = st_baseStation.poweradjust((lp_nuSubChannels),1,1) * mean(mean(sinr(sub_carrs_allocated( (cnt_lp_sub_chan-1)*st_baseStation.nuSubCarrPerSubChan+1:(cnt_lp_sub_chan)*st_baseStation.nuSubCarrPerSubChan),: )));        % READ UP ERROR PROBABILITY from the appropriate table for the rate        %SNR in dB qpsk1by3  qpsk1by2  qpsk2by3  qam161by3 qam161by2 qam162by3 qam641by3 qam641by2 qam642by3 0        switch st_baseStation.mod(lp_nuSubChannels,1,1);            case    0                colidx=11;%7;            case    2                switch st_baseStation.fec(lp_nuSubChannels,1,1);                    case    1/3                        colidx=2;%3;                    case    1/2                        colidx=3;%4;                    case    2/3                        colidx=4;                end            case    4                switch st_baseStation.fec(lp_nuSubChannels,1,1);                    case    1/3                        colidx=5;                    case    1/2                        colidx=6;                    case    2/3                        colidx=7;                end            case    6                switch st_baseStation.fec(lp_nuSubChannels,1,1);                    case    1/3                        colidx=8;                    case    1/2                        colidx=9;                    case    2/3                        colidx=10;                end        end        % FIND THE ROW INDEX FROM WHERE TO READ THE FER VALUE        Idx1 = max(find(st_initConfig.FerLin<=curr_sinr));        Idx2 = min(find(st_initConfig.FerLin>=curr_sinr));        Fer1 = st_initConfig.FerdB(Idx1,colidx); %LOOK UP THE FER TABLE TO FIND THE FER        Fer2 = st_initConfig.FerdB(Idx2,colidx);        Fer = mean([Fer1 Fer2]);        % 1 means the frame is in error        % 0 means frame not in error        % TRY A DICE TO FIND WHETHER THIS FRAME IS IN ERROR        % STORE THIS RESULT AS BELOW        % STORE THE FRAME BEING IN ERROR OR NOT IN AN ARRAY FOR EACH POSITION        % OF THE MOBILE        randnum=rand;        %       st_mobileStations(lp_nmob).FrminError(st_initConfig.nFrmCntSlot,lp_nuSubChannels)=(randnum <= Fer);        % Frame is in error or not ?        save_UserInforCnt = mod(st_initConfig.nFrmCnt-1,st_initConfig.saveUserInfo_factor) + 1;        st_measurement.FrminError(lp_nuSubChannels,save_UserInforCnt)=uint8(randnum <= Fer);        %         if colidx == 12 % if there is no modulation and coding        %         else        st_measurement.totalFramesinError=st_measurement.totalFramesinError+uint32(st_measurement.FrminError(lp_nuSubChannels,save_UserInforCnt));        %         end        %         st_measurement.totalFramesinError=st_measurement.totalFramesinError+st_mobileStations(lp_nmob).<(st_initConfig.nFrmCntSlot,lp_nuSubChannels);        % CHECK IF THE REMAINING FILE SIZE IS POSITIVE THEN ONLY IT MAKES        % SENSE TO CALCULATE THE FRAME (0.5MS) BEING IN ERROR OR NOT AND        % THE ASSOCIATED SUCCESSFUL BITS SENT ETC....        % update the number of bits to be sent in the next frame        nuBitsInFrame = floor(st_mobileStations(lp_nmob).mod(1,1,lp_nuSubChannels)*st_mobileStations(lp_nmob).fec(1,1,lp_nuSubChannels)*st_baseStation.nuSubCarrPerSubChan*st_initConfig.nuOfdmSymbPerSubFrame);        if ((st_measurement.FrminError(lp_nuSubChannels,save_UserInforCnt))==uint8(1)) % if the frame is in Error        else            total_bits_sent_by_mobile_in_this_frame=total_bits_sent_by_mobile_in_this_frame+nuBitsInFrame;        end        tmp_Thpt(lp_nuSubChannels) = (1-Fer)*nuBitsInFrame;    end    st_mobileStations(lp_nmob).Thpt=sum(tmp_Thpt);    st_measurement.totalBitsSent=st_measurement.totalBitsSent+total_bits_sent_by_mobile_in_this_frame;    st_mobileStations(lp_nmob).RemFileSz(mod(st_initConfig.nFrmCntSlot,st_initConfig.nuFrmPerSlot)+1)=st_mobileStations(lp_nmob).RemFileSz(st_initConfig.nFrmCntSlot)-total_bits_sent_by_mobile_in_this_frame;    if st_baseStation.scheduler_Algo >=4        average_window = min(st_baseStation.tcNuSubFrames,st_mobileStations(lp_nmob).MobActiveCnt);%+1);        %st_mobileStations(lp_nmob).ThptAvgPast =  st_mobileStations(lp_nmob).ThptAvgPast*(1-1/average_window) + total_bits_sent_by_mobile_in_this_frame/((st_initConfig.nFrmCnt*st_initConfig.subFramePeriod))/average_window;        st_mobileStations(lp_nmob).ThptAvgPast =  st_mobileStations(lp_nmob).ThptAvgPast*(1-1/average_window) + total_bits_sent_by_mobile_in_this_frame/((st_initConfig.subFramePeriod))/average_window;        st_mobileStations(lp_nmob).fair = st_mobileStations(lp_nmob).ThptAvgPast/st_mobileStations(lp_nmob).targetUEthpt + 1e-6;    endend

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜电影一区二区三区| 国产福利91精品一区二区三区| 91精品国产美女浴室洗澡无遮挡| zzijzzij亚洲日本少妇熟睡| 色欲综合视频天天天| 国内精品久久久久影院薰衣草| 天堂蜜桃91精品| 日本在线不卡视频一二三区| 同产精品九九九| 午夜亚洲福利老司机| 日韩中文欧美在线| 免播放器亚洲一区| 国产盗摄一区二区三区| 成人午夜在线视频| 在线看日本不卡| 亚洲欧洲韩国日本视频| 精品sm在线观看| 久久精品综合网| 国产精品理论片在线观看| 综合色天天鬼久久鬼色| 亚洲一区免费视频| 国产精品无遮挡| 亚洲欧美一区二区三区孕妇| 国产精品一区二区三区四区| 51久久夜色精品国产麻豆| 一区二区在线免费| 国产河南妇女毛片精品久久久| 日韩欧美国产三级电影视频| 午夜精品一区二区三区三上悠亚| 色天天综合久久久久综合片| 亚洲日穴在线视频| 成人精品一区二区三区四区| 亚洲国产岛国毛片在线| 国产精品一区二区91| 欧美精品一区男女天堂| 韩国av一区二区三区四区| 欧美一区二区三区性视频| 日韩精彩视频在线观看| 欧美精品乱码久久久久久按摩| 亚洲高清视频在线| 欧美日韩综合一区| 亚洲高清视频在线| 91精品免费观看| 久久精品国产久精国产爱| 亚洲六月丁香色婷婷综合久久| 国产成人免费视频一区| 国产精品系列在线| 99久久精品情趣| 一区二区高清视频在线观看| 欧美日韩国产综合视频在线观看| 亚洲 欧美综合在线网络| 91精品久久久久久久久99蜜臂| 男女视频一区二区| 久久亚洲捆绑美女| jvid福利写真一区二区三区| 一区二区三区精品在线| 欧美精选一区二区| 黄一区二区三区| 亚洲欧美日韩久久| 欧美精品在线观看播放| 精品一区二区免费| 国产精品高潮呻吟久久| 亚洲第一电影网| 在线观看日韩一区| 美女看a上一区| 国产精品伦一区| 欧美日韩久久久一区| 老司机精品视频导航| 中文在线资源观看网站视频免费不卡| 一本大道av一区二区在线播放| 亚洲国产视频一区二区| 久久婷婷色综合| 欧美伊人久久久久久久久影院| 久久精品国产网站| 亚洲蜜臀av乱码久久精品| 欧美一级夜夜爽| heyzo一本久久综合| 日本成人在线电影网| 欧美国产精品劲爆| 91精品在线一区二区| av资源网一区| 久国产精品韩国三级视频| 亚洲综合男人的天堂| 久久精品人人做人人爽人人| 欧美精品一卡两卡| 色综合天天综合| 国产91精品免费| 免费av成人在线| 亚洲sss视频在线视频| 国产婷婷色一区二区三区四区| 在线成人免费视频| 99精品在线观看视频| 国产毛片一区二区| 日本欧美韩国一区三区| 亚洲精品高清在线| 中文字幕在线不卡一区| 欧美精品一区二区三区蜜桃| 欧美日韩一区二区三区免费看| 成人18视频在线播放| 国产麻豆精品视频| 久久99久久精品| 日韩极品在线观看| 亚洲成人免费在线| 一区av在线播放| 亚洲精品亚洲人成人网 | 国产人成一区二区三区影院| 欧美日韩激情一区| 91官网在线观看| 在线观看国产一区二区| 91丨porny丨在线| 91亚洲大成网污www| 成人国产视频在线观看| 成人免费毛片app| 国产成人夜色高潮福利影视| 激情综合色丁香一区二区| 久久99热这里只有精品| 蜜桃精品视频在线观看| 久久精品理论片| 久久99精品国产| 国产精品91一区二区| 国产成人欧美日韩在线电影| 丰满亚洲少妇av| 波多野结衣在线aⅴ中文字幕不卡 波多野结衣在线一区 | 欧美午夜免费电影| 欧美日韩亚洲丝袜制服| 91精品婷婷国产综合久久 | 欧美性一级生活| 欧美日韩国产美| 宅男噜噜噜66一区二区66| 欧美一区二区三区不卡| 2021中文字幕一区亚洲| 国产欧美一区二区三区在线看蜜臀| 国产欧美综合在线观看第十页| 中文字幕第一区二区| 最新中文字幕一区二区三区| 夜夜爽夜夜爽精品视频| 日本亚洲最大的色成网站www| 麻豆精品一区二区综合av| 国产麻豆欧美日韩一区| 99久久综合狠狠综合久久| 欧美伊人久久大香线蕉综合69| 欧美二区在线观看| 国产日韩欧美精品综合| 亚洲美女少妇撒尿| 青青草原综合久久大伊人精品 | 久久青草国产手机看片福利盒子| 国产三级精品三级在线专区| 亚洲伦理在线精品| 视频一区中文字幕| 国产成人8x视频一区二区| 在线免费观看日本一区| 精品国产人成亚洲区| 亚洲欧美日本在线| 免费的国产精品| 97精品久久久午夜一区二区三区| 欧美美女一区二区在线观看| 久久久国产综合精品女国产盗摄| 中文字幕人成不卡一区| 日本在线观看不卡视频| youjizz国产精品| 日韩一区二区在线观看视频播放| 国产精品污网站| 免费在线观看一区二区三区| 91伊人久久大香线蕉| 欧美一卡二卡三卡四卡| 亚洲精品你懂的| 国产毛片精品视频| 91麻豆精品国产| 亚洲精品久久嫩草网站秘色| 国产精品乡下勾搭老头1| 欧美日韩亚洲综合一区二区三区| 中文在线免费一区三区高中清不卡| 丝袜美腿亚洲一区二区图片| 99vv1com这只有精品| 久久久久国产精品麻豆| 五月激情综合色| 欧洲一区在线观看| 亚洲欧美色图小说| 国产九九视频一区二区三区| 91精品国产综合久久精品app| 中文字幕五月欧美| 国产91精品在线观看| 精品国产3级a| 麻豆视频一区二区| 日韩一级免费一区| 日韩高清在线一区| 欧美日本一区二区三区四区 | 国产精品久久久久一区二区三区共 | 日欧美一区二区| 欧美天堂亚洲电影院在线播放| 成人免费一区二区三区在线观看| 国产一区福利在线| 日韩精品一区二区三区在线播放| 视频在线观看一区二区三区| 欧美在线一区二区| 亚洲国产人成综合网站| 欧美最新大片在线看| 一区二区三国产精华液| 在线观看亚洲精品| 五月天激情小说综合|