Skip to content

Null Algorithms

Simple (null) transmitters for testing and debugging.

get_constant_transmission_algorithm(val)

Get a basic transmission algorithm that output a constant complex value.

Parameters:

Name Type Description Default
val complex | Parameter

constant complex value to transmit

required

Returns:

Type Description
TransmissionAlgorithm

A TransmissionAlgorithm that outputs a tensor where every element is val.

Example
>>> tx = get_constant_transmitter(1 + 1j)
>>> tx(5, 2)
Transmission(signal=tensor([[1.+1.j, 1.+1.j, 1.+1.j, 1.+1.j, 1.+1.j],
        [1.+1.j, 1.+1.j, 1.+1.j, 1.+1.j, 1.+1.j]]), metadata={})

get_null_reception_algorithm()

Get a null reception algorithm that does not do any processing,.

Returns:

Type Description
ReceptionAlgorithm

A null ReceptionAlgorithm that outputs an empty Reception dictionary.

Example
>>> rx = get_null_reception_algorithm()
>>> signal = torch.zeros([2, 5], dtype=torch.complex64)
>>> rx(signal)
{}

get_null_transmission_algortihm()

Get a null transmission algorithm that output nothing.

Returns:

Type Description
TransmissionAlgorithm

A TransmissionAlgorithm that outputs a complex-valued tensors of zeros.

Example
>>> tx = get_null_transmission_algortihm()
>>> tx(5, 2)
Transmission(signal=tensor([[0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j],
        [0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j, 0.+0.j]]), metadata={})