Пример #1
0
 def received_power(self, tx_power, freq, tx_pos_gps, rx_pos_gps):
     w = 3e8 / freq  # Wavelength in meters
     C = w**2 / ((4 * np.pi)**2 * self.L)
     d = util.distance(tx_pos_gps, rx_pos_gps)
     if d < w:
         return tx_power
     return tx_power * C / (d**2)
Пример #2
0
 def received_power(self, tx_power, freq, tx_pos_gps, rx_pos_gps):
     w = 3e8 / freq  # Wavelength in meters
     d = util.distance(tx_pos_gps, rx_pos_gps)
     if d < w:
         return tx_power
     h_t = tx_pos_gps[2]
     h_r = rx_pos_gps[2]
     return tx_power * h_t**2 * h_r**2 / (d**4 * self.L)
Пример #3
0
 def p_reception(self, tx_power, freq, tx_pos_gps,
                 rx_pos_gps, rx_sensitivity):
     d = util.distance(tx_pos_gps, rx_pos_gps)
     h_t = tx_pos_gps[2]
     h_r = rx_pos_gps[2]
     CR = self.communication_range(rx_sensitivity, tx_power, freq, h_t, h_r)
     p_rx = self.nakagami(d, CR)
     return p_rx