EN
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助
鲲鹏小智

?potrf

计算对称正定矩阵或者Hermite正定矩阵的Cholesky分解。

或者上三角矩阵,下三角矩阵。

接口定义

C Interface:

void spotrf_(const char *uplo, const int *n, float *a, const int *lda, int *info);

void dpotrf_(const char *uplo, const int *n, double *a, const int *lda, int *info);

void cpotrf_(const char *uplo, const int *n, float _Complex *a, const int *lda, int *info);

void zpotrf_(const char *uplo, const int *n, double _Complex *a, const int *lda, int *info);

Fortran Interface:

SPOTRF( uplo, n, a, lda, info);

DPOTRF( uplo, n, a, lda, info);

CPOTRF( uplo, n, a, lda, info);

ZPOTRF( uplo, n, a, lda, info);

参数

参数名

类型

描述

输入/输出

uplo

字符型

'U':保存A的上三角矩阵。

'L':保存A的下三角矩阵。

输入

n

整数型

对称矩阵A的行数或列数。

输入

a

  • 在spotrf中为单精度浮点型数组。
  • 在dpotrf中为双精度浮点型数组。
  • 在cpotrf中为单精度复数型数组。
  • 在zpotrf中为双精度复数型数组。
  • 调用前保存待分解的矩阵A。
  • 当uplo = 'U',调用后对角线以及对角线以上的部分保存上三角矩阵U。
  • 当uplo = 'L',调用后对角线以及对角线以下的部分保存下三角矩阵L。

输入/输出

lda

整数型

A的leading dimension大小,要求lda≥max(1, n)。

输入

info

整数型

执行结果:

  • 等于0:退出成功。
  • 小于0:第-info个参数值不合法。
  • 大于0:A中info大小的主子式非正定,无法完成分解。

输出

依赖

#include "klapack.h"

示例

C Interface:

char uplo = 'L' 
int n = 4; 
int lda = 4; 
int info = 0; 
/* 
* A (stored in column-major): 
*  231.8009    33.9545    9.4153   11.1156    
*   33.9454   162.2902   6.6684   53.2023     
*   9.4153   6.6684  100.3220  71.5384   
*   11.1156   53.2023    71.5384  123.4425  
*/ 
double a[] = {231.8009,   33.9545,   9.4143,   11.1156, 
              33.9495,  162.2902,   6.6684,   53.2033, 
              9.4143,    6.6684,  100.322,   71.5384, 
              11.1156,   53.2033,  71.5384,  106.5638 }; 
 dpotrf_(&uplo, &n, a, &lda, &info); 
/* 
* Output: 
*  15.2250   33.9495   9.4143   11.1156 
*   2.2302   12.5426   6.6684   53.2033 
*   0.6183    0.4217   9.9881   71.5384 
*   0.7301     4.112   6.9436     6.396 
*/

Fortran Interface:

CHARACTER :: uplo = "L" 
PARAMETER (n = 4) 
PARAMETER (lda = 4) 
INTEGER :: info = 0 
REAL(8) :: a(n,n) 
* A (stored in column-major): 
*  231.8009    33.9545    9.4153   11.1156    
*   33.9454   162.2902   6.6684   53.2023     
*   9.4153   6.6684  100.3220  71.5384   
*   11.1156   53.2023    71.5384  123.4425  
  
DATA a / 231.8009,  33.9545,  9.4143, 11.1156, 
 $           33.9495,  162.2902, 6.6684, 53.2033, 
 $           9.4143,    6.6684,  100.322, 71.5384, 
 $           11.1156,   53.2033, 71.5384, 106.5638 / 
 EXTERNAL DPOTRF 
 CALL DPOTRF (uplo, n, a, lda, info); 
* Output: 
*  15.2250   33.9495   9.4143   11.1156 
*   2.2302   12.5426   6.6684   53.2033 
*   0.6183    0.4217   9.9881   71.5384 
*   0.7301     4.112   6.9436     6.396
搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词