超強力!SLATECインストールマニュアル
01/09/06 M.KANDA
01/09/11 修正バージョン
フォートランライブラリー利用のすすめ
(1)はじめに (恐るべしフリーライブラリー)
http://www.netlib.org というサイトがあります。ここには数値計算に有用なあらゆるツールが集められています。この中に SLATEC という Fortran 77 による public domain な数値計算ライブラリ集がありました。 このライブラリは下位のサブルーチンまで含めると実に 1000 個を越えるサブルーチンからなっており、大抵の数値計算法を網羅しています。こんなに便利なものがフリーで存在することに驚きました。
(2)利用環境 IBM互換機PCでLINUXを搭載しているもの
フォートランに関してはG77環境
それ以外はマシーンに依存した設定変更などが必要で、かなり難儀です。
手を出さない方がいいでしょう。
(3)必要ファイルの在処
神田研のmeteor のHD0/slatecの下に以下のディレクトリがあります。
document / マニュアル類です。コピーして手元に置きましょう。膨大です。
library / これらはインストールに必要な圧縮ファイルです。
(4)インストール(マニア用)
とにかく使えれば良いという人は、(5)のヤング用インストールへ
4.1 SLATEC本体のライブラリー作成
1,mkdir slatec slatecなるディレクトリをつくる。
2,slatec/ にslatec_src.tgz、slatec_chk.tgzをコピーして解凍。
gunzip で解凍し、さらに tar xvf で解凍する。
3,slatec-4.1-egcs.diff.gzをslatecの上のディレクトリに持ってくる
4, slatecディレクトリで以下のコマンドを実行、
zcat ../slatec-4.1-egcs.diff.gz | patch -p1
5,slatecで make libを実行するとslatecにlibslatec.aというライブラリが完成
6,slatecでmake testを実行するとslatec/chk/に各種テスト.exeが生成される。
7,./test00でテストプログラムを実行して、returnで正常終了すればインストール完了。
4.2 その他の関連ライブラリーも作成する。
ネット上のフリーの一連のf77ファイルからなるパッケージソフトは、以下のようにしてライブラリーを生成する。Makefileの例をHD0/SLATEC/liblaryに置いた。
F77ファイル群のある場所に、このMakefileを引っ張っていき、f77ファイル名と作成するライブラリーの名前だけを書き換える。
Makeを実行すれば、ライブラリーが作成される。
(5)インストール(ヤング用)
とにかく使えればよいという人は、HD0/SLATECにあるライブラリー(*.aのファイル)を全部持っていって下さい。
現在そろっているライブラリーは、以下の2つです。IBM-LINUX以外は(4)に戻ってやり直しましょう
(1) libslatec.a (SLATEC)
(2) libfftpack.a (FFT)
(6)走らせる。
PGPLOTはとりあえず、動いているものと仮定し、一緒にライブラリーを使用することを考えます。まず、ライブラリーを適当な、ディレクトリに持っていって下さい。
基本操作は、以下の通りです
g77 filename [ ]
ここで[ ]はmコンパイルオプションになりますが、沢山ライブラリーをリンクすると打ち込むのも大変なので、EASYというファイルを作っておきましょう。ここにライブラリーの場所などオプション指定を保存しておき、カットアンドペーストで、ドラッグします。
例のEASYでは以下のようになっています。
-L./ -lfftpack -lslatec -L/home/kanda/pgplot -lpgplot -L/usr/X11R6/lib -lX11
カレント(-L./)にfftpackとslatecのライブラリーがあり、
-L/home/kanda/pgplotにpgplotのライブラリーなどがあることがわかります。
G77 a.f -L./ -lfftpack -lslatec -L/home/kanda/pgplot -lpgplot -L/usr/X11R6/lib -lX11
これでコンパイル成功、a.outが作成出来ます。
(7)サンプルを走らせる
HD0/slatec/sample/のファイルでサンプルを試してみて下さい。
森脇君の超音波計測の時系列データに、FFTや多項式によるフィルターをかけながら、同時に図化していくものです。相関項も計算しています。