KmlScadssSolve

对矩阵做回代求解,需先使用KmlScadssFactorize进行分解。

接口定义

C Interface:

int KmlScadssSolve(KmlScadssSolver *solver, KmlScasolverMatrix *b, KmlScasolverMatrix *x, const KmlDssSolveOption *basicOptions, const KmlScadssSolveOption *scaOptions);

参数

参数名

类型

描述

输入/输出

solver

KmlScadssSolver *

由KmlScadssInit创建的求解器句柄。

输入

b

KmlScasolverMatrix *

右端向量结构体指针,本质是矩阵,由KmlScasolverMatrixCreate函数创建,不可为空指针。

输入

x

KmlScasolverMatrix *

解空间结构体指针,本质是矩阵,由KmlScasolverMatrixCreate函数创建,输入不可为空指针,输出为包含求解出的x的数值数组。

输出

basicOptions

KmlDssSolveOption *

分解阶段基础配置选项,不可为空指针,具体内容如4.3.3.10.2.4-表1所示。

输入

scaOptions

KmlScadssSolveOption *

分解阶段分布式配置选项,具体内容如表1所示(暂无配置项)。

输入

表1 KmlScadssFactorizeOption结构体字段描述

字段名

类型

描述

fieldMask

uint64_t

配置生效的字段掩码。非0的位代表配置对应字段指定的值,0的位代表使用默认值,暂无可配置的掩码位。

返回值

返回值

类型

描述

KMLSS_NO_ERROR

int

正常执行。

KMLSS_INTERNAL_ERROR

int

内部错误。

KMLSS_NULL_ARGUMENT

int

solver,b,x,basicOptions,scaOptions存在空参数。

依赖

#include "kml_scadss.h"