rate_distance_calculator
cosmica.comm_link.rate_distance_calculator
__all__
module-attribute
__all__ = ['SatToSatBinaryCommLinkCalculatorWithRateCalc']
SatToSatBinaryCommLinkCalculatorWithRateCalc
SatToSatBinaryCommLinkCalculatorWithRateCalc(
*,
inter_satellite_link_capacity: float,
max_inter_satellite_distance: float = float("inf"),
lowest_altitude: float = 0.0,
max_relative_angular_velocity: float = float("inf"),
sun_exclusion_angle: float = 0.0,
lct_power: float = 1.0,
available_link_capacity: float = 1000000000.0,
lna_gain: float,
noise_figure: float = 4
)
Bases: MemorylessCommLinkCalculator[Satellite, Satellite]
Calculate satellite-to-satellite communication link performance for each edge in a network.
The link performance is calculated as a binary value, i.e., 1 if the link is available and 0 otherwise.
Source code in src/cosmica/comm_link/rate_distance_calculator.py
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | |
inter_satellite_link_capacity
instance-attribute
inter_satellite_link_capacity = (
inter_satellite_link_capacity
)
lct_p0
instance-attribute
lct_p0 = lct_power
link_capacity
instance-attribute
link_capacity = available_link_capacity
lna_gain
instance-attribute
lna_gain = lna_gain
lowest_altitude
instance-attribute
lowest_altitude = lowest_altitude
max_inter_satellite_distance
instance-attribute
max_inter_satellite_distance = max_inter_satellite_distance
max_relative_angular_velocity
instance-attribute
max_relative_angular_velocity = (
max_relative_angular_velocity
)
noise_figure
instance-attribute
noise_figure = noise_figure
sun_exclusion_angle
instance-attribute
sun_exclusion_angle = sun_exclusion_angle
calc
calc(
edges: Collection[tuple[Satellite, Satellite]],
*,
dynamics_data: DynamicsData,
rng: Generator
) -> dict[tuple[Satellite, Satellite], CommLinkPerformance]
Source code in src/cosmica/comm_link/rate_distance_calculator.py
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 | |