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

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

?? rayleigh_doppler_multipath.m

?? 瑞利信道仿真程序
?? M
字號:
function y = Rayleigh_Doppler_multiPath(fc,v,startT,endT,deltaT,fchip,delayTime,averagePower)
%He jian, 2005.3
%產生multipath Rayleigh分布(Doppler Shift),基于Clarke模型
%return 復變量

%fc=2000;%載頻(MHz)
%v=50;%絕對時速(km/h)
% startT,endT(s):分別表示信道仿真的開始時間、終止時間,通常startT=0,endT=1s,
% deltaT(ms):時間間隔,通常deltaT=1ms
%fchip=1.28;%chip速率(Mchip/s)
%delayTime=[0,781,1563,2344];%ns(10^-9s)
%averagePower=[0,-3,-6,-9];%dB

%method_flag = 3; %1,按ns delay,運算量大(目前不考慮該方法!)
                  %2,按chip delay,運算量較大,在path delay不是chip時間整數倍時有誤差
                  %3,直接在抽樣上delay,運算量小
if(fchip~=0)
	method_flag = 2;
else
	method_flag = 3;
end

if (method_flag==1)
	method_flag_str = '第1種方法,按ns delay';
elseif (method_flag==2)
	method_flag_str = '第2種方法,按chip delay';
elseif (method_flag==3)
	method_flag_str = '第3種方法,在抽樣上delay';
else
end

%tic;%Start timer of the simulation

averagePower=10.^(averagePower/10);
averagePower=averagePower/sum(averagePower);%將信道做歸一化!

%get number of all paths
Np=length(delayTime);%delayTime與averagePower維數必須一致

if (method_flag==1)%對Np條徑進行delay,1st method:按ns delay,運算量大
elseif (method_flag==2)%對Np條徑進行delay,2nd method:按chip delay,運算量小,在path delay不是chip時間整數倍時有誤差
	Tchip=1/(fchip*10^6);%一個chip占用時間(s)
	%將延時折算成延chip!!
	delayChip=round(delayTime*10^-9/Tchip)
	%get Np rayleigh path,deltaT按一個chip周期
	deltaT=Tchip*1000;%ms
	r0 = zeros(Np,length([startT:deltaT/1000:endT]));
	for n=1:1:Np
		['==========',method_flag_str,'==========',num2str(Np),'徑--- 第',num2str(n),'徑==========']
		
		%tic;
		tempr = sqrt(averagePower(n))*Rayleigh_Doppler_singlePath(fc,v,startT,endT,deltaT);
		%tempr = Rayleigh_Doppler_singlePath(fc,v,startT,endT,deltaT);
		
		%delay chip...
		r0(n,:) = [zeros(delayChip(n),1);tempr(1:length(tempr)-delayChip(n))]';
		%r0(n,:)=abs(r0(n,:)).^2 * averagePower(n);%Np條徑
		clear tempr;
		
		%disp(['one rayleigh channel time: ' num2str(toc) '秒']);
	end
	rm = sum(r0)';
	clear r0;
elseif (method_flag==3)
	%此時,delayTime以最晚一個徑為基準,條件參數中是以第一個徑為準的!
	for n=1:1:Np
		delayTime(n) = delayTime(Np) - delayTime(n);
	end
		
	for n=1:1:Np
		lenT(n) = length([startT+delayTime(n)*10^-9:deltaT/1000:endT]);
	end
	r0 = zeros(Np,min(lenT));
	for n=1:1:Np
		['==========',method_flag_str,'==========',num2str(Np),'徑--- 第',num2str(n),'徑==========']
		
		%tic;
		tempr = sqrt(averagePower(n))*Rayleigh_Doppler_singlePath(fc,v,startT+delayTime(n)*10^-9,endT,deltaT);
		%tempr = Rayleigh_Doppler_singlePath(fc,v,startT+delayTime(n)*10^-9,endT,deltaT);
		
		r0(n,:) = tempr([1:min(lenT)])';
		%r0(n,:)=abs(r0(n,:)).^2 * averagePower(n);%Np條徑
		clear tempr;
		
		%disp(['one rayleigh channel time: ' num2str(toc) '秒']);
	end
	rm = sum(r0)';
	clear r0;	
	
	startT = startT+max(delayTime)*10^-9;
	['起始時間 為 startT,',num2str(startT),' s!']
else
end

plot_flag = 0;   %1:需要plot,0:not plot

