Product Design, Manufacturing & Innovation Resources
» MATLABの配列指向構文

MATLABの配列指向構文

1970
  • Cleve Moler
Computer workstation with MATLAB interface showcasing array-oriented syntax in numerical analysis.

(画像はイメージです)

MATLAB は行列ベースの言語であり、基本データ型は配列で、次元指定は不要です。これにより、行列演算とベクトル演算を簡潔に表現できます。例えば、2つの行列 `A` と `B` の乗算は `C = A * B` と記述するだけでよく、要素ごとの乗算は `C = A .* B` と記述できます。他の言語に見られるような複雑なループ構造は不要です。

MATLAB の設計思想の中核は、すべてのデータを配列として扱うという点にあります。スカラーは 1 次元配列、ベクトルは 1 次元または N 次元配列として扱われます。このパラダイムは、線形代数用に設計された Fortran ライブラリ LINPACK および EISPACK の高レベル対話型シェルとして誕生したことに由来します。この配列中心の構文により、行列やベクトルの数学で表現されることが多い科学技術の問題に対するコードが劇的に簡素化されます。C や Java のような言語ではネストされたループや慎重なインデックス管理が必要となるような操作も、MATLAB では読みやすい 1 行で表現できます。

例えば、連立一次方程式 [latex]Ax = b[/latex] を解くには、バックスラッシュ演算子 (mldivide) を使用するコマンド `x = Ab` を使用します。この演算子は、単に A の逆行列を計算するだけでなく、行列 A を分析して、正方行列の場合は LU 分解、矩形行列の場合は QR 分解など、最も安定していて計算効率の良いアルゴリズムを選択します。このような高レベルの抽象化により、ユーザーは低レベルの実装の詳細ではなく、数学的な問題に集中できます。さらに、この言語は「ベクトル化」、つまり明示的なループを配列式に置き換える手法を推奨しています。これにより、コードがよりコンパクトになるだけでなく、MATLAB の内部関数は高度に最適化されたマルチスレッドの C および Fortran コードであるため、処理速度も大幅に向上します。

UNESCO Nomenclature: 1202
コンピュータサイエンス

タイプ

ソフトウェア/アルゴリズム

混乱

実質的な

使用法

広く普及している

前駆物質

  • Fortran programming language
  • LINPACK数値計算ソフトウェアライブラリ
  • EISPACK数値計算ソフトウェアライブラリ
  • APLプログラミング言語

アプリケーション

  • signal processing algorithms
  • 画像処理フィルター
  • 制御システム設計
  • finite element analysis
  • 計算流体力学
  • 機械学習モデルの実装

特許:

NA

潜在的なイノベーションのアイデア

ボットによるトラフィック(現在1日あたり4万件以上)を排除するため、このコンテンツはコミュニティメンバー限定となっています。
> ログイン < または > 登録 < (100%無料)でこれにアクセスできます。他のすべての制限付きコンテンツとツールも同様です。

関連キーワード:MATLAB、配列プログラミング、行列実験、ベクトル化、数値計算、線形代数、構文、データ型、配列指向、科学計算。

歴史的背景

MATLABの配列指向構文

1967
1970
1970
1970
1970
1973
1980
1967
1967
1970
1970
1970
1970-01-01
1975-06-01
1980

(日付が不明または関連性がない場合、例えば「流体力学」などでは、その注目すべき出現時期の概算値が提示されます。)

フルサイズの画像とダウンロードは、登録会員のみが100%無料で利用できます。