v?abs

计算输入向量的绝对值或模。

接口定义

C interface:

void vsabs(const int len, const float *src, float *dst);

void vdabs(const int len, const double *src, double *dst);

void vcabs(const int len, const float complex *src, float*dst);

void vzabs(const int len, const double complex *src, double*dst);

参数

参数名

类型

描述

输入/输出

len

整型数

表示输入向量的元素个数。

len≤0时会提示len无效并返回。

输入

src

  • 在vsabs中是单精度浮点类型。
  • 在vdabs中是双精度浮点类型。
  • 在vcabs中是复数单精度浮点类型。
  • 在vzabs中是复数双精度浮点类型。

输入向量src,向量长度为len。

若为空指针,会提示空指针错误并返回。

输入

dst

  • 在vsabs中是单精度浮点类型。
  • 在vdabs中是双精度浮点类型。
  • 在vcabs中是单精度浮点类型。
  • 在vzabs中是双精度浮点类型。

输出dst,向量长度为len。

若为空指针,会提示空指针错误并返回。

输出

输出结果

依赖

C: "kvml.h"

示例

C interface:
    #define N 4
    const float src[N] = {-1.4f, 27.8f, -INFINITY, NAN};
    float dst[N] = {0};

    vsabs(N, src, dst);
    printFArr("input :", N, src);
    printFArr("output:", N, dst);
 
    /** 
     *  input :  -1.400   27.800     -inf      nan 
     *  output:   1.400   27.800      inf      nan
     * 
     */