if plot_flag==1
	fs = 1000/deltaT; %fs = fchip*10^6;	
	c=3*10^8;%光速(m/s)
	fmax = (fc*10^6)*(v*10^3/3600)/c; % Max Doppler Shift (Hz)
	
	f_lim_range = [-fmax*2,fmax*2];

	%功率譜估計
	Nfft = 2^4;
	while(Nfft)
		if (Nfft < length(rm))
			Nfft = 2*Nfft;
		else
			break;
		end
	end
	Nfft = Nfft/2;%讓數據長度為2的冪,又不超出采樣長度
	r2 = rm(1:Nfft);
	
	Power_dB = 20*log10(abs(r2));% to dB!
	
	figure;
	subplot(2,2,1);
	plot([startT*1000:deltaT:startT*1000+deltaT*(Nfft-1)],Power_dB);grid;axis tight;title([num2str(fc), 'MHz,',num2str(v), 'km/h,Max Doppler=',num2str(fmax,'%.2f'),'Hz,',num2str(Np),'條徑']);xlabel('ms');ylabel('dB值');
	%plot([startT*1000:deltaT:endT*1000],Power_dB);grid;axis tight;title([num2str(fc), 'MHz,',num2str(v), 'km/h,Max Doppler=',num2str(fmax,'%.2f'),'Hz,',num2str(Np),'條徑']);xlabel('ms');ylabel('dB值');
	legend(['E(r^2)=',num2str(10*log10(sum(abs(r2).^2)/length(r2)),'%.2f'),' dB']);
	clear Power_dB;
	
	subplot(2,2,2);
	clear psd_matlab;clear f_matlab;
	[psd_matlab,f_matlab] = pwelch(r2,[],[],'twosided',Nfft,fs);%pwelch(x,window,noverlap,nfft,fs)
	psd_matlab = fftshift(psd_matlab);
	len = length(f_matlab);
	plot([-flipud(f_matlab(2:len/2+1));f_matlab(1:len/2)],10*log10(psd_matlab));
	%doppler shift
	hold on;
	sigma_u4 = sqrt(1/2);fm4 = [-fmax*0.999:fmax/100:fmax*0.999];fc4 = 0;
	Sf4 = 1.5*sigma_u4/(pi*fmax).*1./(sqrt(1-((fm4-fc4)./fmax).^2));	
	plot(fm4,10*log10(Sf4),'-.r',min(fm4).*ones(1,2),[min(10*log10(psd_matlab)),max(10*log10(Sf4))],'-.r',max(fm4).*ones(1,2),[min(10*log10(psd_matlab)),max(10*log10(Sf4))],'-.r','LineWidth',1.5);
	legend('仿真值','單徑理論值');
	xlim(f_lim_range);grid;
	title('pwelch(),Welch Method');xlabel('Hz');ylabel('dB/Hz');

	subplot(2,2,3);
	clear psd_matlab;clear f_matlab;
	[psd_matlab,f_matlab] = pmtm(r2,4,'twosided',Nfft,fs);
	psd_matlab = fftshift(psd_matlab);
	len = length(f_matlab);
	plot([-flipud(f_matlab(2:len/2+1));f_matlab(1:len/2)],10*log10(psd_matlab));
	%doppler shift
	hold on;
	plot(fm4,10*log10(Sf4),'-.r',min(fm4).*ones(1,2),[min(10*log10(psd_matlab)),max(10*log10(Sf4))],'-.r',max(fm4).*ones(1,2),[min(10*log10(psd_matlab)),max(10*log10(Sf4))],'-.r','LineWidth',1.5);
	legend('仿真值','單徑理論值');
	xlim(f_lim_range);grid;
	title('pmtm(),Multitaper method(MTM)');xlabel('Hz');ylabel('dB/Hz');
	
	subplot(2,2,4);
	clear psd_matlab;clear f_matlab;
	[psd_matlab,f_matlab] = pyulear(r2,round(Nfft/20),'twosided',Nfft,fs);
	psd_matlab = fftshift(psd_matlab);
	len = length(f_matlab);
	plot([-flipud(f_matlab(2:len/2+1));f_matlab(1:len/2)],10*log10(psd_matlab));
	%doppler shift
	hold on;
	plot(fm4,10*log10(Sf4),'-.r',min(fm4).*ones(1,2),[min(10*log10(psd_matlab)),max(10*log10(Sf4))],'-.r',max(fm4).*ones(1,2),[min(10*log10(psd_matlab)),max(10*log10(Sf4))],'-.r','LineWidth',1.5);
	legend('仿真值','單徑理論值');
	xlim(f_lim_range);grid;
	title('pyulear(),Yule-Walker AR Method');xlabel('Hz');ylabel('dB/Hz');

	clear r2;	
