新客立减

输电与有限元技术论坛

dcc

提供

1.

1.LAPACK

LAPACK

简介

1.1

概述

LAPACK

API

支持两种形式:

一是标准的

ANSI

C

另一种是标准的

FORTRAN77

LAPACK

是开源的,官方网站是:

http://www.netlib.org/lapack/

每个

LAPACK

例程都有四个形式,具体描述如下:

精度

例程前缀

REAL

精度

S

REAL

DOUBLE

精度

D

COMPLEX

单精度

C

COMPLEX

双精度

Z

下面例程是经过优化的。

DGETRF

对一般矩阵进行

LU

分解。

DGETRS

线性方程组求解。

DGETRI

LU

分解求解一般矩阵的逆矩阵。

DGEQRF

对一般矩阵进行

QR

分解。

DGELQF

对一般矩阵进行

LQ

分解。

DPOTRF

对对称正定矩阵进行

Cholesky

分解。

DPOTRS

对线性方程组(对称正定)求解。

1.2

函数的命名规则:

LAPACK

里的每个函数名已经说明了该函数的使用规则。所有函数都是以

XYYZZZ

的形

式命名,对于某些函数,没有第六个字符,只是

XYYZZ

的形式。

第一个字母

X

代表以下的数据类型:

S

REAL

,单精度实数

D

DOUBLE

PRECISION

,双精度实数

C

COMPLEX

,单精度复数

Z

COMPLEX*16

DOUBLE

COMPLEX

注:

在新版

LAPACK

中含有使用重复迭代法的函数

DSGESV

ZCDESV

2

个字母表示使用的精度:

DS

输入数据是

double

双精度,算法使用单精度

ZC

输入数据是

complex*16

,算法使用

complex

单精度复数

接下面两个字母

YY

代表数组的类型。

BD

bidiagonal

,双对角矩阵

DI

diagonal

,对角矩阵

GB

general

band

,一般带状矩阵

GE

general

(i.e.,

unsymmetric,

in

some

cases

rectangular)

,一般情形(即非对称,

在有些情形下为矩形)

GG

general

matrices,

generalized

problem

(i.e.,

a

pair

of

general

matrices)

,一般矩

阵,广义问题(即一对一般矩阵)

GT

general

tridiagonal

,一般三对角矩阵

HB

(complex)

Hermitian

band

(复数)厄尔米特带状阵

HE

(complex)

Hermitian

(复数)厄尔米特矩阵