Engee documentation

EngeeComms.PhaseFrequencyOffset

Applies phase and frequency offsets to the complex base signal.

Library

EngeeComms

Block

Phase/ Frequency Offset

Description

The EngeeComms.PhaseFrequencyOffset system object applies phase and frequency offsets to a complex baseband signal.

To perform phase and frequency offsets, perform the following steps:

  1. Create an EngeeComms.PhaseFrequencyOffset object and set its properties.

  2. Call the object with arguments as if it were a function.

To learn more about how to work with system objects, see Engee system objects.

Syntax

Creation

  • PFO = EngeeComms.PhaseFrequencyOffset() creates a system object for phase and frequency offset with by default properties. Example:

    PFO = EngeeComms.PhaseFrequencyOffset()
  • PFO = EngeeComms.PhaseFrequencyOffset(Name=Value) creates a system phase and frequency offset object with each specified Name (name) property set to the specified Value (value). You can specify additional arguments as a name-value pair in any order (Name1=Value1,…​,NameN=ValueN). Example:

    # создание системного объекта смещения фазы и частоты с частотой дискретизации 20 Гц
    PFO = EngeeComms.PhaseFrequencyOffset(SampleRate=20)

Usage

  • Y = PFO(X) - applies a phase and frequency offset to the input signal.

    Y = PFO(X)
  • Y = PFO(X, fOffset) - sets the frequency offset to the input signal X.

    Y = PFO(X, fOffset)

Arguments

Input arguments

X - input signal
scalar | vector | matrix

Details

An input signal specified as a scalar, vector or matrix.

Data types: Float32, Float64

fOffset - frequency offset
scalar | vector | matrix

Details

Frequency offset in Hz, given as a scalar, vector or matrix.

Dependencies

To use this argument, set the FrequencyOffsetSource property to Input port.

Data types: Float32, Float64

Output arguments

Y - output signal
scalar | vector | matrix

Details

An output signal returned as a scalar, vector or matrix.

Data types: Float32, Float64

Properties

PhaseOffset - phase offset
0 (by default) | scalar | vector | matrix

Details

Phase offset in degrees, specified as a scalar, vector or matrix.

FrequencyOffsetSource — frequency offset source
Property (By default) | Input port

Details

The frequency offset source specified as one of these values:

  • Input port - the frequency offset is specified in the input argument fOffset

  • Property - the frequency offset is specified by the FrequencyOffset property.

FrequencyOffset — frequency offset
0 (by default) | scalar | vector | matrix

Details

Frequency offset in Hz, specified as a scalar, vector or matrix.

Dependencies

To use this argument, set the FrequencyOffsetSource property to Property.

SampleRate - sampling rate
1 (By default) | positive scalar

Details

The sampling rate of the input signal in Hz, specified as a positive scalar.

Methods

Common for all system objects

step!

Start the system object’s operating algorithm

release!

Allow changing the value of a system object property

reset!

Reset internal states of the system object

Optional

Dependencies of property dimensions and input arguments

Details

The table below describes the dependencies of the property dimensions and input arguments. In the table is the number of samples per channel in the input signal X and is the number of channels.

Dimension I/O dimension Frame size Number of channels Frequency offset/phase dimension Frequency offset input argument dimension Frequency offset input argument dimension

any

scalar

1

1

scalar

scalar

2

at 1

1

on 1

1 on

1 on 1

on 1

1

1 on 1

2

1 on

1

on 1

1 on

1 on 1

1 on

1

1 by 1

2

on

on

on 1

1 on

on 1

1 on

1 on 1

on

1 on

1

1 by 1

on 1

For example:

  • When the offset property is set as a scalar, the object applies the same offset to all elements of the input signal.

  • When the offset property is set as a 2-by-1 vector for a 2-by-3 input signal (one offset value per reference), the object applies the same reference offset to all three channels.

  • When the offset property is set as a 1-by-3 vector for a 2-by-3 dimension input signal (one offset value per channel), the same channel offset is applied to two samples of the same channel.

  • When the offset property is set as a 2-by-3 matrix for a 2-by-3 input signal (one offset value per sample for each channel), the offsets are applied element by element to the input signal.

Algorithms

Details

If the input signal is , then the output signal has the form

,

where

  • - frequency offset;

  • - phase offset.

The output signal in discrete time has the form:

и

,

where , and is the interval between calculation steps.

Literature

  1. Clark, George C., and J. Bibb Cain. Error-Correction Coding for Digital Communications. Applications of Communications Theory. New York: Plenum Press, 1981.

  2. Forney, G., D., Jr. "Burst-Correcting Codes for the Classic Bursty Channel." IEEE Transactions on Communications, vol. COM-19, October 1971. 772-781.

  3. Ramsey, J. L. "Realisation of Optimum Interleavers." IEEE Transactions on Information Theory, IT-16 (3), May 1970. 338-345.