% 	yw = abs(fftshift(fft(r2))).^2/length(r2);
% 	clear r2;
% 
% 	len = length(yw);
% 	f_range = (-len/2:len/2-1)/len*fs; %[-fs/2:1/(endT-startT):fs/2];%(0:len-1)/len*fs;
% 	subplot(2,2,2);plot(f_range,10*log10(yw));grid;xlim([-fmax*1.2,fmax*1.2]);title('周期圖法 功率譜');xlabel('頻率(Hz)');ylabel('功率譜(dB)');
% 	yw2=yw;f_less=find(f_range<0);f_more=find(f_range>fmax);yw2([f_less,f_more])=[];
% 	%legend(['(0,fmax)積分功率=',num2str(10*log10(sum(yw2)*fs/len/fmax),'%.2f'),' dB/Hz']);
% 	legend(['(0,fmax)積分功率=',num2str(10*log10(mean(yw2)),'%.2f'),' dB/Hz']);
% 	clear yw2;
% 	
% 	subplot(2,2,3);plot(f_range,10*log10(yw));xlim([-fmax*4,fmax*4]);grid;title(['周期圖法 功率譜']);
% 	xlabel('頻率(Hz)');ylabel('功率譜(dB)');
% 	clear yw;
% 		
% 	%======= Welch K from 2 to 5 使頻域不至于展開過寬,而分辨不清!=======
% 	Kmax = 3; K=Kmax+1;
% 	
% 	L = 2^4; %每段數據長度,2的冪
% 	if (1.5*L>=length(rm))
% 		'Welch: 數據總長度應> 1.5*L!'
% 		return;
% 	end
% 	
% 	while (K>Kmax)
% 		Lmax = floor(length(rm)*2/L)/2*L; %需要從rm中提取的數據總長度
% 		K = Lmax*2/L-1; %數據分段數
% 		if (K <= Kmax)
% 			break;
% 		else
% 			L = 2*L;
% 		end
% 	end
% 	
% 	w_hn = hanning(L); 
% 	Pw = [];
% 	for k=1:1:K
% 		Pw(k,:) = (abs(fftshift(fft(w_hn.*rm(1+(k-1)*L/2:L+(k-1)*L/2)))).^2)';
% 	end
% 	Pw = sum(Pw)/(norm(w_hn)^2*K);
% 	f_range = (-L/2:L/2-1)/L*fs;
% 		
% 	subplot(2,2,4);plot(f_range,10*log10(Pw));grid;title(['Welch法 功率譜,K=',num2str(K),',L=2\^',num2str(log2(L))]);xlim([-fmax*1.2,fmax*1.2]);xlabel('頻率(Hz)');ylabel('功率譜(dB)');
% 	f_less=find(f_range<0);f_more=find(f_range>fmax);Pw([f_less,f_more])=[];
% 	%legend(['(0,fmax)積分功率=',num2str(10*log10(sum(Pw)*fs/L/fmax),'%.2f'),' dB/Hz']);
% 	legend(['(0,fmax)積分功率=',num2str(10*log10(mean(Pw)),'%.2f'),' dB/Hz']);
% 	clear Pw;	
end

