信号服从瑞利衰落,是从源节点到目的节点的信道因子,
其中,是瑞利衰减系数,服从复高斯分布,
是路径损失因子,
是源节点到接收端的距离,
是信号波长。
import numpy as np
import math
from numpy import mat
N= 1#目的节点个数
lam=0.1
def decay():
#目的节点在rS-dor的圆环内随机分布
r_outside=1.2
S = np.random.random(N) * 2 * np.pi - np.pi
r_inside=0#内部环
x = np.cos(S)
y = np.sin(S)
for i in range(N):
l = r_inside+r_outside*np.sqrt(np.random.random())
x[i] = x[i] * l
y[i] = y[i] * l
dis =np.zeros((1,N))
for j in range(N):
dis[0,j]=np.sqrt((x[j])**2+(y[j])**2)
for i in range(N):
dis[0,i]=((lam/(4*math.pi)/dis[0,i]))
return dis
if __name__ == '__main__':
time=50000 #产生time条数据
H=[]
for i in range(time):
r1=mat(np.random.normal(0,1,N))
r2=1/pow(2,1/2)
real = r1*r2
h=[]
i1=mat(np.random.normal(0,1,N))
i2=1/pow(2,1/2)
Imaginary=i2*i1
R_deacy = decay()
for j in range(0,N):
c=complex(real[0,j],Imaginary[0,j])
d=c*R_deacy [0,j]
h.append((abs(d)))#准确的信道增益
#print('一个信道',h)
H.append(np.array(h))
print('H',H[:10])