9.スケーリング/ピボッティング
12.連立方程式の解法(反復法)
| 行列基本操作 | ||
|---|---|---|
| FuncAryExtRow(mat1, rowExt, Optional NumFlag) | 二次配列から指定行を抽出 | |
| FuncAryExtCol(mat1, colExt, Optional NumFlag) | 二次配列から指定列を抽出 | |
| FuncMatTrans(mat1) | 行列の転置 | |
| ExchgAryRow(matA, IdEx1, IdEx2) | 配列の指定行交換(Subプロシージャ) | |
| ExchgAryCol(matA, IdEx1, IdEx2) | 配列の指定列交換(Subプロシージャ) | |
| FuncChkSym(matA, Optional rlim) | 対称行列チェック | |
| 行列基本計算 | ||
| FuncMatSum(mat1, mat2) | 行列の和 | |
| FuncMatDif(mat1, mat2) | 行列の差 | |
| FuncMatScl(mat1, scl) | 行列のスカラー倍 | |
| FuncMatPro(mat1, mat2, Optional rlim) | 行列の積 | |
| FuncMatHad(mat1, mat2, Optional rlim) | アダマール積 | |
| FuncMatDiad(mat1, mat2, Optional rlim) | ダイアド積 | |
| ベクトル演算 | ||
| FuncVecDot(vec1, vec2) | ベクトルの内積 | |
| FuncVecNom(vec1) | ベクトルの正規化(大きさを1にする) | |
| FuncVecRot(vec1, ang, Optional ax) | ベクトルの回転 | |
| 数列(等間隔)の作成 | ||
| FuncLnSpaceN(rng1, rng2, Nsep) | 等間隔数列の作成(分割数指定) | |
| FuncLnSpaceP(rng1, rng2, dX, Optional dir) | 等間隔数列の作成(ピッチ指定) | |
| FuncLogSpaceN(rng1, rng2, Nsep) | 対数等間隔数列の作成 | |
| 行列の作成 | ||
| FuncMatId(order) | 単位行列 | |
| FuncMatZeros(Nr, Nc) | 零行列 | |
| FuncMatOnes(Nr, Nc) | 要素がすべて1の行列 | |
| FuncMatRnd(Rmax, vartype, Flag, Nr, Optional Nc) | 乱数行列 | |
| FuncMatBaseTr(N1, N2, order) | 基底変換行列(行/列入れ替え) | |
| FuncMatBaseMu(N1, scl, order) | 基底変換行列(スカラー倍) | |
| FuncMatBaseAd(N1, N2, scl, order) | 基底変換行列(追加) | |
| FuncMatGivens(N1, N2, fcos, fsin, order) | ギブンス変換行列 | |
| FuncMatGauss(matA, colNo) |
ガウス変換行列 ガウス消去法などで用いる行列で、単独で利用することはないため説明は割愛します。 |
|
| 変換行列 | ||
| FuncMatInv(mat1, Optional pivFlag, Optional plim, Optional rlim) | 逆行列計算: ガウスジョルダン法 | |
| CalcMatHH(matH, vecA, ByVal rowNo, Optional rlim) | ハウホルダー行列(Subプロシージャ) | |
| FuncMatHess(mat1, Optional symFlag, Optional rlim) | ハウスホルダーによるヘッセンベルグ変換 | |
| FuncMatBiDiag(mat1, Optional pivFlag, Optional plim, Optional rlim) | ハウスホルダー変換による二重対角化 | |
| スケーリング / ピボッティング(各行列計算の過程で用いるもので、説明は割愛します) | ||
| FuncNoSclRow(matA, IdP, Optional IdE) | 行内最大成分取得 | |
| FuncNoSclCol(matA, IdP, Optional IdE) | 列内最大成分取得 | |
| FuncMatSclRow(matA, scl, IdP, Optional IdE, Optional inv, Optional rlim) | 行スケーリング | |
| FuncMatSclCol(matA, scl, IdP, Optional IdE, Optional inv, Optional rlim) | 列スケーリング | |
| FuncNoPivRow(matA, IdP, Optional IdE) | 行交換番号取得 | |
| FuncNoPivCol(matA, IdP, Optional IdE) | 列交換番号取得 | |
| FuncNoPivMat(matA, IdP, Optional IdS, Optional IdEr, Optional IdEc) | 行列交換番号取得 | |
| FuncMatPivRow(matA, IdP, IdEx) | 行ピボット処理 | |
| FuncMatPivCol(matA, IdP, IdEx) | 列ピボット処理 | |
| FuncMatPivMat(matA, IdP, IdEr, IdEc) | 完全ピボット処理 | |
| CalcMatPermRow(matPr, Ndim, recPiv, Optional recScl, Optional inv) | 行変換行列 | |
| CalcMatPermCol(matPc, Ndim, recPiv, Optional recScl, Optional inv) | 列変換行列 | |
| 行列の分解 | ||
| FuncMatLUCrout(mat1, Optional pivFlag, Optional plim, Optional rlim, Optional outFlag) | LU分解:クラウト法 | |
| FuncMatLUGE(mat1, Optional pivFlag, Optional plim, Optional rlim, Optional outFlag) | LU分解:ガウス消去法 | |
| FuncMatCholesky(mat1, Optional rlim) | LU分解:修正コレスキー分解 | |
| FuncMatIcCholesky(mat1, Optional slim) | LU分解:不完全コレスキー分解 | |
| FuncMatQRGS(mat1) | QR分解:グラムシュミット法 | |
| FuncMatQRHH(mat1, Optional pivFlag, Optional plim, Optional rlim, Optional outFlag) | QR分解:ハウスホルダー法 | |
| 連立方程式の解法(直接法) | ||
| FuncMatSimGE(mat1, vec1, Optional pivFlag, Optional plim, Optional rlim) | ガウス消去法 | |
| FuncMatSimGJ(mat1, mat2, Optional pivFlag, Optional plim, Optional rlim) | ガウス・ジョルダン法 | |
| FuncMatSimLU(mat1, mat2, Optional method, Optional pivFlag, Optional plim, Optional rlim) | LU分解 | |
| FuncMatSimInv(mat1, mat2, Optional pivFlag, Optional plim, Optional rlim) | 逆行列利用 | |
| FuncMatSimQR(mat1, vec1, Optional method, Optional pivFlag, Optional plim, Optional rlim) | QR分解法 | |
| CalcMatBackLU(matOut, ByVal matL, ByVal matU, ByVal matB, Optional rankA, Optional rlim) |
前進→後退代入 (連立方程式を解く途中の関数であり、説明省略します) |
|
| CalcMatBack(matOut, ByVal matA, ByVal matB, Optional rankA, Optional rlim) |
後退代入 (連立方程式を解く途中の関数であり、説明省略します) |
|
| 連立方程式の解法(反復法) | ||
| FuncMatSimGS(mat1, vec1, Optional relax, Optional slim, Optional rlim, Optional Nres) | ガウス・ザイデル法 | |
| FuncMatCG(mat1, mat2, Optional slim, Optional Nres) | 共役勾配法(CG法) | |
| FuncMatPCG(mat1, mat2, Optional slim, Optional Nres) | 前処理付き共役勾配法(PCG法) | |
| 固有値計算 | ||
| FuncEigQR(mat1, Optional outFlag, Optional slim, Optional Nres, Optional pivFlag, Optional plim, Optional rlim) | QR法(非対称) | |
| FuncEigPow(mat1, Optional outFlag, Optional slim, Optional Nres, Optional rlim) | べき乗法 | |
| FuncEigJacobi(mat1, Optional outFlag, Optional slim, Optional Nres, Optional rlim) | ヤコビ法 | |
| CalcMatInvIter(matX, ByVal matA, ByVal vecEig, Optional method, Optional slim, Optional Nres, Optional rlim) |
逆反復法(Subプロシージャ) QR法の固有ベクトル算出で用いており、説明は割愛します。 |
|