Channels - ephemerista.comms.channels
¶
The channels.py module.
This module provides the Channel class which models a radio communications channel.
- pydantic model ephemerista.comms.channels.Channel¶
The Channel class.
- Fields:
-
field channel_id:
Annotated
[UUID
] [Optional] (alias 'id')¶ - Constraints:
uuid_version = 5
-
field data_rate:
float
[Required] (alias 'dataRate')¶
-
field forward_error_correction:
float
= 0.5 (alias 'forwardErrorCorrection')¶
-
field link_type:
Literal
['uplink'
,'downlink'
] [Required] (alias 'linkType')¶
-
field margin:
float
[Required]¶
-
field modulation:
Literal
['BPSK'
,'QPSK'
,'8PSK'
,'16QAM'
,'32QAM'
,'64QAM'
,'128QAM'
,'256QAM'
] [Required]¶
-
field name:
str
= 'Default Channel'¶ The name of the channel
-
field required_eb_n0:
float
[Required] (alias 'requiredEbN0')¶
-
field roll_off:
float
= 1.5 (alias 'rollOff')¶
- bit_energy_to_noise_density(tx, rx, losses, rng, tx_angle, rx_angle)¶
Calculate Eb/N0.
This method calculates the energy per bit to noise power spectral density ratio for a link between a transmitting CommunicationSystem and a receiving CommunicationSystem on this channel.
- Parameters:
tx (CommunicationSystem) – The TX communication system.
rx (CommunicationSystem) – The RX communication system.
losses (float) – The sum of the environmental losses
rng (float) – The slant range in meters.
tx_angle (float) – The angle between the transmitter antenna’s boresight vector and the transmitter-receiver vector in radians.
rx_angle (float) – The angle between the receiver antenna’s boresight vector and the receiver-transmitter vector in radians.
- Returns:
The energy per bit to noise power spectral density ratio Eb/N0 in dB.
- Return type:
float
- bit_energy_to_noise_interference_density(tx, rx, losses, rng, tx_angle, rx_angle, bandwidth, interference_power_w)¶
Calculate the energy per bit to noise and interference power spectral density Eb/(N0+I0).
- Parameters:
tx (CommunicationSystem) – The TX communication system.
rx (CommunicationSystem) – The RX communication system.
losses (float) – The sum of the environmental losses
rng (float) – The slant range in meters.
tx_angle (float) – The angle between the transmitter antenna’s boresight vector and the transmitter-receiver vector in radians.
rx_angle (float) – The angle between the receiver antenna’s boresight vector and the receiver-transmitter vector in radians.
bandwidth (float) – The channel’s bandwidth in Hz.
interference_power_w (float) – The interference power in W.
- Returns:
The energy per bit to noise and interference power spectral density Eb/(N0+I0) in dB.
- Return type:
float
- bits_per_symbol()¶
Return the required bits per symbol for the channel’s modulation scheme.
- Returns:
The number of bits per symbol corresponding to the channels’ modulation scheme.
- Return type:
int
- property bandwidth: float¶
bandwidth of the channel in Hz.
- Type:
float