Engee documentation

Tapped Delay

Delays a scalar signal for several calculation steps and outputs all delayed versions.

tapped delay

Description

Block Tapped Delay delays the input signal for the specified number of sampling periods and provides an output signal for each delay. For example, if you specify 4 for the parameters Number of delays и Oldest for Order output vector starting with, the block provides four outputs - the first delayed by four sample periods, the second delayed by three, and so on. Use this block to sample a signal over time, or to resample a signal at a different rate.

The block takes a single signal (scalar, vector, or matrix) as input and generates an output vector containing the data for each incremental delay. Specify the order of the delayed signals in the output vector using the parameters Order output vector starting with as follows:

  • Oldest - orders the output vector starting with the oldest version and ending with the newest.

  • Newest - orders the output vector from the newest version to the oldest version.

Set the output vector for the first sampling period using the parameters Initial condition. Careful selection of this parameter can mitigate undesirable output behaviour.

Specify the time between samples using the Sample time parameters. Specify the number of delays using the Number of delays parameters. Each delay is equivalent to a discrete time operator , which represents a block Unit Delay.

If the parameters Number of delays is -1, the output singal inherits the dimensionality of the input signal. In this case vectorisation becomes available. But at the same time the dimensionality Initial condition, , must not change the dimensionality of the output signal. That is, for example, if the input is a 2 by 2 matrix, and is a vector of length 2, then the output dimension is equal to the input - 2 by 2, and the value of is propagated to the corresponding dimension. But if the input is a vector of length 2, and is a 2 by 2 matrix, the block will generate an error, because such a configuration will require a 2 by 2 signal at the output, which will change the dimensionality of the input signal.

Ports

Input

# IN_1 — input signal
scalar | vector | matrix

Details

Input signal for delay.

Data types

Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Int128, UInt128, Bool, Fixed-point.

Complex numbers support

Yes

Output

# OUT_1 — delayed input signal options
scalar | vector | matrix

Details

All versions of the delayed input signal. Use the parameters *Order output vector starting with*to specify the order of the delayed signals in the output vector.

Data types

Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Int128, UInt128, Bool, Fixed-point.

Complex numbers support

Yes

Parameters

Main

# Initial condition — initial value of the output signal
Scalar / array of real and/or complex numbers

Details

Initial value of the output signal. Parameters Initial condition is converted from Float64 to the input data type offline using round-to-nearest and saturation.

Default value

0.0

Program usage name

vinit

Tunable

Yes

Evaluatable

Yes

# Sample time — interval between calculation steps
SampleTime (real number / vector of two real numbers)

Details

Specify the interval between calculation steps. To inherit the interval between calculation steps, set this parameters to -1.

Default value

-1

Program usage name

samptime

Tunable

No

Evaluatable

Yes

# Number of delays — number of discrete-time operators
Real number

Details

Specify the number of discrete time operators as a positive scalar or -1 for inherited.

Default value

4

Program usage name

NumDelays

Tunable

No

Evaluatable

Yes

# Order output vector starting with — withdrawal order
Oldest | Newest

Details

Specify whether to output the oldest or newest version first.

Values

Oldest | Newest

Default value

Oldest

Program usage name

DelayOrder

Tunable

No

Evaluatable

No

# Include current input in output vector — include the current input in the output vector
Logical

Details

Select this check box to include the current input in the output vector.

Default value

false (switched off)

Program usage name

includeCurrent

Tunable

No

Evaluatable

No