执行\(M\times N\)( \(M>N\)) 矩阵\(A = Q*R\)的QR分解,并求解矩阵方程\(A*X=B\)。
- 参数
-
src1 | 指向以行主序存储的输入矩阵\(A\)的指针。工作完成后,src1包含上三角\(N\times N\)矩阵\(R\)。src1的下三角将填充为基本反射器的向量。详情请参见[284]和Lapack的DGEQRF文档。 |
src1_step | 矩阵\(A\)两行之间的数据字节数。 |
m | 矩阵\(A\)的行数。 |
n | 矩阵\(A\)的列数。 |
k | \(M\times K\)矩阵\(B\)中右向量的个数。 |
src2 | 指向\(M\times K\)矩阵\(B\)的指针,它是系统\(A*X=B\)的右端项。\(B\)以行主序存储。如果src2是空指针,则只执行QR分解。否则,将求解系统,并将src1用作临时缓冲区,因此工作完成后,src2包含系统\(A*X=B\)的解\(X\)。 |
src2_step | 矩阵\(B\)两行之间的数据字节数。 |
dst | 指向基本反射器标量因子的连续\(N\times 1\)数组的指针。详情请参见[284]。 |
info | 指示分解是否成功。如果*info为零,则分解失败。 |
|
int | hal_ni_QR32f (float *src1, size_t src1_step, int m, int n, int k, float *src2, size_t src2_step, float *dst, int *info) |
|
int | hal_ni_QR64f (double *src1, size_t src1_step, int m, int n, int k, double *src2, size_t src2_step, double *dst, int *info) |
|
◆ hal_ni_QR32f()
int hal_ni_QR32f |
( |
float * | src1, |
|
|
size_t | src1_step, |
|
|
int | m, |
|
|
int | n, |
|
|
int | k, |
|
|
float * | src2, |
|
|
size_t | src2_step, |
|
|
float * | dst, |
|
|
int * | info ) |
|
内联 |
◆ hal_ni_QR64f()
int hal_ni_QR64f |
( |
double * | src1, |
|
|
size_t | src1_step, |
|
|
int | m, |
|
|
int | n, |
|
|
int | k, |
|
|
double * | src2, |
|
|
size_t | src2_step, |
|
|
double * | dst, |
|
|
int * | info ) |
|
内联 |