Python實(shí)現(xiàn)仿真雙徑效應(yīng)的方法
多徑效應(yīng)
多徑效應(yīng)(multipath effect):指電磁波經(jīng)不同路徑傳播后,各分量場(chǎng)到達(dá)接收端時(shí)間不同,按各自相位相互疊加而造成干擾,使得原來(lái)的信號(hào)失真,或者產(chǎn)生錯(cuò)誤。比如電磁波沿不同的兩條路徑傳播,而兩條路徑的長(zhǎng)度正好相差半個(gè)波長(zhǎng),那么兩路信號(hào)到達(dá)終點(diǎn)時(shí)正好相互抵消了(波峰與波谷重合)。通常采用一些近似方法來(lái)描述信號(hào)的傳播特性,其中最常見的一種近似方法是射線跟蹤計(jì)算。射線跟蹤模型將波前近似為簡(jiǎn)單粒子,進(jìn)而確定出反射和折射對(duì)波前的影響。最簡(jiǎn)單的射線跟蹤模型是雙徑模型,指發(fā)射機(jī)和接收機(jī)之間只存在一條直射路徑和一條反射路徑的情況。雙徑模型中的反射信號(hào)一般為地面反射,對(duì)于高速公路以及鄉(xiāng)村道路和水面上的信號(hào)傳播來(lái)說,雙徑模型是一種很好的近似,能夠準(zhǔn)確地反映信號(hào)的傳播特性。
雙徑模型
雙徑模型用在單一的地面反射波在多徑效應(yīng)中起主導(dǎo)作用的情形,如下圖所示是雙徑模型的示意圖。接收信號(hào)由兩部分組成:經(jīng)自由空間達(dá)到接收端的直射分量和經(jīng)過地面反射到達(dá)接收端的反射分量。

雙徑模型中的接收信號(hào)為:

Pt為發(fā)射功率,Gt為自射天線增益乘積GaGb,Gr為反射路徑天線增益乘積GcGd,l為直射的路徑,x0+x1為反射的路徑,△φ為反射路徑和直射路徑的相位差,△φ=2Π(x0+ x1-l)/λ,反射系數(shù)R≈0.9。
模型分析
假設(shè)通信頻率為2000MHz,基站高度1m,手持終端高度為1m,l=18m,此時(shí)θ=actan(1/18x2) =6.353°,x0=x1=1/sin(6.353°)=9.0373m,△φ=360°x(x0 +x1-l)/λ=179°。入射波和反射波相差接近180°相位,相互抵消,這時(shí)候接收功率就出現(xiàn)了極小值。
按照上述的設(shè)定值,繪制4m-150m的接收功率圖如下:

雙徑模型仿真程序
import numpy as np
import matplotlib.pyplot as plt
def Radiation( theta, kt=0.2):
theta = theta+np.pi/2
pi = np.pi
gmax_t = (np.cos(2 * pi * kt * np.cos(pi / 2)) - np.cos(2 * pi * kt)) / np.sin(pi / 2)
gain = (np.cos(2 * pi * kt * np.cos(theta)) - np.cos(2 * pi * kt)) / np.sin(theta) / gmax_t
return gain**2
def multipath_effect():
h_j = 1
h_c = 1
f = 2
lamda = 0.3 / f
x = []
y = []
for i in range(20, 1500):
l = i / 10
x.append(l)
l_c = h_c / (h_j + h_c) * l
l_j = h_j / (h_j + h_c) * l
lx = (h_c ** 2 + l_c ** 2) ** 0.5 + (h_j ** 2 + l_j ** 2) ** 0.5
ly = (l ** 2 + (h_c - h_j) ** 2) ** 0.5
l_d = lx - ly
phase = l_d / lamda * 2 * np.pi
theta_z = np.arctan(abs(h_j - h_c) / l)
theta_f = np.arctan(h_j / l_j)
tmp = Radiation(theta_z) * Radiation(theta_z) / ly ** 2 + Radiation(theta_f) * Radiation(theta_f) / lx ** 2 * np.sin(phase)
y.append(20 * np.log10(tmp))
plt.plot(x, y, 'r-')
plt.show()
multipath_effect()
到此這篇關(guān)于Python實(shí)現(xiàn)仿真雙徑效應(yīng)的方法的文章就介紹到這了,更多相關(guān)Python 仿真雙徑效應(yīng)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python3調(diào)用百度AI識(shí)別圖片中的文字功能示例【測(cè)試可用】
這篇文章主要介紹了Python3調(diào)用百度AI識(shí)別圖片中的文字功能,結(jié)合實(shí)例形式分析了Python3安裝及使用百度AI接口的相關(guān)操作技巧,并附帶說明了百度官方AI平臺(tái)的注冊(cè)及接口調(diào)用操作方法,需要的朋友可以參考下2019-03-03
python實(shí)現(xiàn)斐波那契數(shù)列的方法示例
每個(gè)碼農(nóng)大概都會(huì)用自己擅長(zhǎng)的語(yǔ)言寫出一個(gè)斐波那契數(shù)列出來(lái),斐波那契數(shù)列簡(jiǎn)單地說,起始兩項(xiàng)為0和1,此后的項(xiàng)分別為它的前兩項(xiàng)之后。下面這篇文章就給大家詳細(xì)介紹了python實(shí)現(xiàn)斐波那契數(shù)列的方法,有需要的朋友們可以參考借鑒,下面來(lái)一起看看吧。2017-01-01
python 實(shí)現(xiàn)提取log文件中的關(guān)鍵句子,并進(jìn)行統(tǒng)計(jì)分析
今天小編就為大家分享一篇python 實(shí)現(xiàn)提取log文件中的關(guān)鍵句子,并進(jìn)行統(tǒng)計(jì)分析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧2019-12-12
Python+matplotlib實(shí)現(xiàn)量場(chǎng)圖的繪制
matplotlib是基于Python語(yǔ)言的開源項(xiàng)目,pyplot提供一系列繪制2D圖形的方法。本文將帶大家學(xué)習(xí)matplotlib.pyplot.quiver()相關(guān)方法屬性并通過其繪制量場(chǎng)圖2021-12-12
Python 3.3實(shí)現(xiàn)計(jì)算兩個(gè)日期間隔秒數(shù)/天數(shù)的方法示例
這篇文章主要介紹了Python 3.3實(shí)現(xiàn)計(jì)算兩個(gè)日期間隔秒數(shù)/天數(shù)的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了基于Python3.3的日期時(shí)間轉(zhuǎn)換與運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下2019-01-01
Python測(cè)試網(wǎng)絡(luò)連通性示例【基于ping】
這篇文章主要介紹了Python測(cè)試網(wǎng)絡(luò)連通性,結(jié)合實(shí)例形式分析了Python通過發(fā)送ping請(qǐng)求測(cè)試網(wǎng)絡(luò)連通性相關(guān)操作技巧,需要的朋友可以參考下2018-08-08
教你如何用Python實(shí)現(xiàn)人臉識(shí)別(含源代碼)
Python可以從圖像或視頻中檢測(cè)和識(shí)別你的臉.人臉檢測(cè)與識(shí)別是計(jì)算機(jī)視覺領(lǐng)域的研究熱點(diǎn)之一.人臉識(shí)別的應(yīng)用包括人臉解鎖、安全防護(hù)等,醫(yī)生和醫(yī)務(wù)人員利用人臉識(shí)別來(lái)獲取病歷和病史,更好地診斷疾病,需要的朋友可以參考下2021-06-06
14個(gè)用Python實(shí)現(xiàn)的Excel常用操作總結(jié)
自從學(xué)了Python后就逼迫自己不用Excel,所有操作用Python實(shí)現(xiàn)。目的是鞏固Python,與增強(qiáng)數(shù)據(jù)處理能力。本文為大家總結(jié)了14個(gè)用Python實(shí)現(xiàn)的Excel常用操作,需要的可以參考一下2022-06-06
詳解Python如何精確控制asyncio并發(fā)運(yùn)行多個(gè)任務(wù)
這篇文章主要為大家詳細(xì)介紹了Python如何精確控制asyncio并發(fā)運(yùn)行多個(gè)任務(wù),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-10-10

