Adelsbach/VSIPL
Core Programming Reference Guide
DD-00016-015
Core

This manual is preliminary and incomplete.
While our Core implementation implements all functions given in the standard we are still working on completing this documentation.

Please refer to the VSIPL standard for a complete function reference of the Core profile until we have completed work on this documentation.

4.3.19 vsip_dvexpoavg_p - Vector Exponential Average

void vsip_vexpoavg_f(vsip_scalar_f alpha, const vsip_vview_f *b, const vsip_vview_f *c); 
void vsip_cvexpoavg_f(vsip_cscalar_f alpha, const vsip_cvview_f *b, const vsip_cvview_f *c);
Description

This function computes the exponential average (also known as exponential moving average or first-order IIR filtering) of a vector. It updates the accumulator vector c using the input vector b and a smoothing factor α. The operation performs element-wise exponential averaging:

ci= α·bi+(1- α)·ci

for all i from 0 to n-1, where n is the length of the vectors, α is the smoothing factor 0< α≤ 1, bi is the current input value, and ci is the accumulated average value.

The smoothing factor α determines the weight of the new data relative to the accumulated average:

Parameters
Notes