GNU Scientific Library (GSL) は、応用数学や科学における数値計算のためのソフトウェアライブラリです。GSL は C 言語で書かれていますが、他のプログラミング言語用にもラッパーが用意されています。GSL は GNU プロジェクトの一部であり、GNU General Public License の下で配布されています。
バージョン 1.0 は 2001 年にリリースされました。ドキュメントにあるように、メンテナは機能追加よりも安定性に関心を持っていました。メジャーバージョン1は 2013 年 7 月のリリース 1.16 で終了しました。
2015 年 10 月にバージョン 2.0 を公開し、精力的な開発が再開され、2019 年 8 月には最新バージョン 2.6 が公開されました。
参考サイト [1] に Vala で GSL ライブラリを利用したサンプルがありましたので、一部を紹介します。
使用した OS の環境は下記の通りです。
Fedora Silverblue 32 | x86_64 | |
» vala-0.48.8-1.fc32.x86_64 |
まず GSL をインストールしておきます。
[bitwalk@fedora-pc vala-samples]$ sudo dnf install gsl gsl-devel
メタデータの期限切れの最終確認: 0:10:28 時間前の 2020年08月15日 18時17分17秒 に実施しました。
パッケージ gsl-2.6-2.fc32.x86_64 は既にインストールされています。
依存関係が解決しました。
====================================================================================================================================
Package Architecture Version Repository Size
====================================================================================================================================
インストール:
gsl-devel x86_64 2.6-2.fc32 fedora 591 k
...
(以下省略)
...
インストール済み:
gsl-devel-2.6-2.fc32.x86_64
完了しました!
[bitwalk@fedora-pc vala-samples]$
線形代数 (Linear Algebra) のサンプル
サンプルは、以下の連立一次方程式の x1 x2 x3 x4 を LU 分解で求めるプログラムです。
a11 x1 + a12 x2 + a13 x3 + a14 x4 = b1
a21 x1 + a22 x2 + a23 x3 + a24 x4 = b2
a31 x1 + a32 x2 + a33 x3 + a34 x4 = b3
a41 x1 + a42 x2 + a43 x3 + a44 x4 = b4
実行結果は次のようになりました。
[bitwalk@fedora-pc vala-samples]$ ./gsl_linalg.vala --pkg gsl
x =
-4.05205
-12.6056
1.66091
8.69377
[bitwalk@fedora-pc vala-samples]$
しばらく GSL を利用していませんでしたが、Vala で手軽に利用できることが判りました。あらためて、現在の GSL の機能を調べて活用できるようにしたいです。
参考サイト
にほんブログ村
0 件のコメント:
コメントを投稿