Resource

Inheritance diagram of hermespy.modem.waveforms.orthogonal.waveform.GridResource, hermespy.modem.waveforms.orthogonal.waveform.PrefixType
class GridResource(repetitions=1, prefix_type=PrefixType.CYCLIC, prefix_ratio=0.0, elements=None)[source]

Bases: Serializable

Configures one sub-section of a resource grid in both dimensions.

elements: List[GridElement]

Individual resource elements

property mask: ndarray

Boolean mask selecting a specific type of element from the OFDM grid.

Returns:

Mask of dimension num_element_types`x`num_subcarriers.

Return type:

np.ndarray

property num_references: int

Number of references symbols this resource can modulate.

Returns:

Number of modulated symbols.

property num_subcarriers: int

Number of occupied subcarriers.

Returns:

Number of occupied subcarriers.

Return type:

int

property num_symbols: int

Number of data symbols this resource can modulate.

Returns:

Number of modulated symbols.

property prefix_ratio: float

Ratio between full block length and prefix length.

Returns:

The ratio between zero and one.

Return type:

float

Raises:

ValueError – If ratio is less than zero or larger than one.

prefix_type: PrefixType

Prefix type of the frame resource

property repetitions: int

Number of block repetitions along the frequency axis.

Returns:

Number of repetitions.

Return type:

int

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

Bases: SerializableEnum

Type of prefix applied to the grid resource in time-domain.

CYCLIC = 0

Cyclic prefix repeating the resource waveform in time-domain

NONE = 2

No prefix applied

ZEROPAD = 1

Prefix zero-padding the prefix in time-domain