---
title: KmlScaissCsiInitStripes?I
description: "初始化数据结构，并将用户提供的系数矩阵关联到求解系统中，初始化集群版的Csi方法时，每个进程使用局部的CSR格式矩阵。"
url: https://www.hikunpeng.com/document/detail/zh/hpchistory/hpckit/develop2400/kunpengaccel_kml_0886.html
sourcePath: /source/zh/hpchistory/hpckit/develop2400/kunpengaccel_kml_0886.html
indexId: a83dd9c1177a549829f913e72e0137d6b7215e8818b684f1ce46d60fc3fed06d67
---
# KmlScaissCsiInitStripes?I

初始化数据结构，并将用户提供的系数矩阵关联到求解系统中，初始化集群版的Csi方法时，每个进程使用局部的CSR格式矩阵。

#### 接口定义

C Interface：

int KmlScaissCsiInitStripesSI(KmlScasolverTask **handle, int n, int nstripes, const int *stripeWidth, const int *stripeRow, const float * const *a, const int * const *ja, const int * const *ia, MPI_Comm comm);


int KmlScaissCsiInitStripesDI(KmlScasolverTask **handle, int n, int nstripes, const int *stripeWidth, const int *stripeRow, const double * const *a, const int * const *ja, const int * const *ia, MPI_Comm comm);


#### 参数

| 参数名 | 类型 | 描述 | 输入/输出 |
| --- | --- | --- | --- |
| handle | KmlScasolverTask \*\* | 求解器句柄，handle不可为空指针。 | 输入/输出 |
| n | int | 矩阵A的维度。 | 输入 |
| nstripes | int | nstripes为存储在当前MPI进程中的矩阵数，目前只能取1。 | 输入 |
| stripeWidth | int \* | stripeWidth为当前MPI进程中的矩阵行数。该变量的生命周期与handle相同。 | 输入 |
| stripeRow | int \* | stripeRow为当前MPI进程中的矩阵的全局行索引，即首行在全局矩阵中对应行数。该数组的生命周期与handle相同。 | 输入 |
| a | 在KmlScaissCsiInitStripesSI中为const float \* const \* 在KmlScaissCsiInitStripesDI中为const double \* const \* | a为维度为非零元素的个数的数组，a[i]为第i个非零元的值。该数组的生命周期与handle相同。 | 输入 |
| ja | const int \* const \*。 | ja为维度为非零元素的个数的数组，ja[i]为第i个非零元的列号。该数组的生命周期与handle相同。 | 输入 |
| ia | const int \* const \*。 | ia为stripeWidth+1维数组，ia[i]为第i行第一个非零元在所有非零元中的索引，ia[0]=0。该数组的生命周期与handle相同。 | 输入 |
| comm | MPI\_Comm | 为MPI进程通信域。 | 输入 |


#### 返回值

| 返回值 | 类型 | 描述 |
| --- | --- | --- |
| KMLSS\_NO\_ERROR | int | 正常执行。 |
| KMLSS\_NULL\_ARGUMENT | int | handle，stripeWidth，stripeRow，a，ja，ia中存在空参数。 |
| KMLSS\_BAD\_N | int | 参数n不是正整数。 |
| KMLSS\_NONZERO\_INDEXING | int | 参数ia的首元素不是0。 |
| KMLSS\_NOT\_IMPLEMENTED | int | 参数nstripes不等于1。 |
| KMLSS\_NO\_MEMORY | int | 内存不足。 |


#### 依赖

#include "kml_scaiss.h"

示例代码请参见示例。
