Cost 259 Channel Model#

class MultipathFadingCost259(model_type=Cost259Type.URBAN, alpha_device=None, beta_device=None, gain=1.0, los_angle=None, doppler_frequency=None, los_doppler_frequency=None, **kwargs)[source]#

Bases: MultipathFadingChannel

Cost Action 259 Multipath Fading Channel models.

Refer to Molisch et al.[1] and Asplund et al.[2] for more information. Parametrizations can be found in the standard Universal Mobile Telecommunications System (UMTS); Deployment aspects[3].

The following minimal example outlines how to configure the channel model within the context of a Simulation:

 1# Initialize two devices to be linked by a channel
 2simulation = Simulation()
 3alpha_device = simulation.new_device(carrier_frequency=1e8)
 4beta_device = simulation.new_device(carrier_frequency=1e8)
 5
 6# Create a channel between the two devices
 7channel = MultipathFadingCost259(model_type=Cost259Type.URBAN)
 8simulation.set_channel(alpha_device, beta_device, channel)
 9
10# Configure communication link between the two devices
11link = SimplexLink(alpha_device, beta_device)
12
13# Specify the waveform and postprocessing to be used by the link
14link.waveform = RRCWaveform(
15    symbol_rate=1e7, oversampling_factor=2, num_data_symbols=1000, 
16    num_preamble_symbols=10, pilot_rate=10)
17link.waveform.channel_estimation = SCLeastSquaresChannelEstimation()
18link.waveform.channel_equalization = SCZeroForcingChannelEqualization()
19
20# Configure a simulation to evaluate the link's BER and sweep over the receive SNR
21simulation.add_evaluator(BitErrorEvaluator(link, link))
22simulation.new_dimension('snr', dB(0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20))
23
24# Run simulation and plot resulting SNR curve
25result = simulation.run()
26result.plot()
Parameters:
  • model_type (Cost256Type) – The model type.

  • alpha_device (SimulatedDevice, optional) – First device linked by the MultipathFadingCost259 instance that generated this realization.

  • beta_device (SimulatedDevice, optional) – Second device linked by the MultipathFadingCost259 instance that generated this realization.

  • gain (float, optional) – Linear power gain factor a signal experiences when being propagated over this realization. \(1.0\) by default.

  • los_angle (float, optional) – Angle phase of the line of sight component within the statistical distribution.

  • doppler_frequency (float, optional) – Doppler frequency shift of the statistical distribution.

  • kwargs (Any) – MultipathFadingChannel initialization parameters.

Raises:

ValueError – If model_type is not supported. If los_angle is defined in HILLY model type.

classmethod to_yaml(representer, node)[source]#

Serialize a serializable object to YAML.

Parameters:
  • representer (SafeRepresenter) – A handle to a representer used to generate valid YAML code. The representer gets passed down the serialization tree to each node.

  • node (Serializable) – The MultipathFadingCost256 instance to be serialized.

Return type:

MappingNode

Returns: The serialized YAML node.

property model_type: Cost259Type#

Access the configured model type.

Returns: The configured model type.

class Cost259Type(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]#

Bases: SerializableEnum

Supported model types of the Cost256 channel model

HILLY = 2#

Hilly terrain

RURAL = 1#

Rural area

URBAN = 0#

Urban area