Programmer Guide/SPU Reference/AVR: Difference between revisions

From STX Wiki
Jump to navigationJump to search
No edit summary
Line 43: Line 43:
:;exponential average:
:;exponential average:
::<var>TYP</var>=<code>0</code> or <code>linear</code>
::<var>TYP</var>=<code>0</code> or <code>linear</code>
::<code>0</code>&le;<var>T</var>&le;<code>1</code>; <var>T</var> is the averaging factor  
::<code>0</code>&lt;<var>T</var>&lt;<code>1</code>; <var>T</var> is the averaging factor  
::<math>Y[i,j]_t =  
::<math>Y[i,j]_t =  
\begin{cases}  
\begin{cases}  
\frac{1}{t+1}\sum_{z=0}^t X[i,j]_z & \mbox{if }0\leqslant t < T \\
\frac{1}{t+1}\sum_{z=0}^t X[i,j]_z & \mbox{if }0\leqslant t < T\mbox{ (or T out of range}\\
\frac{1}{T}\sum_{z=0}^{T-1}X[i,j]_{t-z} & \mbox{if }t\geqslant T  
\frac{1}{T}\sum_{z=0}^{T-1}X[i,j]_{t-z} & \mbox{if }t\geqslant T  
\end{cases}
\end{cases}

Revision as of 10:33, 6 May 2011

Average input X over evaluation cycles.

[SPU SUM X TYP T RS OUT Y]

In: X a number, vector or matrix containing the data to be averaged
TYP a number or string; defines the averaging method
T averaging parameter (number); depends on method
RS reset flag (number)
Out: Y averaged input X; same type as X
Description

The averaging algorithm is defined by the inputs TYP and T. The atom averages the elements X[i,j]t over evaluation cycles t (i=row index, j=column index, t=cycle counter) and stores the averaged value in the element Y[i,j]t.

The cycle counter t is initialized with 0 and incremented by 1 after each evaluation cycle. The cycle counter is reset, if the input RS is set to a value greater than 0. The input RS is checked each time the SPU is started.

infinite average
TYP=0 or linear
T=0
{\displaystyle Y[i,j]_{t}={\begin{cases}X[i,j]_{t}&{\mbox{if }}t=0\\{\frac {1}{t+1}}(t.Y[i,j]_{t-1}+X[i,j]_{t})&{\mbox{if }}t>0\end{cases}}}
running average
TYP=0 or linear
T>0; T is the (integer) number of averaging cycles
{\displaystyle Y[i,j]_{t}={\begin{cases}{\frac {1}{t+1}}\sum _{z=0}^{t}X[i,j]_{z}&{\mbox{if }}0\leqslant t<T\\{\frac {1}{T}}\sum _{z=0}^{T-1}X[i,j]_{t-z}&{\mbox{if }}t\geqslant T\end{cases}}}
exponential average
TYP=0 or linear
0<T<1; T is the averaging factor
{\displaystyle Y[i,j]_{t}={\begin{cases}{\frac {1}{t+1}}\sum _{z=0}^{t}X[i,j]_{z}&{\mbox{if }}0\leqslant t<T{\mbox{ (or T out of range}}\\{\frac {1}{T}}\sum _{z=0}^{T-1}X[i,j]_{t-z}&{\mbox{if }}t\geqslant T\end{cases}}}
See also

<SP-atoms>

Navigation menu

Personal tools