计算 real
或 complex
2d 矩阵的奇异值。 (规范)
用于从 real
或 complex
2d 矩阵的奇异值分解中计算奇异值数组的函数接口。
此接口提供计算 2d 矩阵的奇异值的方法。支持的数据类型包括 real
和 complex
。该函数返回一个大小为 [min(m,n)] 的 real
奇异值数组。
注意
该解决方案基于 LAPACK 的奇异值分解 *GESDD
方法。
real(sp) :: a(2,3), s(2)
a = reshape([3,2, 2,3, 2,-2],[2,3])
s = svdvals(A)
print *, 'singular values = ',s
计算奇异值从矩阵的奇异值分解.
此函数从 real
或 complex
矩阵的奇异值分解中返回奇异值数组.
参数:a 大小为 [m,n] 的输入矩阵。参数:err [可选] 状态返回标志。
参数:s 大小为 [min(m,n)] 的 real
数组,返回奇异值列表。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
complex(kind=sp), | intent(in), | target | :: | a(:,:) |
输入矩阵 A[m,n] |
|
type(linalg_state_type), | intent(out), | optional | :: | err |
[可选] 状态返回标志。如果未请求,代码将在错误时停止 |
奇异值数组
计算奇异值从矩阵的奇异值分解.
此函数从 real
或 complex
矩阵的奇异值分解中返回奇异值数组.
参数:a 大小为 [m,n] 的输入矩阵。参数:err [可选] 状态返回标志。
参数:s 大小为 [min(m,n)] 的 real
数组,返回奇异值列表。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(in), | target | :: | a(:,:) |
输入矩阵 A[m,n] |
|
type(linalg_state_type), | intent(out), | optional | :: | err |
[可选] 状态返回标志。如果未请求,代码将在错误时停止 |
奇异值数组
计算奇异值从矩阵的奇异值分解.
此函数从 real
或 complex
矩阵的奇异值分解中返回奇异值数组.
参数:a 大小为 [m,n] 的输入矩阵。参数:err [可选] 状态返回标志。
参数:s 大小为 [min(m,n)] 的 real
数组,返回奇异值列表。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
real(kind=sp), | intent(in), | target | :: | a(:,:) |
输入矩阵 A[m,n] |
|
type(linalg_state_type), | intent(out), | optional | :: | err |
[可选] 状态返回标志。如果未请求,代码将在错误时停止 |
奇异值数组
计算奇异值从矩阵的奇异值分解.
此函数从 real
或 complex
矩阵的奇异值分解中返回奇异值数组.
参数:a 大小为 [m,n] 的输入矩阵。参数:err [可选] 状态返回标志。
参数:s 大小为 [min(m,n)] 的 real
数组,返回奇异值列表。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
complex(kind=dp), | intent(in), | target | :: | a(:,:) |
输入矩阵 A[m,n] |
|
type(linalg_state_type), | intent(out), | optional | :: | err |
[可选] 状态返回标志。如果未请求,代码将在错误时停止 |
奇异值数组