---
title: yn
description: "计算入参的Bessel n阶第二类函数，x > 0，入参为实数。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/240RC1/accel/kunpengaccel_kml_16_0685.html
sourcePath: /source/zh/kunpengboostkithistory/240RC1/accel/kunpengaccel_kml_16_0685.html
indexId: 0249df1be1743d454ef99ce1596d7115f5689737d50f5a81f9f5bbb4fd7fa58d76
---
# yn

计算入参的Bessel n阶第二类函数，x > 0，入参为实数。

#### 接口定义

C interface：

float ynf(int n, float x);

double yn(int n, double x);


#### 参数

| 参数名 | 类型 | 描述 | 输入/输出 |
| --- | --- | --- | --- |
| n | 在ynf中，n是整型类型。 在yn中，n是整型类型。 | 表示计算的阶数。 | 输入 |
| x | 在ynf中，x是单精度浮点类型。 在yn中，x是双精度浮点类型。 | 表示输入数据的浮点值。 | 输入 |


#### 返回值

计算rSign = ((n & 1) & nSign) * (-1)，其中nSign = n > 0?0:1。

- 当输入x<0，返回nan。
- 输入x为0，返回-inf*rSign。
- 输入x为inf，返回0。
- 输入x为nan，返回nan。


#### 依赖

C: "km.h"


#### 示例

C interface：

```
printf("yn(1, 0.0) = %.15f\n", yn(1, 0.0));
printf("yn(2, -0.0) = %.15f\n", yn(2, -0.0));
printf("yn(3, 1.5) = %.15f\n", yn(3, 1.5));
printf("yn(4, -2.5) = %.15f\n", yn(4, -2.5));
printf("yn(5, INFINITY) = %.15f\n", yn(5, INFINITY));
printf("yn(6, -INFINITY) = %.15f\n", yn(6, -INFINITY));
printf("yn(7, NAN) = %.15f\n", yn(7, NAN));
/**
* yn(1, 0.0) = -inf
* yn(2, -0.0) = -inf
* yn(3, 1.5) = -2.073541399060686
* yn(4, -2.5) = nan
* yn(5, INFINITY) = 0.000000000000000
* yn(6, -INFINITY) = nan
* yn(7, NAN) = nan
*/
```
