269 UTL_NLA
UTL_NLAパッケージは、VARRAYとして表されるベクトルおよびマトリックスに対するBLAS演算およびLAPACK(バージョン3.0)演算のサブセットを表示します。
この章のトピックは、次のとおりです:
269.1 UTL_NLAの概要
UTL_NLAパッケージは、VARRAYとして表されるベクトルおよびマトリックスに対するBLAS(基本線形代数サブプログラム)演算およびLAPACK(線形代数パッケージ) (バージョン3.0)演算のサブセットを表示します。
標準
BLASおよびLAPACK標準の詳細は、次の場所を参照してください。
必要な知識
このパッケージを使用するユーザーは、一般的な線形代数、特にBLASライブラリとLAPACKライブラリについて十分に理解している必要があります。
実装
BLASおよびLAPACKのプロシージャとこれらに対応するPL/SQLコールとの間のマッピングは、1対1です。
-
すべてのBLASファンクションに、
BLAS_接頭辞が付いています(BLAS_ASUMファンクションなど)。BLASのサブルーチンおよびファンクションは、PL/SQLのプロシージャおよびファンクションにそれぞれマッピングされます。 -
すべてのLAPACKファンクションに、
LAPACK_接頭辞が付いています(LAPACK_GBSVプロシージャなど)。LAPACKのサブルーチンは、PL/SQLプロシージャにマッピングされます。同じ演算を実行し、引数のデータ・タイプのみが異なるプロシージャは、同一の多重定義名になります。
BLASとLAPACKのプロシージャのパラメータとこれらに対応するPL/SQLサブプログラムのパラメータとの間のマッピングは、ほぼ1対1です。
-
また、LAPACKのPL/SQLインタフェースでは、すべての
/work/引数が削除されています。UTL_NLAパッケージでは、ライブラリで必要なすべての作業領域の割当ておよび割当て解除を管理します。 -
各LAPACKプロシージャの最後に、マトリックスの線形演算が行優先または列優先(デフォルト)の形式で行われているかどうかを指定する新しいオプションのパラメータ
packが追加されています。
269.2 UTL_NLAのルールおよび制限
ベクトルおよびマトリックスは、最大サイズが100万エントリのVARRAYに格納されます。この制限のため、UTL_NLAベクトルは最大100万エントリにできますが、マトリックスのサイズはRxC <= 1,000,000である必要があります。
269.3 UTL_NLAのセキュリティ・モデル
UTL_NLAパッケージは、ユーザーSYSによって所有され、データベース・インストールの一環としてインストールされます。このパッケージの実行権限は、PUBLICに付与されます。このパッケージ内のルーチンは、実行者権限(現行のユーザーの権限)を使用して実行されます。
269.4 サブプログラム・グループ
UTL_NLAにはBLASおよびLAPACK演算のサブプログラム・グループが含まれます。
269.4.1 UTL_NLAのBLASレベル1 (ベクトル-ベクトル演算)サブプログラム
この表は、UTL_NLAのBLASレベル1ベクトル-ベクトル演算サブプログラムを示し、簡単に説明しています。
表269-1 BLASレベル1 (ベクトル-ベクトル演算)サブプログラム
| サブプログラム | 説明 |
|---|---|
|
ベクトル・コンポーネントの絶対値の合計を計算します。 |
|
|
|
|
|
ベクトル |
|
|
2つのベクトル |
|
|
最大絶対値を持つベクトルの最初の要素のインデックスを計算します。 |
|
|
ベクトル2ノルム(ユークリッド・ノルム)を計算します。 |
|
|
点の面回転を戻します。 |
|
|
点のギブンス回転を戻します。 |
|
|
ベクトルのスケールを定数で変更します。 |
|
|
サイズがnの2つのベクトルの内容を交換します。 |
269.4.2 UTL_NLAのBLASレベル2 (マトリックス-ベクトル演算)サブプログラム
この表は、UTL_NLAのBLASレベル2マトリックス-ベクトル演算サブプログラムを示し、簡単に説明しています。
表269-2 BLASレベル2 (マトリックス-ベクトル演算)サブプログラム
| サブプログラム | 説明 |
|---|---|
|
マトリックス-ベクトル演算 |
|
|
マトリックス-ベクトル演算 |
|
|
ランク1演算 |
|
|
マトリックス-ベクトル演算 |
|
|
マトリックス-ベクトル演算 |
|
|
対称ランク1演算 |
|
|
対称ランク2演算 |
|
|
マトリックス-ベクトル演算 |
|
|
マトリックス-ベクトル演算 |
|
|
対称ランク1演算 |
|
|
対称ランク2演算 |
|
|
マトリックス-ベクトル演算 |
|
|
連立方程式 |
|
|
マトリックス-ベクトル演算 |
|
|
連立方程式 |
|
|
マトリックス-ベクトル演算 |
|
|
連立方程式 |
269.4.3 UTL_NLAのBLASレベル3 (マトリックス-マトリックス演算)サブプログラム
この表は、UTL_NLAのBLASレベル3マトリックス-マトリックス演算サブプログラムを示し、簡単に説明しています。
表269-3 BLASレベル3 (マトリックス-マトリックス演算)サブプログラム
| サブプログラム | 説明 |
|---|---|
|
マトリックス-ベクトル演算の1つ |
|
|
マトリックス-ベクトル演算 |
|
|
対称ランク2 k演算 |
|
|
対称ランク |
|
|
マトリックス-ベクトル演算 |
|
|
マトリックス-ベクトル演算 |
269.4.4 UTL_NLAのLAPACKドライバ・ルーチン(一次方程式)サブプログラム
この表では、LAPACKドライバ・ルーチン(一次方程式)サブプログラムをリストし、簡単に説明します。
表269-4 LAPACKドライバ・ルーチン(一次方程式)サブプログラム
| サブプログラム | 説明 |
|---|---|
|
実連立一次方程式 |
|
|
実連立一次方程式 |
|
|
方程式 |
|
|
実連立一次方程式 |
|
|
実連立一次方程式 |
|
|
実連立一次方程式 |
|
|
実連立一次方程式 |
|
|
実連立一次方程式 |
|
|
実連立一次方程式 |
269.4.5 UTL_NLAのLAPACKドライバ・ルーチン(LLSおよび固有値問題)サブプログラム
この表では、LAPACKドライバ・ルーチン(LLSおよび固有値)サブプログラムをリストし、簡単に説明します。
表269-5 LAPACKドライバ・ルーチン(LLSおよび固有値問題)
| サブプログラム | 説明 |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
すべての固有値を計算します。また、オプションで実対称バンド・マトリックス |
|
|
すべての固有値を計算します。また、オプションで実対称マトリックス |
|
|
すべての固有値を計算します。また、オプションで、パックされた形式で格納されている実対称マトリックス |
|
|
すべての固有値を計算します。また、オプションで、パックされた形式で格納されている実対称マトリックス |
|
|
すべての固有値を計算します。また、オプションで実対称三重対角マトリックス |
|
|
すべての固有値を計算します。また、オプションで実対称三重対角マトリックス |
|
|
すべての固有値を計算します。また、オプションで実対称マトリックス |
|
|
すべての固有値を計算します。また、オプションで実対称マトリックス |
269.5 UTL_NLAサブプログラムの要約
この表は、UTL_NLAサブプログラムを示し、簡単に説明しています。
表269-6 UTL_NLAパッケージのサブプログラム
| サブプログラム | 説明 | グループ |
|---|---|---|
|
ベクトル・コンポーネントの絶対値の合計を計算します。 |
||
|
|
||
|
ベクトル |
||
|
2つのベクトル |
||
|
マトリックス-ベクトル演算 |
||
|
いずれかのマトリックス-ベクトル演算を実行します。ここで、 |
||
|
マトリックス-ベクトル演算 |
||
|
ランク1演算 |
||
|
最大絶対値を持つベクトルの最初の要素のインデックスを計算します。 |
||
|
ベクトル2ノルム(ユークリッド・ノルム)を計算します。 |
||
|
点の面回転を戻します。 |
||
|
点のギブンス回転を戻します。 |
||
|
マトリックス-ベクトル演算 |
||
|
ベクトルのスケールを定数で変更します。 |
||
|
マトリックス-ベクトル演算 |
||
|
対称ランク1演算 |
||
|
対称ランク2演算を実行します。ここで、 |
||
|
サイズがnの2つのベクトルの内容を交換します。 |
||
|
いずれかのマトリックス-ベクトル演算を実行します。ここで、 |
||
|
マトリックス-ベクトル演算を実行します。ここで、 |
||
|
対称ランク1演算を実行します。ここで、 |
||
|
対称ランク2演算を実行します。ここで、 |
||
|
いずれかの対称ランク2 k演算を実行します。ここで、 |
||
|
いずれかの対称ランク |
||
|
マトリックス-ベクトル演算を実行します。ここで、 |
||
|
いずれかの連立方程式の解を求めます。ここで、 |
||
|
マトリックス-ベクトル演算を実行します。ここで、 |
||
|
いずれかの連立方程式の解を求めます。ここで、 |
||
|
いずれかのマトリックス-ベクトル演算を実行します。ここで、 |
||
|
マトリックス-ベクトル演算を実行します。ここで、 |
||
|
マトリックス-ベクトル演算 |
||
|
いずれかの連立方程式の解を求めます。ここで、 |
||
|
実連立一次方程式 |
||
|
|
||
|
|
||
|
|
||
|
|
||
|
実連立一次方程式 |
||
|
|
||
|
方程式 |
||
|
実連立一次方程式 |
||
|
実連立一次方程式 |
||
|
実連立一次方程式 |
||
|
実連立一次方程式 |
||
|
すべての固有値を計算します。また、オプションで実対称バンド・マトリックス |
||
|
すべての固有値を計算します。また、オプションで実対称マトリックス |
||
|
すべての固有値を計算します。また、オプションで、パックされた形式で格納されている実対称マトリックス |
||
|
すべての固有値を計算します。また、オプションで、パックされた形式で格納されている実対称マトリックス |
||
|
実連立一次方程式 |
||
|
すべての固有値を計算します。また、オプションで実対称三重対角マトリックス |
||
|
すべての固有値を計算します。また、オプションで実対称三重対角マトリックス |
||
|
すべての固有値を計算します。また、オプションで実対称マトリックス |
||
|
実連立一次方程式 |
269.5.1 BLAS_ASUMファンクション
このプロシージャは、ベクトル・コンポーネントの絶対値の合計を計算します。
参照:
このグループの他のサブプログラムについては、「BLASレベル1(ベクトル-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_ASUM ( n IN POSITIVEN, x IN UTL_NLA_ARRAY_DBL, incx IN POSITIVEN) RETURN BINARY_DOUBLE;
UTL_NLA.BLAS_ASUM ( n IN POSITIVEN, alpha IN SCALAR_DOUBLE, x IN UTL_NLA_ARRAY_FLT) RETURN BINARY_FLOAT
パラメータ
表269-7 BLAS_ASUMファンクションのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
ベクトル |
|
|
少なくとも次の次元を持つ ( 1 + ( n - 1 )*abs( |
|
|
|
269.5.2 BLAS_AXPYプロシージャ
このプロシージャは、alpha*X + YをベクトルYにコピーします。
参照:
このグループの他のサブプログラムについては、「BLASレベル1(ベクトル-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_AXPY ( n IN POSITIVEN, alpha IN SCALAR_DOUBLE, x IN UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, y IN OUT UTL_NLA_ARRAY_DBL, incy IN POSITIVEN);
UTL_NLA.BLAS_AXPY ( n IN POSITIVEN, alpha IN SCALAR_DOUBLE, x IN UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, y IN OUT UTL_NLA_ARRAY_FLT, incy IN POSITIVEN);
パラメータ
表269-8 BLAS_AXPYプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
ベクトル |
|
|
スカラーalphaを指定します。 |
|
|
少なくとも次の ( 1 + ( n - 1 )*abs( |
|
|
|
|
|
少なくとも次の ( 1 + ( n - 1 )*abs( incy) ) |
|
|
|
269.5.3 BLAS_COPYプロシージャ
このプロシージャは、ベクトルXの内容をベクトルYにコピーします。
参照:
このグループの他のサブプログラムについては、「BLASレベル1(ベクトル-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_COPY ( n IN POSITIVEN, x IN UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, y IN OUT UTL_NLA_ARRAY_DBL, incy IN POSITIVEN);
UTL_NLA.BLAS_COPY ( n IN POSITIVEN, x IN UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, y IN OUT UTL_NLA_ARRAY_FLT, incy IN POSITIVEN);
パラメータ
表269-9 BLAS_COPYプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
ベクトル |
|
|
少なくとも次の ( 1 + ( n - 1 )*abs( incx ) ) |
|
|
|
|
|
少なくとも次の次元を持つ ( 1 + ( n - 1 )*abs( incy) ) |
|
|
|
269.5.4 BLAS_DOTファンクション
このファンクションは、2つのベクトルXとYの内積(スカラ積)を戻します。
参照:
このグループの他のサブプログラムについては、「BLASレベル1(ベクトル-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_DOT ( n IN POSITIVEN, x IN UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, y IN UTL_NLA_ARRAY_DBL, incy IN POSITIVEN) RETURN BINARY_DOUBLE;
UTL_NLA.BLAS_DOT ( n IN POSITIVEN, x IN UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, y IN UTL_NLA_ARRAY_FLT, incy IN POSITIVEN) RETURN BINARY_FLOAT;
パラメータ
表269-10 BLAS_DOTファンクションのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
ベクトル |
|
|
少なくとも次の次元を持つ ( 1 + ( n - 1 )*abs( incx ) ) |
|
|
|
|
|
少なくとも次の次元を持つ ( 1 + ( n - 1 )*abs( incy) ) |
|
|
|
269.5.5 BLAS_GBMVプロシージャ
このプロシージャは、マトリックス-ベクトル演算y := alpha*A*x + beta*yまたはy := alpha*A'*x + beta*yのいずれかを実行します。ここで、alphaおよびbetaはスカラー、xおよびyはベクトル、Aはkl個の下対角とku個の上対角を持つm行n列のバンド・マトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル2(マトリックス-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_GBMV ( trans IN flag, m IN POSITIVEN, n IN POSITIVEN, kl IN NATURALN, ku IN NATURALN, alpha IN SCALAR_DOUBLE, a IN UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, x IN UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, beta IN SCALAR_DOUBLE, y IN OUT UTL_NLA_ARRAY_DBL, incy IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_GBMV ( trans IN flag, m IN POSITIVEN, n IN POSITIVEN, kl IN NATURALN, ku IN NATURALN, alpha IN SCALAR_FLOAT, a IN UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, x IN UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, beta IN SCALAR_FLOAT, y IN OUT UTL_NLA_ARRAY_FLT, incy IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-11 BLAS_GBMVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
実行する演算を指定します。
|
|
|
マトリックスAの行数を指定します。 |
|
|
マトリックスAの列数を指定します。 |
|
|
マトリックス |
|
ku |
マトリックス |
|
|
|
|
|
次元 入力する前に、配列 バンド・マトリックス(左上の |
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
少なくとも次の次元を持つ ( 1 + ( n - 1 )*abs( incx ) )
( 1 + ( m - 1 )*abs( incx ) ) それ以外の場合。入力する前に、増分された配列 |
|
|
|
|
|
|
|
|
少なくとも次の ( 1 + ( m - 1 )*abs( incy ) )
(1+(n-1)*abs(incy)) それ以外の場合。 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.6 BLAS_GEMMプロシージャ
このプロシージャは、次のマトリックス-マトリックス演算を実行します。
C := alpha*op( A )*op( B ) + beta*C
op(X)は次のいずれかです。
op(X) = X
または
op(X) = X'
ここで、alphaおよびbetaはスカラー、A、BおよびCはマトリックス、op(A)はm行k列のマトリックス、op(B)はk行n列のマトリックスおよびCはm行n列のマトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル3(マトリックス-マトリックス演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_GEMM ( transa IN flag, transb IN flag, m IN POSITIVEN, n IN POSITIVEN, k IN POSITIVEN, alpha IN SCALAR_DOUBLE, a IN UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, b IN UTL_NLA_ARRAY_DBL, ldb IN POSITIVEN, beta IN SCALAR_DOUBLE, c IN OUT UTL_NLA_ARRAY_DBL, ldc IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_GEMM ( transa IN flag, transb IN flag, m IN POSITIVEN, n IN POSITIVEN, k IN POSITIVEN, alpha IN SCALAR_FLOAT, a IN UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, b IN UTL_NLA_ARRAY_FLT, ldb IN POSITIVEN, beta IN SCALAR_FLOAT, c IN OUT UTL_NLA_ARRAY_FLT, ldc IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-12 BLAS_GEMMプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
マトリックス乗算で使用する
|
|
|
マトリックス乗算で使用する
|
|
|
マトリックス |
|
|
マトリックス |
|
k |
マトリックス |
|
|
|
|
|
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
|
|
c |
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.7 BLAS_GEMVプロシージャ
このプロシージャは、マトリックス-ベクトル演算y := alpha*A*x + beta*yまたはy := alpha*A'*x + beta*yのいずれかを実行します。ここで、alphaおよびbetaはスカラー、xおよびyはベクトル、Aはm行n列のマトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル2(マトリックス-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_GEMV ( trans IN flag, m IN POSITIVEN, n IN POSITIVEN, alpha IN SCALAR_DOUBLE, a IN UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, x IN UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, beta IN SCALAR_DOUBLE, y IN OUT UTL_NLA_ARRAY_DBL, incy IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_GEMV ( trans IN flag, m IN POSITIVEN, n IN POSITIVEN, alpha IN SCALAR_FLOAT, a IN UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, x IN UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, beta IN SCALAR_FLOAT, y IN OUT UTL_NLA_ARRAY_FLT, incy IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-13 BLAS_GEMVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
実行する演算を指定します。
|
|
|
マトリックスAの行数を指定します。 |
|
|
マトリックスAの列数を指定します。 |
|
|
|
|
|
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
少なくとも次の次元を持つ ( 1 + (
(1+(m-1)*abs(incx)) それ以外の場合。入力する前に、増分された配列 |
|
|
|
|
|
|
|
|
少なくとも次の次元を持つ ( 1 + ( m - 1 )*abs( incy ) )
( 1 + ( n - 1 )*abs( incy ) ) それ以外の場合。 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.8 BLAS_GERプロシージャ
このプロシージャは、ランク1演算A := alpha*x*y' + Aを実行します。ここで、alphaはスカラー、xはm要素のベクトル、yはn要素のベクトル、Aはm行n列のマトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル2(マトリックス-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_GER ( m IN POSITIVEN, n IN POSITIVEN, alpha IN SCALAR_DBL, x IN OUT UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, y IN UTL_NLA_ARRAY_DBL, incy IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_GER ( m IN POSITIVEN, n IN POSITIVEN, alpha IN SCALAR_FLT, x IN OUT UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, y IN UTL_NLA_ARRAY_FLT, incy IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-14 BLAS_GERプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
マトリックス |
|
|
マトリックス |
|
|
スカラーalphaを指定します。 |
|
|
少なくとも次の次元を持つ ( 1 + ( m - 1 )*abs( incx ) ) 入力する前に、増分された配列 |
|
|
|
|
|
少なくとも次の次元を持つ ( 1 + ( n - 1 )*abs( incy ) ) 入力する前に、増分された配列 |
|
|
|
|
|
入力する前に、配列 |
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.9 BLAS_IAMAXファンクション
このファンクションは、最大絶対値を持つベクトルの最初の要素のインデックスを計算します。
参照:
このグループの他のサブプログラムについては、「BLASレベル1(ベクトル-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_IAMAX ( n IN POSITIVEN, x IN UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, RETURN POSITIVEN;
UTL_NLA.BLAS_IAMAX ( n IN POSITIVEN, x IN UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, RETURN POSITIVEN;
パラメータ
表269-15 BLAS_IAMAXファンクションのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
ベクトル |
|
|
少なくとも次の ( 1 + ( n - 1 )*abs( incx ) ) |
|
|
|
269.5.10 BLAS_NRM2ファンクション
このファンクションは、ベクトル2ノルム(ユークリッド・ノルム)を計算します。
参照:
このグループの他のサブプログラムについては、「BLASレベル1(ベクトル-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_NRM2 ( n IN POSITIVEN, x IN UTL_NLA_ARRAY_DBL, incx IN POSITIVEN) RETURN BINARY_DOUBLE;
UTL_NLA.BLAS_NRM2 ( n IN POSITIVEN, x IN UTL_NLA_ARRAY_FLT, incx IN POSITIVEN) RETURN BINARY_FLOAT;
パラメータ
表269-16 BLAS_NRM2ファンクションのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
ベクトル |
|
|
少なくとも次の次元を持つ ( 1 + ( n - 1 )*abs( incx ) ) |
|
|
|
269.5.11 BLAS_ROTプロシージャ
このプロシージャは、点の面回転を戻します。
参照:
このグループの他のサブプログラムについては、「BLASレベル1(ベクトル-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_ROT ( n IN POSITIVEN, x IN OUT UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, y IN OUT UTL_NLA_ARRAY_DBL, incy IN POSITIVEN, c IN SCALAR_DOUBLE, s IN SCALAR_DOUBLE);
UTL_NLA.BLAS_ROT ( n IN POSITIVEN, x IN OUT UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, y IN OUT UTL_NLA_ARRAY_FLT, incy IN POSITIVEN, c IN SCALAR_DOUBLE, s IN SCALAR_DOUBLE);
パラメータ
表269-17 BLAS_ROTプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
ベクトル |
|
|
少なくとも次の次元を持つ (1+(n-1)* abs(incx)) |
|
|
|
|
|
少なくとも次の (1+(n-1)*abs(incy)) |
|
|
|
|
|
|
|
|
|
269.5.12 BLAS_ROTGプロシージャ
このプロシージャは、点のギブンス回転を戻します。
参照:
このグループの他のサブプログラムについては、「BLASレベル1(ベクトル-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_ROTG ( a IN OUT SCALAR_DOUBLE, b IN OUT SCALAR_DOUBLE, c IN OUT SCALAR_DOUBLE, s IN OUT SCALAR_DOUBLE);
UTL_NLA.BLAS_ROTG ( a IN OUT SCALAR_FLOAT, b IN OUT SCALAR_FLOAT, c IN OUT SCALAR_FLOAT, s IN OUT SCALAR_FLOAT);
パラメータ
表269-18 BLAS_ROTGプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
269.5.13 BLAS_SCALプロシージャ
このプロシージャは、ベクトルのスケールを定数で変更します。
参照:
このグループの他のサブプログラムについては、「BLASレベル1(ベクトル-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_SCAL ( n IN POSITIVEN, alpha IN SCALAR_DOUBLE, x IN OUT UTL_NLA_ARRAY_DBL, incx IN POSITIVEN);
UTL_NLA.BLAS_SCAL ( n IN POSITIVEN, alpha IN SCALAR_FLOAT, x IN OUT UTL_NLA_ARRAY_FLT, incx IN POSITIVEN);
パラメータ
表269-19 BLAS_SCALプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
ベクトル |
|
|
スカラーalphaを指定します。 |
|
|
少なくとも次の次元を持つ (1+(n-1)*abs(incx)) |
|
|
|
269.5.14 BLAS_SPMVプロシージャ
このプロシージャは、マトリックス-ベクトル演算y := alpha*A*x + beta*yを実行します。ここで、alphaおよびbetaはスカラー、xおよびyはn要素のベクトル、Aはパックされた形式のn行n列の対称マトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル2(マトリックス-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_SPMV ( uplo IN flag, n IN POSITIVEN, alpha IN SCALAR_DOUBLE, ap IN UTL_NLA_ARRAY_DBL, x IN UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, beta IN SCALAR_DOUBLE, y IN OUT UTL_NLA_ARRAY_DBL, incy IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_SPMV ( uplo IN flag, n IN POSITIVEN, alpha IN SCALAR_FLOAT, ap IN UTL_NLA_ARRAY_FLT, x IN UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, beta IN SCALAR_FLOAT, y IN OUT UTL_NLA_ARRAY_FLT, incy IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-20 BLAS_SPMVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
マトリックスAの上三角または下三角部分が、パックされた配列
|
|
|
マトリックス |
|
|
|
|
|
少なくとも次の次元を持つ ((n*(n+1))/2)
|
|
|
少なくとも次の次元を持つ (1+(n-1)*abs(incx)) 入力する前に、増分された配列 |
|
|
|
|
|
|
|
|
少なくとも次の次元を持つ (1+(入力する前に、増分された配列 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.15 BLAS_SPRプロシージャ
このプロシージャは、ランク1演算A := alpha*x*x' + Aを実行します。ここで、alphaは実スカラー、xはn要素のベクトル、Aはパックされた形式のn行n列の対称マトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル2(マトリックス-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_SPR ( uplo IN flag, n IN POSITIVEN, alpha IN SCALAR_DBL, x IN OUT UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, ap IN OUT UTL_NLA_ARRAY_DBL, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_SPR ( uplo IN flag, n IN POSITIVEN, alpha IN SCALAR_FLT, x IN OUT UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, ap IN OUT UTL_NLA_ARRAY_FLT, pack IN flag DEFAULT 'C');
パラメータ
表269-21 BLAS_SPRプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
マトリックス
|
|
|
マトリックス |
|
|
スカラーalphaを指定します。 |
|
|
少なくとも次の次元を持つ (1+(n-1)*abs(incx)) 入力する前に、増分された配列 |
|
|
|
|
|
少なくとも次の次元を持つ ((n*(n +1))/2)
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.16 BLAS_SPR2プロシージャ
このプロシージャは、ランク2演算A := alpha*x*y' + alpha*y*x' +Aを実行します。ここで、alphaはスカラー、xおよびyはn要素のベクトル、Aはパックされた形式のn行n列の対称マトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル2(マトリックス-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_SPR2 ( uplo IN flag, n IN POSITIVEN, alpha IN SCALAR_DBL, x IN UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, y IN UTL_NLA_ARRAY_DBL, incy IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_SPR2 ( uplo IN flag, n IN POSITIVEN, alpha IN SCALAR_FLT, x IN UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, y IN UTL_NLA_ARRAY_FLT, incy IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-22 BLAS_SPR2プロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
マトリックス
|
|
|
マトリックス |
|
|
スカラーalphaを指定します。 |
|
|
少なくとも次の次元を持つ (1+(n-1)*abs(incx)) 入力する前に、増分された配列 |
|
|
|
|
|
少なくとも次の次元を持つ (1+(n-1)*abs(incy)) 入力する前に、増分された配列 |
|
|
|
|
|
少なくとも次の次元を持つ ((n*(n+1))/2)
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.17 BLAS_SBMVプロシージャ
このプロシージャは、マトリックス-ベクトル演算y := alpha*A*x + beta*yを実行します。ここで、alphaおよびbetaはスカラー、xおよびyはn要素のベクトル、Aはk個の上対角を持つn行n列の対称バンド・マトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル2(マトリックス-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_SBMV ( uplo IN flag, n IN POSITIVEN, k IN NATURALN, alpha IN SCALAR_DOUBLE, a IN UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, x IN UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, beta IN SCALAR_DOUBLE, y IN OUT UTL_NLA_ARRAY_DBL, incy IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_SBMV ( uplo IN flag, n IN POSITIVEN, k IN NATURALN, alpha IN SCALAR_FLOAT, a IN UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, x IN UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, beta IN SCALAR_FLOAT, y IN OUT UTL_NLA_ARRAY_FLT, incy IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-23 BLAS_SBMVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
バンド・マトリックス
|
|
|
マトリックス |
|
|
マトリックス |
|
|
|
|
|
次元
終了時に変更されません。 |
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
少なくとも次の次元を持つ (1+(n-1)*abs(incx)) 入力する前に、増分された配列 |
|
|
|
|
|
|
|
|
少なくとも次の次元を持つ (1+(n-1)*abs(incy)) 入力する前に、増分された配列 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.18 BLAS_SWAPプロシージャ
このプロシージャは、サイズがnの2つのベクトルの内容を交換します。
構文
UTL_NLA.BLAS_SWAP ( n IN POSITIVEN, x IN OUT UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, y IN OUT UTL_NLA_ARRAY_DBL, incy IN POSITIVEN);
UTL_NLA.BLAS_SWAP ( n IN POSITIVEN, x IN OUT UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, y IN OUT UTL_NLA_ARRAY_FLT, incy IN POSITIVEN);
パラメータ
表269-24 BLAS_SWAPプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
ベクトル |
|
|
少なくとも次の (1+(n-1)*abs(incx)) |
|
|
|
|
|
少なくとも次の (1+(n-1)*abs(incy)) |
|
|
|
269.5.19 BLAS_SYMMプロシージャ
このプロシージャは、マトリックス-マトリックス演算C := alpha*A*B + beta*CまたはC := alpha*B*A + beta*Cのいずれかを実行します。ここで、alphaおよびbetaはスカラー、Aは対称マトリックス、BおよびCはm行n列のマトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル3(マトリックス-マトリックス演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_SYMM ( side IN flag, uplo IN flag, m IN POSITIVEN, n IN POSITIVEN, alpha IN SCALAR_DOUBLE, a IN UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, b IN UTL_NLA_ARRAY_DBL, ldb IN POSITIVEN, beta IN SCALAR_DOUBLE, c IN OUT UTL_NLA_ARRAY_DBL, ldc IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_SYMM ( side IN flag, uplo IN flag, m IN POSITIVEN, n IN POSITIVEN, alpha IN SCALAR_FLOAT, a IN UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, b IN UTL_NLA_ARRAY_FLT, ldb IN POSITIVEN, beta IN SCALAR_FLOAT, c IN OUT UTL_NLA_ARRAY_FLT, ldc IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-25 BLAS_SYMMプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
対称マトリックス
|
|
|
配列
|
|
|
マトリックス |
|
|
マトリックス |
|
|
|
|
|
次元
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
次元 入力する前に、配列 |
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
|
|
c |
次元 |
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.20 BLAS_SYMVプロシージャ
このプロシージャは、マトリックス-ベクトル演算y := alpha*A*x + beta*yを実行します。ここで、alphaおよびbetaはスカラー、xおよびyはn要素のベクトル、Aはn行n列の対称マトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル2(マトリックス-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_SYMV ( uplo IN flag, n IN POSITIVEN, alpha IN SCALAR_DOUBLE, a IN UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, x IN UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, beta IN SCALAR_DOUBLE, y IN OUT UTL_NLA_ARRAY_DBL, incy IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_SYMV ( uplo IN flag, n IN POSITIVEN, alpha IN SCALAR_FLOAT, a IN UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, x IN UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, beta IN SCALAR_FLOAT, y IN OUT UTL_NLA_ARRAY_FLT, incy IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-26 BLAS_SYMVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
配列
|
|
|
マトリックス |
|
|
|
|
|
次元
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
少なくとも次の次元を持つ (1+(n-1)*abs(incx)) 入力する前に、増分された配列 |
|
|
|
|
|
|
|
|
少なくとも次の次元を持つ (1+(n-1)*abs(incy)) 入力する前に、増分された配列 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.21 BLAS_SYRプロシージャ
このプロシージャは、ランク1演算A := alpha*x*x' + Aを実行します。ここで、alphaは実スカラー、xはn要素のベクトル、Aはn行n列の対称マトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル2(マトリックス-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_SYR ( uplo IN flag, n IN POSITIVEN, alpha IN SCALAR_DBL, x IN OUT UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_SYR ( uplo IN flag, n IN POSITIVEN, alpha IN SCALAR_FLT, x IN OUT UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-27 BLAS_SYRプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
配列
|
|
|
マトリックス |
|
|
スカラーalphaを指定します。 |
|
|
少なくとも次の次元を持つ (1+(n-1)*abs(incx)) 入力する前に、増分された配列 |
|
|
|
|
|
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.22 BLAS_SYR2プロシージャ
このプロシージャは、ランク2演算A := alpha*x*y' + alpha*y*x' + Aを実行します。ここで、alphaはスカラー、xおよびyはn要素のベクトル、Aはn行n列の対称マトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル2(マトリックス-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_SYR2 ( uplo IN flag, n IN POSITIVEN, alpha IN SCALAR_DBL, x IN UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, y IN UTL_NLA_ARRAY_DBL, incy IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_SYR2 ( uplo IN flag, n IN POSITIVEN, alpha IN SCALAR_FLT, x IN UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, y IN UTL_NLA_ARRAY_FLT, incy IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-28 BLAS_SYR2プロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
配列
|
|
|
マトリックス |
|
|
スカラーalphaを指定します。 |
|
|
少なくとも次の次元を持つ ( 1 + ( n - 1 )*abs( incx ) ) 入力する前に、増分された配列 |
|
|
|
|
|
少なくとも次の次元を持つ ( 1 + ( n - 1 )*abs( incy ) ) 入力する前に、増分された配列 |
|
|
|
|
|
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.23 BLAS_SYR2Kプロシージャ
これは、対称ランク2 k演算C := alpha*A*B' + alpha*B*A' + beta*CまたはC := alpha*A'*B + alpha*B'*A + beta*Cのいずれかを実行します。ここで、alphaおよびbetaはスカラー、Cはn行n列の対称マトリックス、AおよびBは1番目のケースではn行k列のマトリックス、2番目のケースではk行n列のマトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル3(マトリックス-マトリックス演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_SYR2K ( uplo IN flag, trans IN flag, n IN POSITIVEN, k IN POSITIVEN, alpha IN SCALAR_DOUBLE, a IN UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, b IN UTL_NLA_ARRAY_DBL, ldb IN POSITIVEN, beta IN SCALAR_DOUBLE, c IN OUT UTL_NLA_ARRAY_DBL, ldc IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_SYR2K ( uplo IN flag, trans IN flag, n IN POSITIVEN, k IN POSITIVEN, alpha IN SCALAR_FLOAT, a IN UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, b IN OUT UTL_NLA_ARRAY_FLT, ldb IN POSITIVEN, beta IN SCALAR_FLOAT, c IN OUT UTL_NLA_ARRAY_FLT, ldc IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-29 BLAS_SYR2Kプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
配列
|
|
|
実行する演算を指定します。
|
|
|
マトリックス |
|
|
|
|
|
|
|
|
次元
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
次元
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
|
|
c |
次元
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.24 BLAS_SYRKプロシージャ
このプロシージャは、対称ランクk演算C := alpha*A*A' + beta*CまたはC := alpha*A'*A + beta*Cのいずれかを実行します。ここで、alphaおよびbetaはスカラー、Cはn行n列の対称マトリックス、Aは1番目のケースではn行k列のマトリックス、2番目のケースではk行n列のマトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル3(マトリックス-マトリックス演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_SYRK ( uplo IN flag, trans IN flag, n IN POSITIVEN, k IN POSITIVEN, alpha IN SCALAR_DOUBLE, a IN UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, beta IN SCALAR_DOUBLE, c IN OUT UTL_NLA_ARRAY_DBL, ldc IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_SYRK ( uplo IN flag, trans IN flag, n IN POSITIVEN, k IN POSITIVEN, alpha IN SCALAR_FLOAT, a IN UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, beta IN SCALAR_FLOAT, c IN OUT UTL_NLA_ARRAY_DBL, ldc IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-30 BLAS_SYRKプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
配列
|
|
|
実行する演算を指定します。
|
|
|
マトリックス |
|
|
|
|
|
|
|
|
次元
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
|
|
c |
次元
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.25 BLAS_TBMVプロシージャ
このプロシージャは、マトリックス-ベクトル演算x := A*xまたはx := A'*xを実行します。ここで、xはn要素のベクトル、Aは(k+1)個の対角を持つn行n列の単位または単位以外の上三角または下三角バンド・マトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル2(マトリックス-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_TBMV ( uplo IN flag, trans IN flag, diag IN flag, n IN POSITIVEN, k IN NATURALN, a IN UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, x IN OUT UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_TBMV ( uplo IN flag, trans IN flag, diag IN flag, n IN POSITIVEN, k IN NATURALN, a IN UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, x IN OUT UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-31 BLAS_TBMVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
マトリックスが上三角マトリックスまたは下三角マトリックスのいずれであるかを指定します。
|
|
|
実行する演算を指定します。
|
|
|
|
|
|
マトリックス |
|
|
Kは、 |
|
|
次元(
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
少なくとも次元 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.26 BLAS_TBSVプロシージャ
このプロシージャは、連立方程式A*x = bまたはA'*x = bのいずれかの解を求めます。ここで、bおよびxはn要素のベクトル、Aは(k+1)個の対角を持つn行n列の単位または単位以外の上三角または下三角バンド・マトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル2(マトリックス-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_TBSV ( uplo IN flag, trans IN flag, diag IN flag, n IN POSITIVEN, k IN NATURALN, a IN UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, x IN OUT UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_STBSV ( uplo IN flag, trans IN flag, diag IN flag, n IN POSITIVEN, k IN NATURALN, a IN UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, x IN OUT UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-32 BLAS_TBSVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
マトリックスが上三角マトリックスまたは下三角マトリックスのいずれであるかを指定します。
|
|
|
解を求める方程式を指定します。
|
|
|
|
|
|
マトリックス |
|
|
Kは、 |
|
|
次元
|
|
|
入力時に、 |
|
|
少なくとも次の次元を持つ ( 1 + ( 入力する前に、増分された配列 終了時、 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
使用上のノート
このルーチンには、特異点または特異点近傍に対するテストは含まれていません。このようなテストは、このルーチンをコールする前に実行する必要があります。
269.5.27 BLAS_TPMVプロシージャ
このプロシージャは、マトリックス-ベクトル演算x := A*xまたはx := A'*xを実行します。ここで、xはn要素のベクトル、Aはパックされた形式のn行n列の単位または単位以外の上三角または下三角マトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル2(マトリックス-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_TPMV ( uplo IN flag, trans IN flag, diag IN flag, n IN POSITIVEN, ap IN UTL_NLA_ARRAY_DBL, x IN OUT UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_TBMV ( uplo IN flag, trans IN flag, diag IN flag, n IN POSITIVEN, ap IN UTL_NLA_ARRAY_FLT, x IN OUT UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-33 BLAS_TPMVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
マトリックスが上三角マトリックスまたは下三角マトリックスのいずれであるかを指定します。
|
|
|
実行する演算を指定します。
|
|
|
|
|
|
マトリックス |
|
|
次元
|
|
|
少なくとも次元 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.28 BLAS_TPSVプロシージャ
このプロシージャは、連立方程式A*x = bまたはA'*x = bのいずれかの解を求めます。ここで、bおよびxはn要素のベクトル、Aはパックされた形式のn行n列の単位または単位以外の上三角または下三角マトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル2(マトリックス-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_TPSV ( uplo IN flag, trans IN flag, diag IN flag, n IN POSITIVEN, ap IN UTL_NLA_ARRAY_DBL, x IN OUT UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_TPSV ( uplo IN flag, trans IN flag, diag IN flag, n IN POSITIVEN, ap IN UTL_NLA_ARRAY_FLT, x IN OUT UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-34 BLAS_TPSVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
マトリックスが上三角マトリックスまたは下三角マトリックスのいずれであるかを指定します。
|
|
|
実行する演算を指定します。
|
|
|
|
|
|
マトリックス |
|
|
少なくとも次の次元を持つ ((n*(n+1))/2)
|
|
|
少なくとも次の次元を持つ ( 1 + ( 入力する前に、増分された配列 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
使用上のノート
このルーチンには、特異点または特異点近傍に対するテストは含まれていません。このようなテストは、このルーチンをコールする前に実行する必要があります。
269.5.29 BLAS_TRMMプロシージャ
このプロシージャは、マトリックス-マトリックス演算を実行します。
これは、次のマトリックス-マトリックス演算のいずれかを実行します。
B := alpha*op( A )*B
または
B := alpha*B*op( A )
ここで、alphaはスカラー、Bはm行n列のマトリックス、Aは単位または単位以外の上三角または下三角マトリックス、op(A)は次のいずれかです。
op( A ) = A
または
op( A ) = A'
参照:
このグループの他のサブプログラムについては、「BLASレベル3(マトリックス-マトリックス演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_TRMM ( side IN flag, uplo IN flag, transa IN flag, diag IN flag, m IN POSITIVEN, n IN POSITIVEN, alpha IN SCALAR_DOUBLE, a IN UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, b IN OUT UTL_NLA_ARRAY_DBL, ldb IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_TRMM ( side IN flag, uplo IN flag, transa IN flag, diag IN flag, m IN POSITIVEN, n IN POSITIVEN, alpha IN SCALAR_FLOAT, a IN UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, b IN OUT UTL_NLA_ARRAY_FLT, ldb IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-35 BLAS_TRMMプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
対称マトリックス
|
|
|
配列
|
|
|
マトリックス乗算で使用する
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
次元 入力する前に、配列 |
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.30 BLAS_TRMVプロシージャ
このプロシージャは、マトリックス-ベクトル演算x := A*xまたはx := A'*xを実行します。ここで、xはn要素のベクトル、Aはn行n列の単位または単位以外の上三角または下三角マトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル2(マトリックス-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_TRMV ( uplo IN flag, trans IN flag, diag IN flag, n IN POSITIVEN, a IN UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, x IN OUT UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_TRMV ( uplo IN flag, trans IN flag, diag IN flag, n IN POSITIVEN, a IN UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, x IN OUT UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-36 BLAS_TRMVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
マトリックスが上三角マトリックスまたは下三角マトリックスのいずれであるかを指定します。
|
|
|
実行する演算を指定します。
|
|
|
|
|
|
マトリックス |
|
|
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
少なくとも次元 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.31 BLAS_TRSMプロシージャ
このプロシージャは、マトリックス-マトリックス演算を実行します。
これは、次のマトリックス-マトリックス演算のいずれかを実行します。
op( A )*X = alpha*B
または
X*op( A ) = alpha*B
ここで、alphaはスカラー、XおよびBはm行n列のマトリックス、Aは単位または単位以外の上三角または下三角マトリックス、op(A)は次のいずれかです。
op( A ) = A
または
op( A ) = A'
マトリックスXは、Bに上書きされます。
参照:
このグループの他のサブプログラムについては、「BLASレベル3(マトリックス-マトリックス演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_TRSM ( side IN flag, uplo IN flag, transa IN flag, diag IN flag, m IN POSITIVEN, n IN POSITIVEN, alpha IN SCALAR_DOUBLE, a IN UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, b IN OUT UTL_NLA_ARRAY_DBL, ldb IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_TRSM ( side IN flag, uplo IN flag, transa IN flag, diag IN flag, m IN POSITIVEN, n IN POSITIVEN, alpha IN SCALAR_FLOAT, a IN UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, b IN OUT UTL_NLA_ARRAY_FLT, ldb IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-37 BLAS_TRSMプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
対称マトリックス
|
|
|
配列
|
|
|
マトリックス乗算で使用する
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
入力する前に、配列 |
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.32 BLAS_TRSVプロシージャ
このプロシージャは、連立方程式A*x = bまたはA'*x = bのいずれかの解を求めます。ここで、bおよびxはn要素のベクトル、Aはn行n列の単位または単位以外の上三角または下三角マトリックスです。
参照:
このグループの他のサブプログラムについては、「BLASレベル2(マトリックス-ベクトル演算)サブプログラム」を参照してください。
構文
UTL_NLA.BLAS_TRSV ( uplo IN flag, trans IN flag, diag IN flag, n IN POSITIVEN, a IN UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, x IN OUT UTL_NLA_ARRAY_DBL, incx IN POSITIVEN, pack IN flag DEFAULT 'C');
UTL_NLA.BLAS_TRSV ( uplo IN flag, trans IN flag, diag IN flag, n IN POSITIVEN, a IN UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, x IN OUT UTL_NLA_ARRAY_FLT, incx IN POSITIVEN, pack IN flag DEFAULT 'C');
パラメータ
表269-38 BLAS_TRSVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
マトリックスが上三角マトリックスまたは下三角マトリックスのいずれであるかを指定します。
|
|
|
実行する演算を指定します。
|
|
|
|
|
|
マトリックス |
|
|
|
|
|
コール元の(サブ)プログラムで宣言されているように、 |
|
|
少なくとも次の次元を持つ (1 + (n - 1) * abs (incx)) 入力する前に、増分された配列 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
使用上のノート
このルーチンには、特異点または特異点近傍に対するテストは含まれていません。このようなテストは、このルーチンをコールする前に実行する必要があります。
269.5.33 LAPACK_GBSVプロシージャ
実連立一次方程式a * x = bの解を求めます。ここで、aはkl個の下対角およびku個の上対角を持つn次のバンド・マトリックス、xおよびbはn行nrhs列のマトリックスです。
Aの分解には、部分ピボットおよび行交換を使用したLU分解が次のように使用されます。
a = L * U
ここで、Lは順列とkl個の下対角を持つ単位下三角マトリックスの積、Uはkl+ku個の上対角を持つ上三角マトリックスです。aの分解された形式を使用して、連立方程式の解が求められます。
a * x = b
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(一次方程式)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_GBSV ( n IN POSITIVEN, kl IN NATURALN, ku IN NATURALN, nrhs IN POSITIVEN, ab IN OUT UTL_NLA_ARRAY_DBL, ldab IN POSITIVEN, ipiv IN OUT UTL_NLA_ARRAY_INT, b IN OUT UTL_NLA_ARRAY_DBL, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_GBSV ( n IN POSITIVEN, kl IN NATURALN, ku IN NATURALN, nrhs IN POSITIVEN, ab IN OUT UTL_NLA_ARRAY_FLT, ldab IN POSITIVEN, ipiv IN OUT UTL_NLA_ARRAY_INT, b IN OUT UTL_NLA_ARRAY_FLT, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-39 LAPACK_GBSVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
一次方程式の数(マトリックス |
|
|
aのバンド内の下対角の数。 |
|
|
|
|
|
右辺の数(マトリックス |
|
|
入力時は、バンド・ストレージの行
終了時は、分解の詳細です。
|
|
|
配列abの先頭の次元。
|
|
|
次元 順列マトリックス |
|
|
次元 入力時は、右辺マトリックス 終了時、 |
|
|
配列bの先頭の次元。
|
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.34 LAPACK_GEESプロシージャ
このプロシージャは、n行n列の実非対称マトリックスA、固有値、実Schur形式TおよびオプションでSchurベクトルのマトリックスZを計算します。
これによって、Schur分解A = Z*T*(Z**T)が実行されます。
マトリックスは、1行1列および2行2列のブロックを持つ上準三角の場合は実Schur形式になります。2行2列のブロックは、次の形式で標準化されます。
[ a b ]
[ c a ]
ここで、b*c < 0です。このようなブロックの固有値は、a +- sqrt(bc)です。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(LLSおよび固有値問題)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_GEES ( jobvs IN flag, n IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, wr IN OUT UTL_NLA_ARRAY_DBL, wi IN OUT UTL_NLA_ARRAY_DBL, vs IN OUT UTL_NLA_ARRAY_DBL, ldvs IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_GEES ( jobvs IN flag, n IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, wr IN OUT UTL_NLA_ARRAY_FLT, wi IN OUT UTL_NLA_ARRAY_FLT, vs IN OUT UTL_NLA_ARRAY_FLT, ldvs IN POSITIVEN, info OUT integer, pack IN flag DEFAULT 'C');
パラメータ
表269-40 LAPACK_GEESプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
マトリックス |
|
a |
次元
|
|
|
配列 |
|
|
次元
|
|
|
次元
|
|
|
次元
|
|
|
配列 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.35 LAPACK_GELSプロシージャ
このプロシージャは、AのQRまたはLQ分解を使用して、m行n列マトリックスA、またはこのマトリックスの転置マトリックスが含まれる過剰決定または過小決定の実連立一次方程式の解を求めます。Aに最大階数が含まれていることを前提とします。
次のオプションがあります。
-
TRANS = 'N'およびm >= nの場合は、過剰決定連立方程式の最小二乗解を求めます。つまり、最小二乗問題を解きます。minimize || B - A*X ||
-
TRANS = 'N'およびm < nの場合は、過小決定連立方程式A * X = Bの最小ノルム解を求めます。 -
TRANS = 'T'およびm > nの場合は、過小決定連立方程式A**T * X = Bの最小ノルム解を求めます。 -
TRANS = 'T'およびm < nの場合は、過剰決定連立方程式の最小二乗解を求めます。つまり、最小二乗問題minimize || B - A**T * X ||を解きます。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(LLSおよび固有値問題)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_GELS ( trans IN flag, m IN POSITIVEN, n IN POSITIVEN, nrhs IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, b IN OUT UTL_NLA_ARRAY_DBL, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_GELS ( trans IN flag, m IN POSITIVEN, n IN POSITIVEN, nrhs IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, b IN OUT UTL_NLA_ARRAY_FLT, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-41 LAPACK_GELSプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
マトリックス |
|
|
マトリックス |
|
|
右辺の数(マトリックス |
|
|
入力時は、右辺ベクトルのマトリックス 終了時、 |
|
|
配列 |
|
|
次元 入力時は、右辺ベクトルのマトリックス 終了時、
|
|
|
配列
|
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.36 LAPACK_GESDDプロシージャ
このプロシージャは、m行n列の実マトリックスAの特異値分解(SVD)を計算します。また、オプションで左右の特異ベクトルを計算します。特異ベクトルが必要な場合は、浮動小数点演算に関する緩やかな仮定を設ける分割統治法アルゴリズムを使用します。
SVDは、次のように記述されます。
A = U * SIGMA * transpose(V)
ここで、SIGMAは、m行n列のマトリックスで、min(m,n)個の対角要素を除いて0 (ゼロ)です。Uはm行m列の直交マトリックス、Vはn行n列の直交マトリックスです。SIGMAの対角要素はAの特異値です。これらは負ではない実数で、降順で戻されます。UおよびVの最初のmin(m,n)列は、Aの左右特異ベクトルです。
ルーチンによってVではなくV**Tが戻されることに注意してください。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(LLSおよび固有値問題)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_GESDD ( jobz IN flag, m IN POSITIVEN, n IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, s IN OUT UTL_NLA_ARRAY_DBL, u IN OUT UTL_NLA_ARRAY_DBL, ldu IN POSITIVEN, vt IN OUT UTL_NLA_ARRAY_DBL, ldvt IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_GESDD ( jobz IN flag, m IN POSITIVEN, n IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, s IN OUT UTL_NLA_ARRAY_FLT, u IN OUT UTL_NLA_ARRAY_FLT, ldu IN POSITIVEN, vt IN OUT UTL_NLA_ARRAY_FLT, ldvt IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-42 LAPACK_GESDDプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
マトリックス
|
|
|
マトリックス |
|
|
マトリックス |
|
|
次元 入力時は、 終了時:
|
|
|
配列 |
|
|
次元
|
|
|
|
|
|
配列 |
|
|
次元
|
|
|
配列
|
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.37 LAPACK_GESVプロシージャ
実連立一次方程式a * x = b,の解を求めます。ここで、aはn行n列のマトリックス、xおよびbはn行nrhs列のマトリックスです。
Aの分解には、部分ピボットおよび行交換を使用したLU分解が次のように使用されます。
a = P * L * U
ここで、Pは順列マトリックス、Lは単位下三角マトリックス、Uは上三角マトリックスです。aの分解された形式を使用して、連立方程式の解が求められます。
a * x = b
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(一次方程式)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_GESV ( n IN POSITIVEN, nrhs IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, ipiv IN OUT UTL_NLA_ARRAY_INT, b IN OUT UTL_NLA_ARRAY_DBL, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_GESV ( n IN POSITIVEN, nrhs IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, ipiv IN OUT UTL_NLA_ARRAY_INT, b IN OUT UTL_NLA_ARRAY_FLT, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-43 LAPACK_GESVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
一次方程式の数(マトリックス |
|
|
右辺の数(マトリックス |
|
|
入力時は、 終了時は、分解 |
|
|
配列aの先頭の次元。
|
|
|
次元 順列マトリックス |
|
|
次元 入力時は、右辺マトリックス 終了時、 |
|
|
配列
|
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.38 LAPACK_GESVDプロシージャ
このプロシージャは、m行n列のマトリックスAの特異値分解(SVD)を計算します。また、オプションで左または右(あるいは両方)の特異ベクトルを計算します。
SVDは、次のように記述されます。
A = U * SIGMA * transpose(V)
ここで、SIGMAは、m行n列のマトリックスで、min(m,n)個の対角要素を除いて0 (ゼロ)です。Uはm行m列の直交マトリックス、Vはn行n列の直交マトリックスです。SIGMAの対角要素はAの特異値です。これらは負ではない実数で、降順で戻されます。UおよびVの最初のmin(m,n)列は、Aの左右特異ベクトルです。
ルーチンによってVではなくV**Tが戻されることに注意してください。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(LLSおよび固有値問題)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_GESVD ( jobu IN flag, jobvt IN flag, m IN POSITIVEN, n IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, s IN OUT UTL_NLA_ARRAY_DBL, u IN OUT UTL_NLA_ARRAY_DBL, ldu IN POSITIVEN, vt IN OUT UTL_NLA_ARRAY_DBL, ldvt IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_GESVD ( jobu IN flag, jobvt IN flag, m IN POSITIVEN, n IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, s IN OUT UTL_NLA_ARRAY_FLT, u IN OUT UTL_NLA_ARRAY_FLT, ldu IN POSITIVEN, vt IN OUT UTL_NLA_ARRAY_FLT, ldvt IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-44 LAPACK_GESVDプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
マトリックス
|
|
|
マトリックス
|
|
|
マトリックス |
|
|
マトリックス |
|
|
次元 入力時は、 終了時:
|
|
|
配列 |
|
|
次元
|
|
|
|
|
|
配列 |
|
|
次元
|
|
|
配列
|
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.39 LAPACK_GEEVプロシージャ
このプロシージャは、n行n列の実非対称マトリックスA、固有値およびオプションで左または右(あるいは両方)の固有ベクトルを計算します。
-
Aの右固有ベクトルv(j)は、A * v(j) = lambda(j) * v(j)を満たします。ここで、lambda(j)はその固有値です。 -
Aの左固有ベクトルu(j)は、u(j)**H * A = lambda(j) * u(j)**Hを満たします。ここで、u(j)**Hは、u(j)の共役転置マトリックスを示します。
計算された固有ベクトルは、1に等しいユークリッド・ノルムおよび最大の実部を持つように正規化されます。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(LLSおよび固有値問題)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_GEEV ( jobvl IN flag, jobvr IN flag, n IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, wr IN OUT UTL_NLA_ARRAY_DBL, wi IN OUT UTL_NLA_ARRAY_DBL, vl IN OUT UTL_NLA_ARRAY_DBL, ldvl IN POSITIVEN, vr IN OUT UTL_NLA_ARRAY_DBL, ldvr IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_GEEV ( jobvl IN flag, jobvr IN flag, n IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, wr IN OUT UTL_NLA_ARRAY_FLT, wi IN OUT UTL_NLA_ARRAY_FLT, vl IN OUT UTL_NLA_ARRAY_FLT, ldvl IN POSITIVEN, vr IN OUT UTL_NLA_ARRAY_FLT, ldvr IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-45 LAPACK_GEEVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
|
|
|
マトリックス |
|
|
次元
|
|
|
配列 |
|
|
次元
|
|
|
次元
|
|
|
次元
|
|
|
配列 |
|
|
次元
|
|
|
配列 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.40 LAPACK_GTSVプロシージャ
方程式a * x = b,の解を求めます。ここで、aは、部分ピボットを使用したガウス消去法によるn行n列の三重対角マトリックスです。
方程式a'*x = bの解は、引数duおよびdlの順序を交換して求めることができます。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(一次方程式)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_GTSV ( n IN POSITIVEN, nrhs IN POSITIVEN, dl IN OUT UTL_NLA_ARRAY_DBL, d IN OUT UTL_NLA_ARRAY_DBL, du IN OUT UTL_NLA_ARRAY_DBL, b IN OUT UTL_NLA_ARRAY_DBL, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_GTSV ( n IN POSITIVEN, nrhs IN POSITIVEN, dl IN OUT UTL_NLA_ARRAY_FLT, d IN OUT UTL_NLA_ARRAY_FLT, du IN OUT UTL_NLA_ARRAY_FLT, b IN OUT UTL_NLA_ARRAY_FLT, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-46 LAPACK_GTSVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
マトリックス |
|
|
右辺の数(マトリックス |
|
|
入力時、 終了時、 |
|
|
入力時、 終了時、 |
|
|
入力時、 終了時、 |
|
|
次元 入力時は、右辺マトリックス 終了時、 |
|
|
配列bの先頭の次元。
|
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.41 LAPACK_PBSVプロシージャ
実連立一次方程式a * x = b,の解を求めます。ここで、aはn行n列の正定値対称バンド・マトリックス、xおよびbはn行nrhs列のマトリックスです。
Aの分解には、コレスキ分解が次のように使用されます。
UPLO = 'U'の場合は、A = U**T*Uです。
または
UPLO = 'L'の場合は、A = L * L**Tです。
ここで、Uは上三角マトリックス、Lは下三角マトリックスです。Aの分解された形式を使用して、連立方程式A * X = Bの解が求められます。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(一次方程式)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_PBSV (
uplo IN flag,
n IN POSITIVEN,
kd IN NATURALN,
nrhs IN POSITIVEN,
ab IN OUT UTL_NLA_ARRAY_DBL,
ldab IN POSITIVEN,
b IN OUT UTL_NLA_ARRAY_DBL,
ldb IN POSITIVEN,
info OUT INTEGER,
pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_PBSV ( uplo IN flag, n IN POSITIVEN, kd IN NATURALN, nrhs IN POSITIVEN, ab IN OUT UTL_NLA_ARRAY_FLT, ldab IN POSITIVEN, b IN OUT UTL_NLA_ARRAY_FLT, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-47 LAPACK_PBSVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
一次方程式の数(マトリックス |
|
|
|
|
|
右辺の数(マトリックス |
|
|
入力時は、配列の最初の
詳細は、次の説明を参照してください。終了時、 |
|
|
配列
|
|
|
次元 入力時は、右辺マトリックス 終了時、 |
|
|
配列
|
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.42 LAPACK_POSVプロシージャ
実連立一次方程式a * x = b,の解を求めます。ここで、aはn行n列の正定値対称マトリックス、xおよびbはn行nrhs列のマトリックスです。
Aの分解には、コレスキ分解が次のように使用されます。
uplo = 'U'の場合は、A = U**T* Uです。
または
UPLO = 'L'の場合は、A = L * L**Tです。
ここで、Uは上三角マトリックス、Lは下三角マトリックスです。Aの分解された形式を使用して、連立方程式A * X = Bの解が求められます。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(一次方程式)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_POSV ( uplo IN flag, n IN POSITIVEN, nrhs IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, b IN OUT UTL_NLA_ARRAY_DBL, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_POSV ( uplo IN flag, n IN POSITIVEN, nrhs IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, b IN OUT UTL_NLA_ARRAY_FLT, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-48 LAPACK_POSVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
一次方程式の数(マトリックス |
|
|
右辺の数(マトリックス |
|
|
終了時、 |
|
|
配列aの先頭の次元。
|
|
|
次元 入力時は、右辺マトリックス 終了時、 |
|
|
配列bの先頭の次元。
|
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.43 LAPACK_PPSVプロシージャ
実連立一次方程式a * x = bの解を求めます。ここで、aはパックされた形式で格納されているn行n列の正定値対称マトリックス、xおよびbはn行nrhs列のマトリックスです。
Aの分解には、コレスキ分解が次のように使用されます。
UPLO = 'U'の場合は、A = U**T* Uです。
または
UPLO = 'L'の場合は、A = L * L**Tです。
ここで、Uは上三角マトリックス、Lは下三角マトリックスです。Aの分解された形式を使用して、連立方程式A * X = Bの解が求められます。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(一次方程式)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_PPSV (
uplo IN flag,
n IN POSITIVEN,
nrhs IN POSITIVEN,
ap IN OUT UTL_NLA_ARRAY_DBL,
b IN OUT UTL_NLA_ARRAY_DBL,
ldb IN POSITIVEN,
info OUT INTEGER,
pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_PPSV ( uplo IN flag, n IN POSITIVEN, nrhs IN POSITIVEN, ap IN OUT UTL_NLA_ARRAY_FLT, b IN OUT UTL_NLA_ARRAY_FLT, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-49 LAPACK_PPSVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
一次方程式の数(マトリックス |
|
|
右辺の数(マトリックス |
|
|
入力時は、線形配列に列方向でパックされている、対称マトリックス
終了時、 |
|
|
次元 入力時は、右辺マトリックス 終了時、 |
|
|
配列bの先頭の次元。
|
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.44 LAPACK_PTSVプロシージャ
実連立一次方程式a * x = b,の解を求めます。ここで、aはn行n列の正定値対称三重対角マトリックス、xおよびbはn行nrhs列のマトリックスです。
aはA = L*D*L**Tとして分解され、aの分解された形式を使用して、連立方程式の解が求められます。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(一次方程式)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_PTSV ( n IN POSITIVEN, nrhs IN POSITIVEN, d IN OUT UTL_NLA_ARRAY_DBL, e IN OUT UTL_NLA_ARRAY_DBL, b IN OUT UTL_NLA_ARRAY_DBL, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_PTSV ( n IN POSITIVEN, nrhs IN POSITIVEN, d IN OUT UTL_NLA_ARRAY_FLT, e IN OUT UTL_NLA_ARRAY_FLT, b IN OUT UTL_NLA_ARRAY_FLT, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-50 LAPACK_PTSVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
マトリックス |
|
|
右辺の数(マトリックス |
|
|
入力時は、三重対角マトリックス 終了時は、分解 |
|
|
入力時は、三重対角マトリックス 終了時は、 |
|
|
次元 入力時は、右辺マトリックス 終了時、 |
|
|
配列
|
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.45 LAPACK_SBEVプロシージャ
このプロシージャは、すべての固有値を計算します。また、オプションで、実対称バンド・マトリックスAの固有ベクトルを計算します。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(LLSおよび固有値問題)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_SBEV ( jobz IN flag, uplo IN flag, n IN POSITIVEN, kd IN NATURALN, ab IN OUT UTL_NLA_ARRAY_DBL, ldab IN POSITIVEN, w IN OUT UTL_NLA_ARRAY_DBL, z IN OUT UTL_NLA_ARRAY_DBL, ldz IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_SBEV ( jobz IN flag, uplo IN flag, n IN POSITIVEN, kd IN NATURALN, ab IN OUT UTL_NLA_ARRAY_FLT, ldab IN POSITIVEN, w IN OUT UTL_NLA_ARRAY_FLT, z IN OUT UTL_NLA_ARRAY_FLT, ldz IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-51 LAPACK_SBEVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
|
|
|
マトリックス |
|
|
|
|
|
入力時は、配列の最初の
終了時、
|
|
|
配列 |
|
|
次元
|
|
|
次元
|
|
|
配列 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.46 LAPACK_SBEVDプロシージャ
このプロシージャは、すべての固有値を計算します。また、オプションで実対称マトリックスAの固有ベクトルを計算します。固有ベクトルが必要な場合は、浮動小数点演算に関する緩やかな仮定を設ける分割統治法アルゴリズムを使用します。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(LLSおよび固有値問題)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_SBEVD ( jobz IN flag, uplo IN flag, n IN POSITIVEN, kd IN NATURALN, ab IN OUT UTL_NLA_ARRAY_DBL, ldab IN POSITIVEN, w IN OUT UTL_NLA_ARRAY_DBL, z IN OUT UTL_NLA_ARRAY_DBL, ldz IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_SBEVD ( jobz IN flag, uplo IN flag, n IN POSITIVEN, kd IN NATURALN, ab IN OUT UTL_NLA_ARRAY_FLT, ldab IN POSITIVEN, w IN OUT UTL_NLA_ARRAY_FLT, z IN OUT UTL_NLA_ARRAY_FLT, ldz IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-52 LAPACK_SBEVDプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
|
|
|
マトリックス |
|
|
|
|
|
入力時は、配列の最初の
終了時、
|
|
|
配列 |
|
|
次元
|
|
|
次元
|
|
|
配列 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.47 LAPACK_SPEVプロシージャ
このプロシージャは、すべての固有値を計算します。また、オプションで、パックされて格納されている実対称マトリックスAの固有ベクトルを計算します。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(LLSおよび固有値問題)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_SPEV ( jobz IN flag, uplo IN flag, n IN POSITIVEN, ap IN OUT UTL_NLA_ARRAY_DBL, w IN OUT UTL_NLA_ARRAY_DBL, z IN OUT UTL_NLA_ARRAY_DBL, ldz IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_SPEV ( jobz IN flag, uplo IN flag, n IN POSITIVEN, ap IN OUT UTL_NLA_ARRAY_FLT, w IN OUT UTL_NLA_ARRAY_FLT, z IN OUT UTL_NLA_ARRAY_FLT, ldz IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-53 LAPACK_SPEVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
|
|
|
マトリックス |
|
|
入力時は、線形配列に列方向でパックされている、対称マトリックス
終了時、
|
|
|
次元
|
|
|
次元
|
|
|
配列 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.48 LAPACK_SPEVDプロシージャ
このプロシージャは、すべての固有値を計算します。また、オプションで、パックされて格納されている実対称マトリックスAの固有ベクトルを計算します。固有ベクトルが必要な場合は、分割統治アルゴリズムが使用されます。分割統治アルゴリズムは、浮動小数点演算に関する緩やかな仮定を設けます。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(LLSおよび固有値問題)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_SPEVD ( jobz IN flag, uplo IN flag, n IN POSITIVEN, ap IN OUT UTL_NLA_ARRAY_DBL, w IN OUT UTL_NLA_ARRAY_DBL, z IN OUT UTL_NLA_ARRAY_DBL, ldz IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_SPEVD ( jobz IN flag, uplo IN flag, n IN POSITIVEN, ap IN OUT UTL_NLA_ARRAY_FLT, w IN OUT UTL_NLA_ARRAY_FLT, z IN OUT UTL_NLA_ARRAY_FLT, ldz IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-54 LAPACK_SPEVDプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
|
|
|
マトリックス |
|
|
入力時は、線形配列に列方向でパックされている、対称マトリックス
終了時、
|
|
|
次元
|
|
|
次元
|
|
|
配列 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.49 LAPACK_SPSVプロシージャ
実連立一次方程式a * x = b,の解を求めます。ここで、aはパックされた形式で格納されているn行n列の対称マトリックス、xおよびbはn行nrhs列のマトリックスです。
Aの分解には、対角ピボット法が次のように使用されます。
UPLO = 'U'の場合は、A = U * D * U**Tです。
または
UPLO = 'L'の場合は、A = L * D * L**Tです。
ここで、U(またはL)は順列マトリックスと単位上(下)三角マトリックスの積、Dは1行1列および2行2列の対角ブロックを持つ対称ブロック対角マトリックスです。Aの分解された形式を使用して、連立方程式A * X = Bの解が求められます。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(一次方程式)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_SPSV ( uplo IN flag, n IN POSITIVEN, nrhs IN POSITIVEN, ap IN OUT UTL_NLA_ARRAY_DBL, ipiv IN OUT UTL_NLA_ARRAY_INT, b IN OUT UTL_NLA_ARRAY_DBL, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_SPSV ( uplo IN flag, n IN POSITIVEN, nrhs IN POSITIVEN, ap IN OUT UTL_NLA_ARRAY_FLT, ipiv IN OUT UTL_NLA_ARRAY_INT, b IN OUT UTL_NLA_ARRAY_FLT, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-55 LAPACK_SPSVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
一次方程式の数(マトリックス |
|
|
右辺の数(マトリックス |
|
|
入力時は、線形配列に列方向でパックされている、対称マトリックス
詳細は、次の説明を参照してください。 終了時は、ブロック対角マトリックス |
|
|
次元
|
|
|
次元 入力時は、 終了時、 |
|
|
配列
|
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.50 LAPACK_STEVプロシージャ
このプロシージャは、すべての固有値を計算します。また、オプションで、実対称三重対角マトリックスAの固有ベクトルを計算します。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(LLSおよび固有値問題)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_STEV ( jobz IN flag, n IN POSITIVEN, d IN OUT UTL_NLA_ARRAY_DBL, e IN OUT UTL_NLA_ARRAY_DBL, z IN OUT UTL_NLA_ARRAY_DBL, ldz IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_STEV ( jobz IN flag, n IN POSITIVEN, d IN OUT UTL_NLA_ARRAY_FLT, e IN OUT UTL_NLA_ARRAY_FLT, z IN OUT UTL_NLA_ARRAY_FLT, ldz IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-56 LAPACK_STEVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
マトリックス |
|
|
次元
|
|
e |
次元
|
|
|
次元
|
|
|
配列 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.51 LAPACK_STEVDプロシージャ
このプロシージャは、すべての固有値を計算します。また、オプションで、実対称三重対角マトリックスの固有ベクトルを計算します。固有ベクトルが必要な場合は、浮動小数点演算に関する緩やかな仮定を設ける分割統治法アルゴリズムを使用します。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(LLSおよび固有値問題)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_STEVD ( jobz IN flag, n IN POSITIVEN, d IN OUT UTL_NLA_ARRAY_DBL, e IN OUT UTL_NLA_ARRAY_DBL, z IN OUT UTL_NLA_ARRAY_DBL, ldz IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_STEVD( jobz IN flag, n IN POSITIVEN, d IN OUT UTL_NLA_ARRAY_FLT, e IN OUT UTL_NLA_ARRAY_FLT, z IN OUT UTL_NLA_ARRAY_FLT, ldz IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-57 LAPACK_STEVDプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
マトリックス |
|
|
次元
|
|
e |
次元
|
|
|
次元
|
|
|
配列 |
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.52 LAPACK_SYEVプロシージャ
このプロシージャは、すべての固有値を計算します。また、オプションで、実対称マトリックスAの固有ベクトルを計算します。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(LLSおよび固有値問題)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_SYEV ( jobz IN flag, uplo IN flag, n IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, w IN OUT UTL_NLA_ARRAY_DBL, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_SYEV ( jobz IN flag, uplo IN flag, n IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, w IN OUT UTL_NLA_ARRAY_FLT, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-58 LAPACK_SYEVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
|
|
|
マトリックス |
|
|
入力時は、対称マトリックス
終了時:
|
|
|
配列 |
|
|
次元
|
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.53 LAPACK_SYEVDプロシージャ
このプロシージャは、すべての固有値を計算します。また、オプションで、実対称マトリックスAの固有ベクトルを計算します。固有ベクトルが必要な場合は、浮動小数点演算に関する緩やかな仮定を設ける分割統治法アルゴリズムを使用します。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(LLSおよび固有値問題)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_SYEVD (
jobz IN flag, uplo IN flag, n IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, w IN OUT UTL_NLA_ARRAY_DBL, info OUT INTEGER, pack IN flag DEFAULT 'C'); UTL_NLA.LAPACK_SYEVD ( jobz IN flag, uplo IN flag, n IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, w IN OUT UTL_NLA_ARRAY_FLT, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-59 LAPACK_SYEVDプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
|
|
|
マトリックス |
|
|
入力時は、対称マトリックス
終了時:
|
|
|
配列 |
|
|
次元
|
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|
269.5.54 LAPACK_SYSVプロシージャ
実連立一次方程式a * x = b,の解を求めます。ここで、aはn行n列の対称マトリックス、xおよびbはn行nrhs列のマトリックスです。
Aの分解には、対角ピボット法が次のように使用されます。
UPLO = 'U'の場合は、A = U * D * U**Tです。
または
UPLO = 'L'の場合は、A = L * D * L**Tです。
ここで、U(またはL)は順列マトリックスと単位上(下)三角マトリックスの積、Dは1行1列および2行2列の対角ブロックを持つ対称ブロック対角マトリックスです。Aの分解された形式を使用して、連立方程式A * X = Bの解が求められます。
参照:
このグループの他のサブプログラムについては、「LAPACKドライバ・ルーチン(一次方程式)サブプログラム」を参照してください。
構文
UTL_NLA.LAPACK_SYSV ( uplo IN flag, n IN POSITIVEN, nrhs IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_DBL, lda IN POSITIVEN, ipiv IN OUT UTL_NLA_ARRAY_INT, b IN OUT UTL_NLA_ARRAY_DBL, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
UTL_NLA.LAPACK_SYSV ( uplo IN flag, n IN POSITIVEN, nrhs IN POSITIVEN, a IN OUT UTL_NLA_ARRAY_FLT, lda IN POSITIVEN, ipiv IN OUT UTL_NLA_ARRAY_INT, b IN OUT UTL_NLA_ARRAY_FLT, ldb IN POSITIVEN, info OUT INTEGER, pack IN flag DEFAULT 'C');
パラメータ
表269-60 LAPACK_SYSVプロシージャのパラメータ
| パラメータ | 説明 |
|---|---|
|
|
|
|
|
一次方程式の数(マトリックス |
|
|
右辺の数(マトリックス |
|
|
入力時は、対称マトリックス 終了時、 |
|
|
配列
|
|
|
次元
|
|
|
次元 入力時は、右辺マトリックス 終了時、 |
|
|
配列
|
|
|
|
|
|
(オプション)マトリックスのパッキングのフラグを設定します。
|