OFDM Waveform

Inheritance diagram of hermespy.modem.waveforms.orthogonal.ofdm.OFDMWaveform
class OFDMWaveform(grid_resources, grid_structure, num_subcarriers=1024, subcarrier_spacing=1000.0, dc_suppression=True, pilot_section=None, pilot_sequence=None, repeat_pilot_sequence=True, **kwargs)[source]

Bases: OrthogonalWaveform, Serializable

Generic Orthogonal Frequency Division Multiplexing waveform description.

Parameters:
  • grid_resources (Sequence[GridResource]) – Frequency-domain resource section configurations.

  • grid_structure (Sequence[GridSection]) – Time-domain frame configuration.

  • num_subcarriers (int, optional) – Maximum number of assignable subcarriers. Unassigned subcarriers will be assumed to be zero. \(1024\) by default.

  • subcarrier_spacing (float, optional) – Spacing between individual subcarriers in Hz. \(1~\mathrm{kHz}\) by default.

  • num_subcarriers – Maximum number of assignable subcarriers. Unassigned subcarriers will be assumed to be zero. \(1024\) by default.

  • dc_suppression (bool, optional) – Suppress the direct current component during waveform generation. Enabled by default.

  • pilot_section (PilotSection, optional) – Pilot section preceding the frame’s payload. If not specified, no dedicated pilot section will be generated.

  • pilot_sequence (PilotSymbolSequence, optional) – Sequence of symbols used for the pilot section and reference symbols within the frame. If not specified, pseudo-random sequences will be generated from the set of data symbols.

  • **kwargs (Any) – Waveform generator base class initialization parameters. Refer to CommunicationWaveform for details.

property bandwidth: float

Bandwidth of the frame generated by this generator.

Used to estimate the minimal sampling frequency required to adequately simulate the scenario.

Returns:

Bandwidth in Hz.

Return type:

float

dc_suppression: bool
property samples_per_frame: int

Number of time-domain samples per processed communication frame.

property sampling_rate: float

Rate at which the waveform generator signal is internally sampled.

Returns:

Sampling rate in Hz.

Return type:

float

property subcarrier_spacing: float

Subcarrier spacing between frames.

Returns:

Spacing in Hz.

Return type:

float