KmlIssPcStructilu0Apply
ilu0预条件回代,计算
接口定义
C Interface:
int KmlIssPcStructilu0Apply(KmlIssPsStructilu0Handle gSmoother, float *bb, float *xx);
参数
| 参数名 | 类型 | 描述 | 输入/输出 | 
|---|---|---|---|
| gSmoother | KmlIssPsStructilu0Handle | 求解器句柄,handle不可为空指针。 | 输入/输出 | 
| bb | float * | 输入向量r。 | 输入 | 
| xx | float * | 输出向量r'。 | 输入/输出 | 
返回值
| 返回值 | 类型 | 描述 | 
|---|---|---|
| KMLSS_NO_ERROR | int | 正常执行。 | 
| KMLSS_NULL_ARGUMENT | int | 输入中存在空指针。 | 
依赖
#include "kml_struct_ilu.h"
示例
C Interface:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | int xl = 5; int yl = 5; int zl = 5; int xr = 6; int yr = 6; int zr = 6; int ybegin = 5; int yend = 6; int zbegin = 5; int zend = 6; float *v = (float*)malloc(sizeof(float) * 171); float *b = (float*)malloc(sizeof(float) * 9); float *x = (float*)malloc(sizeof(float) * 9); for (int i=0; i<171; i++) { v[i] = rand(); } for (int i=0; i<9; i++) { b[i] = rand(); x[i] = rand(); } KmlIssPsStructilu0Handle gSmoother; KmlIssPcStructilu0Setup(&gSmoother, v, &xl, &xr, &yl, &yr, &zl, &zr); KmlIssPcStructilu0Apply(gSmoother, b, x); | 
父主题: PRECOND