Module LinLib

Overview

線形計算ライブラリ SSL II と LAPACK のラッパー

Error Handling

Known Bugs

LAPACK を選択する部分をコーディングしていない.

Note

Future Plans

public linlib_init       !初期化ルーチン
public linsolv           !実 3 項行列の連立 1 次方程式(倍精度)

character(1)  :: LLib    !用いるライブラリのフラグ
save LLib

Procedure Interface

Initialize module and acquire NAMELIST

利用する線形計算パッケージを NAMELIST から設定し, 配列の大きさを決定する

subroutine linlib_init(cfgfile, N)

Dependency

use dc_trace, only : BeginSub, EndSub
use dc_message, only: MessageNotify
use ssl2_linear, only: ssl2_ltx_init

Input

integer, intent(in)      :: N       !配列サイズ
character(*), intent(in) :: cfgfile !設定ファイル (NAMELIST)

NAMELIST

NAMELIST /linlib/ LLib

Procedure Interface

Initialize module

利用する線形計算パッケージに配列を渡す

subroutine LinSolv(A, B, C, D)

Dependency

use dc_trace, only : BeginSub, EndSub
use dc_message, only: MessageNotify
use ssl2_linear, only: ssl2_ltx

Input

real(8), intent(in)    :: A(:)
real(8), intent(in)    :: B(:)
real(8), intent(in)    :: C(:) 

In/Out

real(8), intent(inout) :: D(:)