Scilab

出典: フリー教科書『ウィキブックス(Wikibooks)』

ここでは、Scilabと呼ばれる数値解析ソフトウェアについて学ぶチュートリアルを提供します。Scilabは、フランスのINRIA(国立情報学自動制御研究所)で1980年代に開発された高水準の計算環境であり、科学技術計算やデータ分析に広く利用されています。Scilabはオープンソースであり、誰でも自由に利用することができます。このチュートリアルでは、Scilabを使って簡単な数値計算から複雑な数学モデルの解析までを学習するための手順を提供します。

Scilabの導入[編集]

Scilabとは何か[編集]

Scilabの特徴[編集]

Scilabのインストール[編集]

Scilabの基本操作[編集]

Scilabのデータ型と演算[編集]

スカラー、ベクトル、行列、テンソル[編集]

演算子と関数[編集]

変数と代入[編集]

数学関数と統計関数[編集]

Scilabの制御構造[編集]

条件分岐(if文)[編集]

繰り返し(for文、while文)[編集]

ブロック構造(begin-end、case-of)[編集]

Scilabでのグラフ描画[編集]

グラフ描画の基本[編集]

2次元プロット[編集]

3次元プロット[編集]

グラフのカスタマイズ[編集]

Scilabでの関数定義とデバッグ[編集]

関数の基本[編集]

グローバル変数とローカル変数[編集]

引数の渡し方[編集]

デバッグの基本[編集]

Scilabでの線形代数[編集]

行列演算の基本[編集]

行列の作成と操作[編集]

行列分解(LU分解、QR分解、SVD分解)[編集]

行列の特異値分解[編集]

Scilabでの数値計算[編集]

数値微分と数値積分[編集]

常微分方程式の数値解法[編集]

偏微分方程式の数値解法[編集]

線形方程式の数値解法[編集]

Scilabでの信号処理[編集]

サンプリングと量子化[編集]

離散時間信号と連続時間信号[編集]

フーリエ変換と逆フーリエ変換[編集]

フィルタ設計とフィルタ適用[編集]

Scilabでの統計解析[編集]

統計量の基本[編集]

仮説検定[編集]

回帰分析[編集]

主成分分析[編集]

Scilabの応用例[編集]

機械学習の実装[編集]

シミュレーションと最適化[編集]

ロボットの制御[編集]

複雑系の解析[編集]

用語集[編集]

  • Scilab: 数値解析・科学技術計算用のオープンソースの高水準プログラミング言語。MATLABに類似した文法を持ち、線形代数、最適化、シミュレーション、信号処理、画像処理、数値積分、微分方程式、統計解析などの機能を備える。
  • Workspace: Scilabが認識している変数、およびその値を表示する領域。
  • Console: Scilabコマンドの入力と結果出力を行う領域。
  • Editor: Scilabスクリプトファイルの作成・編集を行う領域。
  • Function: 処理を行う一連のコマンドをパッケージ化したもの。
  • Script: Scilabコマンドを順番に実行するファイル。
  • Comment: スクリプト内に埋め込む、人間が理解しやすい解説用の文章。
  • Variable: 数値、文字列、行列、グラフなどのデータを格納するために用いられる名前付きの箱。
  • Matrix: スカラー値およびベクトルを1つのオブジェクトとして扱うためのデータ構造。
  • Vector: 1次元の数値配列。
  • Sparse matrix: 行列の非ゼロ要素のみを記憶した、メモリ効率が高い行列。
  • Array: 1次元、2次元、あるいはそれ以上の次元を持つデータ構造。テンソルのように多数の次元も扱える。
  • Command window: Scilabから操作される各ウィンドウの簡易版。コマンドを入力し、実行結果を表示できる。
  • Graphics window: 2D/3Dグラフィックを描画するためのウィンドウ。
  • Handle graphics: Scilabで描画されるグラフィックをハンドルにより扱う方式。
  • Scicos: Scilabの拡張モジュールで、システムダイナミクス、制御系設計、信号処理、画像処理、電気回路設計などに用いられる。
  • Xcos: Scicosの改良版で、システムダイナミクスのモデル化・シミュレーションを行うためのツール。
  • ATOMS: Scilabのオンラインパッケージ管理システム。Scilabに追加機能を提供するためのモジュールが多数公開されている。
  • MList: Scilabでのファイル入出力用のフォーマット。MATLABの.mファイルと同様に、「変数名 = 値」という形式で保存される。
  • FPU: 浮動小数点演算器。Scilabはこれを使用して高精度な計算を行う。