---
title: KesSolverCreate
description: "KesReturnCode KesSolverCreate(KesSolver *solver, KesScalarType type, KesSolverAlgorithm algo);"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/240RC2/accel/kunpengaccel_kml_16_0732.html
sourcePath: /source/zh/kunpengboostkithistory/240RC2/accel/kunpengaccel_kml_16_0732.html
indexId: 0a2a63ce43d40542e9a9ccf9a83c8762a4d8a87de6089ad041a096e81ea863ca76
---
# KesSolverCreate

#### 接口定义

KesReturnCode KesSolverCreate(KesSolver *solver, KesScalarType type, KesSolverAlgorithm algo);


#### 接口说明

创建求解器，并指定数据类型、求解算法。


#### 参数

| 参数名 | 类型 | 描述 | 输入/输出 |
| --- | --- | --- | --- |
| solver | KesSolver \* | 求解器句柄，不能为空指针。 | 输入/输出 |
| type | KesScalarType | 数据类型。 | 输入 |
| algo | KesSolverAlgorithm | 求解器算法。 | 输入 |


| KesSolverAlgorithm | 类型描述 | 适用场景 |
| --- | --- | --- |
| KES\_LOBPCG | LOBPCG算法 | 所求特征值个数较少；计算节点少。 |
| KES\_LOBPCG\_BATCH | 分块LOBPCG算法 | 所求特征值个数较多；最大迭代步数多；计算节点少。 |
| KES\_PPCG | PPCG算法 | 所求特征值个数较多；最大迭代步数少；计算节点多。 |


| KesScalarType | 类型描述 | 对应C的类型 |
| --- | --- | --- |
| KES\_SCALAR\_FP32 | 单精度实数浮点类型。 | float |
| KES\_SCALAR\_FP32C | 单精度复数浮点类型。 | float \_Complex |
| KES\_SCALAR\_FP64 | 双精度实数浮点类型。 | double |
| KES\_SCALAR\_FP64C | 双精度复数浮点类型。 | double \_Complex |
