liquid_vectorcf

Variants: liquid_vectorcf, liquid_vectorf

Public Functions

void liquid_vectorcf_init(float complex _c, float complex * _x, unsigned int _n)
void liquid_vectorcf_add(float complex * _x, float complex * _y, unsigned int _n, float complex * _z)
void liquid_vectorcf_addscalar(float complex * _x, unsigned int _n, float complex _c, float complex * _y)
void liquid_vectorcf_mul(float complex * _x, float complex * _y, unsigned int _n, float complex * _z)
void liquid_vectorcf_mulscalar(float complex * _x, unsigned int _n, float complex _c, float complex * _y)
void liquid_vectorcf_cexpj(float * _theta, unsigned int _n, float complex * _x)
void liquid_vectorcf_carg(float complex * _x, unsigned int _n, float * _theta)
void liquid_vectorcf_abs(float complex * _x, unsigned int _n, float * _y)
float liquid_vectorcf_sumsq(float complex * _x, unsigned int _n)
float liquid_vectorcf_norm(float complex * _x, unsigned int _n)
float liquid_vectorcf_pnorm(float complex * _x, unsigned int _n, float _p)
void liquid_vectorcf_normalize(float complex * _x, unsigned int _n, float complex * _y)

Interfaces

void liquid_vectorcf_init(float complex _c, float complex * _x, unsigned int _n)

Initialize vector with scalar: x[i] = c (scalar)

  • _c :
  • _x :
  • _n :

void liquid_vectorcf_add(float complex * _x, float complex * _y, unsigned int _n, float complex * _z)

Add each element pointwise: z[i] = x[i] + y[i]

  • _x :
  • _y :
  • _n :
  • _z :

void liquid_vectorcf_addscalar(float complex * _x, unsigned int _n, float complex _c, float complex * _y)

Add scalar to each element: y[i] = x[i] + c

  • _x :
  • _n :
  • _c :
  • _y :

void liquid_vectorcf_mul(float complex * _x, float complex * _y, unsigned int _n, float complex * _z)

Multiply each element pointwise: z[i] = x[i] * y[i]

  • _x :
  • _y :
  • _n :
  • _z :

void liquid_vectorcf_mulscalar(float complex * _x, unsigned int _n, float complex _c, float complex * _y)

Multiply each element with scalar: y[i] = x[i] * c

  • _x :
  • _n :
  • _c :
  • _y :

void liquid_vectorcf_cexpj(float * _theta, unsigned int _n, float complex * _x)

Compute complex phase rotation: x[i] = exp{j theta[i]}

  • _theta :
  • _n :
  • _x :

void liquid_vectorcf_carg(float complex * _x, unsigned int _n, float * _theta)

Compute angle of each element: theta[i] = arg{ x[i] }

  • _x :
  • _n :
  • _theta :

void liquid_vectorcf_abs(float complex * _x, unsigned int _n, float * _y)

Compute absolute value of each element: y[i] = |x[i]|

  • _x :
  • _n :
  • _y :

float liquid_vectorcf_sumsq(float complex * _x, unsigned int _n)

Compute sum of squares: sum{ |x|^2 }

  • _x :
  • _n :

float liquid_vectorcf_norm(float complex * _x, unsigned int _n)

Compute l-2 norm: sqrt{ sum{ |x|^2 } }

  • _x :
  • _n :

float liquid_vectorcf_pnorm(float complex * _x, unsigned int _n, float _p)

Compute l-p norm: { sum{ |x|^p } }^(1/p)

  • _x :
  • _n :
  • _p :

void liquid_vectorcf_normalize(float complex * _x, unsigned int _n, float complex * _y)

Scale vector elements by l-2 norm: y[i] = x[i]/norm(x)

  • _x :
  • _n :
  • _y :