VecLib DSP Libraries

 

VecLib is a large set of routines offering high-performance, optimised implementations of vector elementwise functions.

The library contains 4576 functions of 2, 3, or 4 operands, real or complex, scalar or vector.

The functions have the following forms:

r[i] = a[i] op1 b[i], i = 1, ..., N

r[i] = a[i] op1 (b[i] op2 c[i]), i = 1, ..., N

r[i] = (a[i] op1 b[i]) op2 c[i], i = 1, ..., N

r[i] = (a[i] op1 b[i]) op2 (c[i] op3 d[i]), i = 1, ..., N, where

 

 

Library Contents

Functions of 2 operands:

Real functions of 3 operands:

Complex functions of 3 operands:

Real vector functions of 4 operands:

Complex vector functions of 4 operands:

Naming Convention

VecLib is a large library, but using it is simplified by the systematic naming convention. Function names are made up of the components describing the function:

Here are a few examples of function names: r, a, b, c are vectors, ß (beta) is a scalar.

Function Name Action Comment
vrpbrmrb r[i] = a[i] * (b[i] - c[i]) all parameters real
vcpbjmjb r[i] = a[i] + (b[i]' - c[i]') all parameters complex
vcpbrtJb r[i] = a[i] + (b[i] * ß') r, a and beta are complex, b is real

 

Implementations