Splitters

Inheritance diagram of hermespy.simulation.rf.blocks.split.Split

Radio-Frequency (RF) splitters divide an input signal into multiple output signals, typically with equal amplitude and phase characteristics. They are commonly used in communication systems to distribute signals to multiple paths. In the process, they may introduce insertion loss, phase imbalance, and crosstalk between output ports.

This module provides various numerical models of RF splitters.

class Split(num_outputs, seed=None)[source]

Bases: RFBlock

A simple radio-frequency block that splits the input signal into multiple outputs.

Parameters:
  • noise_model – Assumed noise model of the block. If not specified, i.e. None, additive white Gaussian noise will be assumed.

  • noise_level – Assumed noise level of the block. If not specified, i.e. None, no noise is assumed.

  • seed (int | None) – Seed with which to initialize the block’s random state.

realize(bandwidth, oversampling_factor, carrier_frequency)[source]

Return the current state of the radio-frequency block.

Parameters:
  • bandwidth (float) – Bandwith of the proecessed signals in Hz.

  • oversampling_factor (int) – Oversampling factor of the modeling.

  • carrier_frequency (float) – Target carrier frequency of the modeled radio front-end in Hz.

Return type:

RFBlockRealization

Returns:

Current state of the radio-frequency block.

property i: RFBlockPort[Split][source]

Splitter input port.

property num_input_ports: int[source]

Number of physical ports feeding into this radio-frequency block.

If the returned number is negative, the block can accept an arbitrary number of input ports.

property num_output_ports: int[source]

Number of physical ports emerging from this radio-frequency block.

property o: RFBlockPort[Split][source]

Splitter output ports.

Number of ports is equal to the number of outputs specified during initialization.