Inheritance diagram of hermespy.simulation.rf_chain.power_amplifier.PowerAmplifier

Amplifcation modeling represents a single processing step within the radio-frequency hardware model of simulated devices. Amplifier models implement an equation

\[s'(t) = f\lbrace s(t), t \rbrace \in \mathbb{C}\]

distorting complex-valued signal samples \(s(t) \in \mathbb{C}\) feeding into the power amplifier. For time-invariant (i.e. memoryless) models \(f\lbrace s(t), t \rbrace = f\lbrace s(t) \rbrace\).

The currently available amplifier models are

Amplification Model


Clipping Power Amplifier

Model of a power amplifier driven into saturation.

Custom Power Amplifier

Power amplification model with fully customizable gain characteristics.

Power Amplifier

Ideal power amplifier model. HermesPy’s default configuration.

Rapp Power Amplifier

Power amplification model following Rapp[1].

Saleh Power Amplifier

Power amplification model following Saleh[2].

Configuring a SimulatedDevice's amplification requires setting the phase_noise property of the device’s rf_chain:

1# Create a new device
2simulation = Simulation()
3device = simulation.new_device()
5# Configure the device's default amplification model
6device.rf_chain.power_amplifier = PowerAmplifier()

Of course, the abstract PowerAmplifier model in the above snippet has to be replaced by one the implementations listed above. The following figure visualizes the gain characteristics for the implemented amplification models for a saturation point \(s_\mathrm{sat} = 1\).

(Source code)