LIMITER

From STX Wiki
Jump to navigationJump to search

Apply limiter function to a signal.

[SPU LIMITER X TYPE MAX LIM OUT Y Q]

input description data type value type default value
X input signal number, vector variable
TYPE limiter function
(RECTANGLE, ATAN, EXPONENTIAL)
number (int.), string constant 0 (= RECTANGLE)
MAX maximum value; 0 < MAX number constant 1
LIM limiter start value; 0 < LIMMAX number constant 1
output description data type value type comment
Y limited signal same type as A variable
Q overload ratio number variable
Description

This SP-atom applies a non-linear magnitude weighting (= limiter function) to the signal. The limiter function is only applied if the absolute value of the signal magnitude is higher than the specified limiter start magnitude LIM. For the limiter function, the following algorithm is used:

{\displaystyle y_{i}={\begin{cases}x_{i}&{\mbox{ if }}|x_{i}|\leqslant LIM\\sign(x_{i}).f({\frac {|x_{i}|}{MAX}})&{\mbox{ otherwise}}\end{cases}}}

The limiter function is selected by the input TYPE.

TYPE limiter function f(zi)
0 or RECTANGLE {\displaystyle k\!}
1 or ATAN {\displaystyle k+(1-k)\cdot {\frac {2}{\pi }}\cdot atan\left({\frac {z-k}{1-k}}\cdot {\frac {\pi }{2}}\right)}
2 or EXPONENTIAL {\displaystyle 1-(1-k)\cdot e^{-frac{z-k}{1-k}}}
with: {\displaystyle z={\frac {|x_{i}|}{MAX}},k={\frac {LIM}{MAX}}}


The output Q (overload ratio) is set to the relative number of limited (changed) samples.

{\displaystyle Q={\frac {changedSamples}{processedSamples}}}
See also

<SP-atoms>

Navigation menu

Personal tools