Engee documentation

EngeeComms.RaisedCosineTransmitFilter

Generates a pulse by interpolating the signal using an FIR filter with a raised cosine.

Library

EngeeComms

Block

Raised Cosine Transmit Filter

Description

To apply pulse shaping by interpolating the input signal using a raised cosine FIR filter, follow these steps:

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

  2. Call an 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

  • txfilter = EngeeComms.RaisedCosineTransmitFilter() — returns a system object that interpolates the input signal using an FIR filter with a raised cosine transmission, with the properties by default. The filter uses an efficient polyphase FIR filter structure and has a unit energy.

    Example:

    txfilter = EngeeComms.RaisedCosineTransmitFilter(RolloffFactor = 1.0,FilterSpanSymbols = 2,OutputSamplesSymbol = 3,LinearAmplitudeFilterGain = 1.0)
  • txfilter = EngeeComms.RaisedCosineTransmitFilter(Name=Value) — creates a system object with the specified property Name, set to the specified value Value. You can specify additional arguments as a name-value pair in any order (Name1=Value1,…​,NameN=ValueN). For example, EngeeComms.RaisedCosineTransmitFilter(FilterSpanSymbols =15) Configures the FIR filter system object with an elevated cosine transmission with a filtering range set to 15 characters.

    Example:

    txfilter = EngeeComms.RaisedCosineTransmitFilter(FilterSpanSymbols =15)

Usage

  • y = txfilter(X) — Applies pulse shaping by interpolating the input signal using an elevated cosine FIR filter. Interpolated signal values are obtained at the output.

    Example:

    y = step!(txfilter, 0.0, [3.14, 2.0])

Arguments

Input arguments

X — input signal

+ column vector | the matrix

Details

An input signal specified as a column vector or matrix on , where — this is the number of input samples per signal channel, and — number of signal channels.

For the input signal in the form of a matrix on the object treats the columns of the input matrix as independent channels.

This system object accepts input data of variable size. After locking the object, you can change the size of each input channel, but you cannot change the number of channels.

Типы данных

Float64, Float32

Support for complex numbers

Yes

Output arguments

Y — output signal

+ column vector | the matrix

Details

The output signal returned as a column vector or matrix on , where equal to × OutputSamplesPerSymbol. — the number of input samples per signal channel, and — number of signal channels.

The object interpolates and filters each channel by the first dimension, and then generates an output matrix on . The output signal has the same data type as the input signal.

Properties

# RolloffFactor — smoothing factor
Real number

Details

A smoothing factor specified as a scalar in the range [0, 1].

# LinearAmplitudeFilterGain — linear filter gain
Real number

Details

The linear filter gain factor of a filter, specified as a positive scalar. The object designs a raised cosine filter having unit energy and then applies the linear filter gain to obtain the final tap gain values.

# FilterSpanSymbols — filter range in characters
Real number

Details

The range of the filter in symbols, specified as a positive integer. This object truncates the infinite impulse response (IIR) of an ideal raised cosine filter to an impulse response that spans the number of symbols specified by this property.

# OutputSamplesSymbol — output counts per character
Real number

Details

The number of output counts per character specified as a positive integer.

Methods

Common to all system objects

step!

Run the algorithm of the system object