XLPack 7.0
XLPack 数値計算ライブラリ (Excel VBA) リファレンスマニュアル
読み取り中…
検索中…
一致する文字列を見つけられません

◆ HBReadInfo1()

Sub HBReadInfo1 ( Fname As  String,
Title As  String,
Key As  String,
Nrow As  Long,
Ncol As  Long,
Nnz As  Long,
DataType As  Long,
MatShape As  Long,
MatForm As  Long,
Optional Info As  Long,
Optional Nrhs As  Long 
)

Harwell-Boeing形式ファイルから行列情報を読み出す(シンプルドライバ)

目的
Harwell-Boeing形式ファイルから疎行列の形式およびサイズを読み出す.

右辺行列(初期推定ベクトル, 解ベクトルを含む)に関する情報は返さない. ただし, Nrhs の値は省略可能パラメータに返す.
引数
[in]Fname入力ファイル名.
[out]TitleTitle 文字列.
[out]KeyKey 文字列.
[out]Nrow行列の行数.
[out]Ncol行列の列数.
[out]Nnz非ゼロ要素数.
[out]DataType行列のデータ型.
= 0: 実数.
= 1: 複素数.
= 2: パターン.
[out]MatShape行列の形状.
= 0: 非対称行列.
= 1: 対称行列.
= 2: 歪対称(交代)行列.
= 3: エルミート行列.
= 4: 長方形行列.
[out]MatForm行列の格納形式.
= 0: 疎行列.
[out]Info(省略可)
= 0: 正常終了.
=i < 0: (-i)番目の入力パラメータの誤り.
= 1: ファイルがオープンできなかった.
= 3: ファイル読み出しエラー.
= 4: 読み出しフォーマットの誤り.
[out]Nrhs(省略可)
右辺行列の列数.
使用例
次の Harwell-Boeing 形式ファイル (Test_HBWrite1.rua) の行列情報を読み出す.
Test HBWrite1 Key
6 1 2 3 0
RUA 3 3 9 0
(8I10) (8I10) (3D23.15) (3D23.15)
1 4 7 10
1 2 3 1 2 3 1 2
3
2.000000000000000e-01 -3.200000000000000e-01 -8.000000000000000e-01
-1.100000000000000e-01 8.100000000000001e-01 -9.200000000000000e-01
-9.300000000000000e-01 3.700000000000000e-01 -2.900000000000000e-01
Sub HBWrite1(Fname As String, ByVal Title As String, Key As String, Nrow As Long, Ncol As Long, Nnz As Long, Val() As Double, Ptr() As Long, Ind() As Long, DataType As Long, MatShape As Long, MatForm As Long, Optional Info As Long, Optional Fchk As Long=0, Optional Base As Long=-1, Optional Format As Long=0)
Harwell-Boeing形式ファイルへの書き込み (シンプルドライバ)
Sub Ex_HBReadInfo1()
Dim Title As String, Key As String
Dim M As Long, N As Long, Nnz As Long, DataType As Long, MatShape As Long, MatForm As Long
Dim Info As Long
Call HBReadInfo1("Test_HBWrite1.rua", Title, Key, M, N, Nnz, DataType, MatShape, MatForm, Info)
Debug.Print "HBReadInfo1: Info =" + Str(Info)
Debug.Print "Title = """ + Title + """, Key = """ + Key + """, M =" + Str(M) + ", N =" + Str(N) + ", Nnz =" + Str(Nnz)
Debug.Print "DataType =" + Str(DataType) + ", MatShape =" + Str(MatShape) + ", MatForm =" + Str(MatForm)
End Sub
Sub HBReadInfo1(Fname As String, Title As String, Key As String, Nrow As Long, Ncol As Long, Nnz As Long, DataType As Long, MatShape As Long, MatForm As Long, Optional Info As Long, Optional Nrhs As Long)
Harwell-Boeing形式ファイルから行列情報を読み出す(シンプルドライバ)
実行結果
HBReadInfo1: Info = 0
Title = "Test HBWrite1", Key = "Key", M = 3, N = 3, Nnz = 9
DataType = 0, MatShape = 0, MatForm = 0