y=rm(:);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产在线精品不卡| 9191久久久久久久久久久| 99久久精品免费| 欧美福利视频导航| 国产亚洲精品aa| 日韩电影在线免费观看| 97超碰欧美中文字幕| 精品国产乱码久久久久久蜜臀| 亚洲精品成人在线| 成人免费视频视频在线观看免费 | 国产精品一区二区三区网站| 在线观看日韩国产| 国产精品久久影院| 国产精品一区专区| 欧美成人性战久久| 婷婷激情综合网| 欧美在线观看一区| 亚洲人成网站精品片在线观看| 国模少妇一区二区三区| 欧美巨大另类极品videosbest| 亚洲免费av高清| 99精品久久久久久| 国产精品卡一卡二| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 欧美亚男人的天堂| 亚洲欧美日韩系列| 91一区二区在线观看| 中文子幕无线码一区tr| 国产风韵犹存在线视精品| 精品成a人在线观看| 日产欧产美韩系列久久99| 91麻豆精品国产91久久久 | 另类的小说在线视频另类成人小视频在线| 日本久久一区二区三区| 亚洲精品国产一区二区三区四区在线| 欧美乱妇20p| 亚洲午夜激情av| 欧美色国产精品| 午夜精品久久久久久久久久| 在线观看91av| 精品一区二区三区免费毛片爱 | 久久精品99久久久| 精品国产在天天线2019| 国产伦理精品不卡| 欧美激情一区二区三区蜜桃视频| 成人激情黄色小说| 亚洲欧美国产毛片在线| 欧美综合视频在线观看| 日韩黄色一级片| 欧美大片顶级少妇| 国产成人精品aa毛片| 国产精品拍天天在线| 一本色道亚洲精品aⅴ| 亚洲影院理伦片| 欧美一区二区三区在线| 国产精一品亚洲二区在线视频| 国产精品色眯眯| 欧美情侣在线播放| 国产综合一区二区| 亚洲日本在线天堂| 制服丝袜av成人在线看| 风流少妇一区二区| 亚洲图片欧美视频| 国产无人区一区二区三区| 91女人视频在线观看| 日韩电影在线观看一区| 亚洲国产成人午夜在线一区| 欧美日韩在线观看一区二区| 国产一二三精品| 一级女性全黄久久生活片免费| 欧美一区二区三区系列电影| 粉嫩aⅴ一区二区三区四区五区 | 欧美日韩一区不卡| 国产精品综合视频| 午夜精品久久久久久久99樱桃| 久久久噜噜噜久噜久久综合| 91浏览器打开| 久草精品在线观看| 亚洲电影激情视频网站| 国产无一区二区| 欧美一区二区免费观在线| 99re这里只有精品首页| 激情综合网天天干| 午夜精品福利久久久| 亚洲丝袜另类动漫二区| 精品88久久久久88久久久| 色94色欧美sute亚洲线路一ni| 国产露脸91国语对白| 亚洲成人福利片| 亚洲视频一区在线观看| 久久久99精品免费观看不卡| 欧美三级韩国三级日本三斤| 不卡一区二区三区四区| 激情av综合网| 免费不卡在线观看| 五月婷婷综合在线| 亚洲一线二线三线视频| 中文字幕字幕中文在线中不卡视频| 久久婷婷色综合| 日韩欧美美女一区二区三区| 欧美日韩高清在线播放| 91麻豆国产香蕉久久精品| 成人免费视频视频| 成人午夜在线视频| 日韩欧美国产一区二区三区| 欧美性大战久久| 在线精品视频免费观看| 欧美中文字幕亚洲一区二区va在线| av在线综合网| 99精品视频在线观看| 91年精品国产| 一本一道波多野结衣一区二区| 99精品一区二区三区| 91免费观看视频| 色偷偷成人一区二区三区91| 白白色 亚洲乱淫| 99久久精品国产一区| 99久久99久久精品免费观看| av亚洲精华国产精华精华| bt欧美亚洲午夜电影天堂| 色综合久久中文字幕综合网| 99精品桃花视频在线观看| 色婷婷综合激情| 欧美人与禽zozo性伦| 欧美一区二区三区视频免费播放 | 久久久久99精品国产片| 久久噜噜亚洲综合| 欧美国产精品v| 亚洲四区在线观看| 亚洲福利一二三区| 青青草97国产精品免费观看无弹窗版| 青青草国产精品亚洲专区无| 国产主播一区二区三区| 成人app软件下载大全免费| 在线欧美日韩精品| 91精品国产综合久久久久久久久久 | 久久久久国产精品人| 综合久久一区二区三区| 一区二区三区成人| 蜜桃视频免费观看一区| 高清久久久久久| 欧洲一区二区三区免费视频| 日韩欧美一区二区免费| 国产日韩欧美制服另类| 亚洲精品免费在线观看| 日韩制服丝袜av| 波多野结衣在线aⅴ中文字幕不卡| 色综合久久综合网欧美综合网| 91精品久久久久久久99蜜桃| 国产欧美精品一区aⅴ影院| 夜夜爽夜夜爽精品视频| 精品一区二区三区视频在线观看| 日韩欧美一二区| 国产精品久久久久桃色tv| 丝袜美腿亚洲色图| 成人午夜电影网站| 91精品国产黑色紧身裤美女| 国产精品理论片| 麻豆国产一区二区| 色综合久久综合| 国产亚洲欧美激情| 日本午夜精品视频在线观看 | 精品综合免费视频观看| 91在线码无精品| 欧美一级精品大片| 亚洲精品视频一区| 懂色一区二区三区免费观看| 欧美一级二级三级蜜桃| 亚洲色欲色欲www| 国产激情一区二区三区四区 | 久草这里只有精品视频| 欧美日韩一区二区三区视频 | 成人免费av网站| 精品国产乱码久久久久久闺蜜| 亚洲免费色视频| 国产成人在线视频免费播放| 91麻豆精品国产91久久久使用方法| 亚洲视频 欧洲视频| 国产69精品久久777的优势| 精品国产91九色蝌蚪| 午夜不卡av免费| 欧美日韩黄色影视| 亚洲在线视频免费观看| 99久精品国产| 中文字幕日韩欧美一区二区三区| 国产综合久久久久影院| 日韩欧美激情四射| 三级久久三级久久| 欧美日韩国产成人在线免费| 亚洲综合一区二区三区| 色婷婷综合久久| 一区二区三区不卡视频在线观看| 99精品视频在线观看| 亚洲视频一区二区在线观看| 国产91在线|亚洲| 亚洲国产精品av| av不卡在线观看| 一区二区三区日韩欧美| 色婷婷激情综合| 一区二区三区国产精品|