DASUM 取绝对值的总和。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | dx(*) | |||
integer(kind=ilp), | intent(in) | :: | incx |
DDOT 计算两个向量的点积。对于增量等于 1 使用展开循环。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | dx(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=dp), | intent(in) | :: | dy(*) | |||
integer(kind=ilp), | intent(in) | :: | incy |
DNRM2 通过函数名返回向量的欧几里得范数,使得 DNRM2 := sqrt( x'*x )
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx |
计算两个向量的内积,具有扩展精度累积和结果。返回 D.P. 点积,在 D.P. 中累积,对于 S.P. SX 和 SY DSDOT = sum for I = 0 to N-1 of SX(LX+IINCX) * SY(LY+IINCY),其中 LX = 1 如果 INCX >= 0,否则 LX = 1+(1-N)*INCX,LY 以类似的方式使用 INCY 定义。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=sp), | intent(in) | :: | sx(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=sp), | intent(in) | :: | sy(*) | |||
integer(kind=ilp), | intent(in) | :: | incy |
DZASUM 取复向量 (|Re(.)| + |Im(.)|) 的总和,并返回双精度结果。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=ilp), | intent(in) | :: | n | |||
complex(kind=dp), | intent(in) | :: | zx(*) | |||
integer(kind=ilp), | intent(in) | :: | incx |
DZNRM2 通过函数名返回向量的欧几里得范数,使得 DZNRM2 := sqrt( x*Hx )
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=ilp), | intent(in) | :: | n | |||
complex(kind=dp), | intent(in) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx |
DAXPY 常数乘以向量加上向量。对于增量等于 1 使用展开循环。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | da | |||
real(kind=dp), | intent(in) | :: | dx(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=dp), | intent(inout) | :: | dy(*) | |||
integer(kind=ilp), | intent(in) | :: | incy |
DCOPY 将向量 x 复制到向量 y。对于增量等于 1 使用展开循环。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | dx(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=dp), | intent(out) | :: | dy(*) | |||
integer(kind=ilp), | intent(in) | :: | incy |
DGBMV 执行矩阵向量运算之一 y := alphaAx + betay,或 y := alphaATx + betay,其中 alpha 和 beta 是标量,x 和 y 是向量,A 是一个 m 行 n 列的带状矩阵,具有 kl 个次对角线和 ku 个超对角线。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | trans | |||
integer(kind=ilp), | intent(in) | :: | m | |||
integer(kind=ilp), | intent(in) | :: | n | |||
integer(kind=ilp), | intent(in) | :: | kl | |||
integer(kind=ilp), | intent(in) | :: | ku | |||
real(kind=dp), | intent(in) | :: | alpha | |||
real(kind=dp), | intent(in) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda | |||
real(kind=dp), | intent(in) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=dp), | intent(in) | :: | beta | |||
real(kind=dp), | intent(inout) | :: | y(*) | |||
integer(kind=ilp), | intent(in) | :: | incy |
DGEMM 执行矩阵矩阵运算之一 C := alphaop( A )op( B ) + betaC,其中 op( X ) 是 op( X ) = X 或 op( X ) = X*T 之一,alpha 和 beta 是标量,A、B 和 C 是矩阵,其中 op( A ) 是一个 m 行 k 列的矩阵,op( B ) 是一个 k 行 n 列的矩阵,C 是一个 m 行 n 列的矩阵。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | transa | |||
character(len=1), | intent(in) | :: | transb | |||
integer(kind=ilp), | intent(in) | :: | m | |||
integer(kind=ilp), | intent(in) | :: | n | |||
integer(kind=ilp), | intent(in) | :: | k | |||
real(kind=dp), | intent(in) | :: | alpha | |||
real(kind=dp), | intent(in) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda | |||
real(kind=dp), | intent(in) | :: | b(ldb,*) | |||
integer(kind=ilp), | intent(in) | :: | ldb | |||
real(kind=dp), | intent(in) | :: | beta | |||
real(kind=dp), | intent(inout) | :: | c(ldc,*) | |||
integer(kind=ilp), | intent(in) | :: | ldc |
DGEMV 执行矩阵向量运算之一 y := alphaAx + betay,或 y := alphaATx + betay,其中 alpha 和 beta 是标量,x 和 y 是向量,A 是一个 m 行 n 列的矩阵。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | trans | |||
integer(kind=ilp), | intent(in) | :: | m | |||
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | alpha | |||
real(kind=dp), | intent(in) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda | |||
real(kind=dp), | intent(in) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=dp), | intent(in) | :: | beta | |||
real(kind=dp), | intent(inout) | :: | y(*) | |||
integer(kind=ilp), | intent(in) | :: | incy |
DGER 执行秩 1 运算 A := alphaxy**T + A,其中 alpha 是标量,x 是一个 m 元素向量,y 是一个 n 元素向量,A 是一个 m 行 n 列的矩阵。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=ilp), | intent(in) | :: | m | |||
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | alpha | |||
real(kind=dp), | intent(in) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=dp), | intent(in) | :: | y(*) | |||
integer(kind=ilp), | intent(in) | :: | incy | |||
real(kind=dp), | intent(inout) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda |
DROT 应用平面旋转。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(inout) | :: | dx(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=dp), | intent(inout) | :: | dy(*) | |||
integer(kind=ilp), | intent(in) | :: | incy | |||
real(kind=dp), | intent(in) | :: | c | |||
real(kind=dp), | intent(in) | :: | s |
计算使用以下公式 sigma = sgn(a) 如果 |a| > |b| = sgn(b) 如果 |b| >= |a| r = sigmasqrt( a2 + b2 ) c = 1; s = 0 如果 r = 0 c = a/r; s = b/r 如果 r != 0 子程序还计算 z = s 如果 |a| > |b|, = 1/c 如果 |b| >= |a| 且 c != 0 = 1 如果 c = 0 这允许从 z 中重建 c 和 s,如下所示:如果 z = 1,则设置 c = 0,s = 1。如果 |z| < 1,则设置 c = sqrt(1 - z2) 且 s = z。如果 |z| > 1,则设置 c = 1/z 且 s = sqrt( 1 - c*2)。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(inout) | :: | a | |||
real(kind=dp), | intent(inout) | :: | b | |||
real(kind=dp), | intent(out) | :: | c | |||
real(kind=dp), | intent(out) | :: | s |
DROTM 应用修改后的 Givens 变换,到 2×N 矩阵其中表示转置。 的元素位于 DX(LX+IINCX),I = 0:N-1,其中 LX = 1 如果 INCX >= 0,否则 LX = (-INCX)N,并且对于 DY 使用 LY 和 INCY 也类似。用 DPARAM(1)=DFLAG,具有以下形式之一
有关 DPARAM 中数据存储的说明,请参见 DROTMG。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(inout) | :: | dx(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=dp), | intent(inout) | :: | dy(*) | |||
integer(kind=ilp), | intent(in) | :: | incy | |||
real(kind=dp), | intent(in) | :: | dparam(5) |
DROTMG 构造修改后的 Givens 变换矩阵它将 2 向量的第二个分量置零。用 DPARAM(1)=DFLAG,具有以下形式之一
DPARAM 的位置 2-4 分别包含 DH11、DH21、DH12 和 DH22。(DPARAM(1) 的值隐含的 1.0、-1.0 或 0.0 值不会存储在 DPARAM 中。)参数 GAMSQ 和 RGAMSQ 的值可能不精确。这没关系,因为它们仅用于测试 DD1 和 DD2 的大小。所有数据的实际缩放都使用 GAM 完成。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(inout) | :: | dd1 | |||
real(kind=dp), | intent(inout) | :: | dd2 | |||
real(kind=dp), | intent(inout) | :: | dx1 | |||
real(kind=dp), | intent(in) | :: | dy1 | |||
real(kind=dp), | intent(out) | :: | dparam(5) |
DSBMV 执行矩阵-向量运算 y := alphaAx + beta*y,其中 alpha 和 beta 是标量,x 和 y 是 n 元素向量,而 A 是一个 n×n 对称带状矩阵,具有 k 个超对角线。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | uplo | |||
integer(kind=ilp), | intent(in) | :: | n | |||
integer(kind=ilp), | intent(in) | :: | k | |||
real(kind=dp), | intent(in) | :: | alpha | |||
real(kind=dp), | intent(in) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda | |||
real(kind=dp), | intent(in) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=dp), | intent(in) | :: | beta | |||
real(kind=dp), | intent(inout) | :: | y(*) | |||
integer(kind=ilp), | intent(in) | :: | incy |
DSCAL 将向量按常数缩放。对于增量等于 1,使用展开循环。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | da | |||
real(kind=dp), | intent(inout) | :: | dx(*) | |||
integer(kind=ilp), | intent(in) | :: | incx |
DSPMV 执行矩阵-向量运算 y := alphaAx + beta*y,其中 alpha 和 beta 是标量,x 和 y 是 n 元素向量,而 A 是一个 n×n 对称矩阵,以打包形式提供。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | uplo | |||
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | alpha | |||
real(kind=dp), | intent(in) | :: | ap(*) | |||
real(kind=dp), | intent(in) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=dp), | intent(in) | :: | beta | |||
real(kind=dp), | intent(inout) | :: | y(*) | |||
integer(kind=ilp), | intent(in) | :: | incy |
DSPR 执行对称秩 1 运算 A := alphaxx**T + A,其中 alpha 是一个实标量,x 是一个 n 元素向量,而 A 是一个 n×n 对称矩阵,以打包形式提供。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | uplo | |||
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | alpha | |||
real(kind=dp), | intent(in) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=dp), | intent(inout) | :: | ap(*) |
DSPR2 执行对称秩 2 运算 A := alphaxyT + alphayxT + A,其中 alpha 是一个标量,x 和 y 是 n 元素向量,而 A 是一个 n×n 对称矩阵,以打包形式提供。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | uplo | |||
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | alpha | |||
real(kind=dp), | intent(in) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=dp), | intent(in) | :: | y(*) | |||
integer(kind=ilp), | intent(in) | :: | incy | |||
real(kind=dp), | intent(inout) | :: | ap(*) |
DSWAP 交换两个向量。对于增量等于 1,使用展开循环。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(inout) | :: | dx(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=dp), | intent(inout) | :: | dy(*) | |||
integer(kind=ilp), | intent(in) | :: | incy |
DSYMM 执行以下矩阵-矩阵运算之一 C := alphaAB + betaC,或 C := alphaBA + betaC,其中 alpha 和 beta 是标量,A 是一个对称矩阵,而 B 和 C 是 m×n 矩阵。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | side | |||
character(len=1), | intent(in) | :: | uplo | |||
integer(kind=ilp), | intent(in) | :: | m | |||
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | alpha | |||
real(kind=dp), | intent(in) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda | |||
real(kind=dp), | intent(in) | :: | b(ldb,*) | |||
integer(kind=ilp), | intent(in) | :: | ldb | |||
real(kind=dp), | intent(in) | :: | beta | |||
real(kind=dp), | intent(inout) | :: | c(ldc,*) | |||
integer(kind=ilp), | intent(in) | :: | ldc |
DSYMV 执行矩阵-向量运算 y := alphaAx + beta*y,其中 alpha 和 beta 是标量,x 和 y 是 n 元素向量,而 A 是一个 n×n 对称矩阵。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | uplo | |||
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | alpha | |||
real(kind=dp), | intent(in) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda | |||
real(kind=dp), | intent(in) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=dp), | intent(in) | :: | beta | |||
real(kind=dp), | intent(inout) | :: | y(*) | |||
integer(kind=ilp), | intent(in) | :: | incy |
DSYR 执行对称秩 1 运算 A := alphaxx**T + A,其中 alpha 是一个实标量,x 是一个 n 元素向量,而 A 是一个 n×n 对称矩阵。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | uplo | |||
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | alpha | |||
real(kind=dp), | intent(in) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=dp), | intent(inout) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda |
DSYR2 执行对称秩 2 运算 A := alphaxyT + alphayxT + A,其中 alpha 是一个标量,x 和 y 是 n 元素向量,而 A 是一个 n×n 对称矩阵。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | uplo | |||
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | alpha | |||
real(kind=dp), | intent(in) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx | |||
real(kind=dp), | intent(in) | :: | y(*) | |||
integer(kind=ilp), | intent(in) | :: | incy | |||
real(kind=dp), | intent(inout) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda |
DSYR2K 执行以下对称秩 2k 运算之一 C := alphaABT + alphaBAT + betaC,或 C := alphaATB + alphaBTA + betaC,其中 alpha 和 beta 是标量,C 是一个 n×n 对称矩阵,而 A 和 B 是在第一种情况下为 n×k 矩阵,在第二种情况下为 k×n 矩阵。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | uplo | |||
character(len=1), | intent(in) | :: | trans | |||
integer(kind=ilp), | intent(in) | :: | n | |||
integer(kind=ilp), | intent(in) | :: | k | |||
real(kind=dp), | intent(in) | :: | alpha | |||
real(kind=dp), | intent(in) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda | |||
real(kind=dp), | intent(in) | :: | b(ldb,*) | |||
integer(kind=ilp), | intent(in) | :: | ldb | |||
real(kind=dp), | intent(in) | :: | beta | |||
real(kind=dp), | intent(inout) | :: | c(ldc,*) | |||
integer(kind=ilp), | intent(in) | :: | ldc |
DSYRK 执行以下对称秩 k 运算之一 C := alphaAAT + betaC,或 C := alphaATA + betaC,其中 alpha 和 beta 是标量,C 是一个 n×n 对称矩阵,而 A 是在第一种情况下为 n×k 矩阵,在第二种情况下为 k×n 矩阵。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | uplo | |||
character(len=1), | intent(in) | :: | trans | |||
integer(kind=ilp), | intent(in) | :: | n | |||
integer(kind=ilp), | intent(in) | :: | k | |||
real(kind=dp), | intent(in) | :: | alpha | |||
real(kind=dp), | intent(in) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda | |||
real(kind=dp), | intent(in) | :: | beta | |||
real(kind=dp), | intent(inout) | :: | c(ldc,*) | |||
integer(kind=ilp), | intent(in) | :: | ldc |
DTBMV 执行以下矩阵向量运算之一:x := A*x 或 x := ATx,其中 x 是一个 n 元素向量,A 是一个 n×n 单位或非单位上三角或下三角带状矩阵,具有 (k+1) 条对角线。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | uplo | |||
character(len=1), | intent(in) | :: | trans | |||
character(len=1), | intent(in) | :: | diag | |||
integer(kind=ilp), | intent(in) | :: | n | |||
integer(kind=ilp), | intent(in) | :: | k | |||
real(kind=dp), | intent(in) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda | |||
real(kind=dp), | intent(inout) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx |
DTBSV 求解以下方程组之一:A*x = b 或 ATx = b,其中 b 和 x 是 n 元素向量,A 是一个 n×n 单位或非单位上三角或下三角带状矩阵,具有 (k+1) 条对角线。此例程不包含奇异性或近奇异性测试。必须在调用此例程之前执行此类测试。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | uplo | |||
character(len=1), | intent(in) | :: | trans | |||
character(len=1), | intent(in) | :: | diag | |||
integer(kind=ilp), | intent(in) | :: | n | |||
integer(kind=ilp), | intent(in) | :: | k | |||
real(kind=dp), | intent(in) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda | |||
real(kind=dp), | intent(inout) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx |
DTPMV 执行以下矩阵向量运算之一:x := A*x 或 x := ATx,其中 x 是一个 n 元素向量,A 是一个 n×n 单位或非单位上三角或下三角矩阵,以压缩形式提供。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | uplo | |||
character(len=1), | intent(in) | :: | trans | |||
character(len=1), | intent(in) | :: | diag | |||
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | ap(*) | |||
real(kind=dp), | intent(inout) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx |
DTPSV 求解以下方程组之一:A*x = b 或 ATx = b,其中 b 和 x 是 n 元素向量,A 是一个 n×n 单位或非单位上三角或下三角矩阵,以压缩形式提供。此例程不包含奇异性或近奇异性测试。必须在调用此例程之前执行此类测试。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | uplo | |||
character(len=1), | intent(in) | :: | trans | |||
character(len=1), | intent(in) | :: | diag | |||
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | ap(*) | |||
real(kind=dp), | intent(inout) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx |
DTRMM 执行以下矩阵矩阵运算之一:B := alpha*op(A)*B 或 B := alpha*B*op(A),其中 alpha 是一个标量,B 是一个 m×n 矩阵,A 是一个单位或非单位上三角或下三角矩阵,op(A) 是以下之一:op(A) = A 或 op(A) = AT。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | side | |||
character(len=1), | intent(in) | :: | uplo | |||
character(len=1), | intent(in) | :: | transa | |||
character(len=1), | intent(in) | :: | diag | |||
integer(kind=ilp), | intent(in) | :: | m | |||
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | alpha | |||
real(kind=dp), | intent(in) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda | |||
real(kind=dp), | intent(inout) | :: | b(ldb,*) | |||
integer(kind=ilp), | intent(in) | :: | ldb |
DTRMV 执行以下矩阵向量运算之一:x := A*x 或 x := ATx,其中 x 是一个 n 元素向量,A 是一个 n×n 单位或非单位上三角或下三角矩阵。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | uplo | |||
character(len=1), | intent(in) | :: | trans | |||
character(len=1), | intent(in) | :: | diag | |||
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda | |||
real(kind=dp), | intent(inout) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx |
DTRSM 求解以下矩阵方程之一:op(A)*X = alpha*B 或 X*op(A) = alpha*B,其中 alpha 是一个标量,X 和 B 是 m×n 矩阵,A 是一个单位或非单位上三角或下三角矩阵,op(A) 是以下之一:op(A) = A 或 op(A) = AT。矩阵 X 将覆盖在 B 上。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | side | |||
character(len=1), | intent(in) | :: | uplo | |||
character(len=1), | intent(in) | :: | transa | |||
character(len=1), | intent(in) | :: | diag | |||
integer(kind=ilp), | intent(in) | :: | m | |||
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | alpha | |||
real(kind=dp), | intent(in) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda | |||
real(kind=dp), | intent(inout) | :: | b(ldb,*) | |||
integer(kind=ilp), | intent(in) | :: | ldb |
DTRSV 求解以下方程组之一:A*x = b 或 ATx = b,其中 b 和 x 是 n 元素向量,A 是一个 n×n 单位或非单位上三角或下三角矩阵。此例程不包含奇异性或近奇异性测试。必须在调用此例程之前执行此类测试。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=1), | intent(in) | :: | uplo | |||
character(len=1), | intent(in) | :: | trans | |||
character(len=1), | intent(in) | :: | diag | |||
integer(kind=ilp), | intent(in) | :: | n | |||
real(kind=dp), | intent(in) | :: | a(lda,*) | |||
integer(kind=ilp), | intent(in) | :: | lda | |||
real(kind=dp), | intent(inout) | :: | x(*) | |||
integer(kind=ilp), | intent(in) | :: | incx |