FreeMat

FreeMatScilabGNU Octaveと同様の、オープンソース数値解析のためのプログラミング環境およびプログラミング言語である。MATLABIDLと比べると、C言語C++Fortranなどでコードを書かなくてもよい、分散環境による並列計算の開発に適している、3Dグラフィクスの機能を備えている、といった特徴がある。

特徴

MATLABと100%の互換性はないが、機能としては95%をカバーしている。 カバーしている機能は、以下のようになる。

  • 任意次元の配列 (デフォルトでは6次元以下に制限している)
  • 8、16、32、64ビット整数型 (符号あり、なしとも) および 32、64ビット浮動小数点型、64、128ビット複素数
  • すべてのデータ型に対する算術演算
  • 除算による線形問題の解法
  • 固有値および特異値分解
  • プログラミングにおける制御構文 (for, while, break, continueなど)
  • 2Dプロットと画像表示
  • 複数の型が混在する配列型 (MATLABで"cell array"と呼ばれているものに相当)
  • 配列の動的な操作
  • 任意長データに対するFFT
  • 関数呼び出しの際の引数の参照渡し (Pass-by-reference、IDL言語の機能)
  • C/C++/FORTRAN で書かれた外部のルーチンを、その言語のコードを書くことなく呼び出す
  • Windowsのネイティブサポート
  • 疎行列のネイティブサポート
  • Mac OS Xのネイティブサポート (X11不要)
  • 関数へのポインタ (evalおよびfeval)
  • クラス演算子オーバーロード
  • 3DプロットとOpenGLを使った描画
  • MPIを使った並列処理

サポートしていないMATLABの機能としては、GUIが挙げられている。

なお、バーション4.2において、64ビット版オペレーティングシステムに対応された。

脚注

関連項目

外部リンク

Uses material from the Wikipedia article FreeMat, released under the CC BY-SA 4.0 license.