我要评分
获取效率
正确性
完整性
易理解

v?log1p

Compute the element-wise base-e logarithm of vector x that is increased by 1.

Interface Definition

C interface:

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

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

Parameters

Parameter

Type

Description

Input/Output

len

Integer

Number of elements in the input vector.

If len ≤ 0, an invalid parameter error is reported and the function returns.

Input

src

  • Single-precision floating-point type for vslog1p
  • Double-precision floating-point type for vdlog1p

Input vector src with length len.

If the pointer is null, a null pointer error is reported and the function returns.

Input

dst

  • Single-precision floating-point type for vslog1p
  • Double-precision floating-point type for vdlog1p

Output vector dst with length len.

If the pointer is null, a null pointer error is reported and the function returns.

Output

Return Value

Return the result of . For special values, see the following table.

Input Value (src)

Output Value (dst)

-1

-inf

<-1

nan

+0

+0

-0

-0

-inf

nan

+inf

+inf

nan

nan

Dependencies

C: "kvml.h"

Example

C interface:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
    #define N 4
    const float src[N] = {-2.2f, 1.0f, +INFINITY, -0.0f};
    float dst[N] = {0};

    vslog1p(N, src, dst);
    printFArr("input1:", N, src);
    printFArr("output:", N, dst);

    /** 
     *  input1:  -2.200    1.000      inf   -0.000
     *  output:     nan    0.693      inf   -0.000 
     * 
     */