v?conj
矢量计算输入复数的共轭值。
接口定义
C interface:
void vcconj(const int len, const float complex* src, float complex* dst);
void vzconj(const int len, const double complex* src, double complex* dst);
参数
参数名 |
类型 |
描述 |
输入/输出 |
---|---|---|---|
len |
整型数 |
表示输入向量的元素个数。 len≤0时会提示len无效并返回。 |
输入 |
src |
|
输入向量src,向量长度为len。 若为空指针,会提示空指针错误并返回。 |
输入 |
dst |
|
输出dst,向量长度为len。 若为空指针,会提示空指针错误并返回。 |
输出 |
输出结果
- 每一个运算值返回输入复数的共轭值,计算公式为conj(x + yi) =(x - yi)。
- 其他特殊值参考如下说明。
输入实部(src->real)
输入虚部(src->imag)
输出实部(dst->real)
输出虚部(dst->imag)
任意值xR
nan
xR
nan
任意值xR
0
xR
-0
任意值xR
-0
xR
+0
任意值xR
-inf
xR
inf
任意值xR
+inf
xR
-inf
依赖
C: "kvml.h"
示例
C interface:
#define N 4 const complex float src[N] = { __builtin_complex(-8.0f, 25.0f), __builtin_complex(-2.1f, +INFINITY), __builtin_complex(2.6f, 25.0f), __builtin_complex(+0.1f, NAN) }; float complex dst[N] = {0}; vcconj(N, src, dst); printFCArr("input: ", N, src); printFCArr("output:", N, dst); /** * input: (-8.000,25.000) (-2.100, inf) (2.600,25.000) (0.100, nan) * output:(-8.000,-25.000) (-2.100, -inf) (2.600,-25.000) (0.100, -nan) */
父主题: 函数定义