| パラダイム | マルチパラダイム:関数型、命令型、手続き型、オブジェクト指向、配列 |
|---|---|
| デザイン: | クリーヴ・モラー |
| 開発者 | マスワークス |
| 初登場 | 1970年代後半 |
| 安定リリース | R2024b [1]
/ 2024年9月12日 |
| タイピングの規律 | ダイナミック、弱い |
| ファイル名拡張子 | .m、.p、[2] .mex*、[3] .mat、[4] .fig、[5] .mlx、[6] .mlapp、[7] .mltbx、[8] .mlappinstall、[9] .mlpkginstall [10] |
| Webサイト | 数学ワークス |
| 主な実装 | |
| MATLAB ソフトウェア、GNU Octave、Sysquake | |
| 影響を受けた | |
| 影響を受けた | |
L字型メンブレンロゴ[19] | |
| 開発者 | マスワークス |
|---|---|
| 初回リリース | 1984年 |
| 安定リリース | R2024b [1]
/ 2024年9月12日 |
| 書かれた | C / C++、MATLAB |
| オペレーティング·システム | Windows、macOS、Linux [20] [21] |
| プラットフォーム | IA-32、x86-64、ARM64 |
| タイプ | 数値計算 |
| ライセンス | 独自の 商用ソフトウェア |
| Webサイト | 数学ワークス |
MATLAB (「MATrix LABoratory」 [22]の略)は、MathWorksが開発した独自の マルチパラダイム プログラミング言語および数値計算環境です。MATLABでは、行列操作、関数とデータのプロット、アルゴリズムの実装、ユーザーインターフェイスの作成、他の言語で書かれたプログラムとのインターフェイスが 可能です。
MATLAB は主に数値計算を目的としていますが、オプションのツールボックスではMuPAD シンボリック エンジンを使用してシンボリック計算機能にアクセスできます。追加パッケージのSimulink は、動的システムと組み込みシステム向けのグラフィカルなマルチドメイン シミュレーションとモデルベース設計を追加します。
2020年現在[update]、MATLABのユーザーは世界中に400万人以上います。[23]彼らは工学、科学、経済学の様々なバックグラウンドを持っています。2017年現在[update]、世界中の5000以上の大学が指導と研究をサポートするためにMATLABを使用しています。[24]
歴史
起源
MATLABは数学者でコンピュータプログラマーのクリーヴ・モーラーによって発明されました。[25] MATLABのアイデアは1960年代の彼の博士論文に基づいています。[25]モーラーはニューメキシコ大学の数学教授になり、趣味として学生のためにMATLABの開発を始めました。 [26]彼は1967年に、かつての論文指導教官であるジョージ・フォーサイスと共にMATLABの最初の線形代数プログラミングを開発しました。[25]これに続いて、1971年に線形方程式のFortranコードが開発されました。 [25]
バージョン1.0より前のMATLABは「プログラミング言語ではなく、単純な対話型行列計算機でした。プログラムもツールボックスもグラフィックスもありませんでした。ODEやFFTもありませんでした。」[27]
MATLAB の最初の初期バージョンは 1970 年代後半に完成しました。[25]このソフトウェアは 1979 年 2 月にカリフォルニアの海軍大学院で初めて公開されました。[26] MATLAB の初期バージョンは、71 個の組み込み関数を備えた単純な行列計算機でした。 [28]当時、MATLAB は無料で配布されていました。[29] [30] [31]モーラーは訪問した大学にコピーを残し、このソフトウェアは大学のキャンパスの数学科で強い支持を得ました。[32] : 5
1980年代、クリーブ・モーラーはジョン・N・リトルと出会いました。彼らはMATLABをC言語で再プログラムし、当時メインフレームコンピュータに取って代わろうとしていたIBMデスクトップ向けに販売することを決定しました。[25]ジョン・リトルとプログラマーのスティーブ・バンガートはMATLABをC言語で再プログラムし、MATLABプログラミング言語を作成し、ツールボックスの機能を開発しました。[26]
1993 年以来、オープン ソースの代替品であるGNU Octave (matlab とほぼ互換性あり) とscilab (matlab に類似) が利用可能になりました。
商業開発
MATLABは1984年にラスベガスで開催された自動制御カンファレンスで初めて商用製品としてリリースされました。[25] [26] MathWorks社がソフトウェア開発のために設立され[30]、MATLABプログラミング言語がリリースされました。[28]最初のMATLAB販売は翌年、マサチューセッツ工科大学のニック・トレフェセンが10部を購入したことでした。[26] [33]
1980年代の終わりまでに、数百部ものMATLABが学生向けに大学に販売されました。[26]このソフトウェアが普及したのは、さまざまな分野の専門家が専門的な数学タスクを実行するために作成したツールボックスのおかげです。[29]ツールボックスの多くは、スタンフォード大学の学生が学術界でMATLABを使用し、その後そのソフトウェアを民間部門に持ち込んだ結果として開発されました。 [26]
時が経つにつれ、MATLABはDigital Equipment Corporation、VAX、 Sun Microsystemsが開発した初期のオペレーティングシステムやUnix PC向けに書き直されました。 [26] [28]バージョン3は1987年にリリースされました。[34]最初のMATLABコンパイラは1990年代にStephen C. Johnsonによって開発されました。 [28]
2000年、MathWorksはMATLAB 6に線形代数用のFortranベースのライブラリを追加し、C言語で書かれたソフトウェアのオリジナルのLINPACKとEISPACKサブルーチンを置き換えました。[28] MATLABのParallel Computing Toolboxは2004年のスーパーコンピューティングカンファレンスでリリースされ、2010年にはグラフィックスプロセッシングユニット(GPU)のサポートが追加されました。[28]
最近の歴史
2012年のバージョン8では、ソフトウェアに特に大きな変更が加えられました。[35]ユーザーインターフェイスが作り直され[要出典]、Simulinkの機能が拡張されました。[36] 2016年までに、MATLABはMATLAB Live Editorノートブックやその他の機能を含むいくつかの技術的およびユーザーインターフェイスの改善を導入しました。[28]
構文
MATLABアプリケーションは、MATLABプログラミング言語に基づいて構築されています。MATLABアプリケーションの一般的な使用法は、「コマンドウィンドウ」を対話型の数学シェルとして使用するか、MATLABコードを含むテキストファイルを実行することです。[37]
「Hello, world!」の例
「Hello, world!」プログラムの例がMATLAB に存在します。
disp ( 'こんにちは、世界!' )
次のように表示されます。
こんにちは世界!
変数
変数は代入演算子を使用して定義されます=。MATLABは型が暗黙的に変換されるため、弱い型付けのプログラミング言語です。 [38] 変数はシンボリックオブジェクトとして扱われる場合を除き、型を宣言せずに代入できるため、推論型言語です。 [39]また、型は変更される可能性があります。値は定数、他の変数の値を含む計算、または関数の出力から取得できます。例:
>> x = 17 x = 17
>> x = '帽子' x =帽子
>> x = [ 3 * 4 , pi / 2 ] x = 12.0000 1.5708
>> y = 3 * sin ( x ) y = -1.6097 3.0000
ベクトルと行列
単純な配列は、コロン構文 (初期:増分:ターミネータ)を使用して定義されます。たとえば、次のようになります。
>>配列= 1 : 2 : 9配列 = 1 3 5 7 9
という名前の変数を定義しますarray(または、 という名前の既存の変数に新しい値を割り当てますarray)。この配列は、値 1、3、5、7、9 で構成される配列です。つまり、配列は 1 (初期値) から始まり、各ステップで前の値から 2 (増分値)ずつ増加し、9 (終了値) に達すると (または 9 を超えそうになると) 停止します。
増分値は実際にはこの構文から省略でき (コロンの 1 つとともに)、デフォルト値 1 が使用されます。
>>アリ= 1 : 5アリ = 1 2 3 4 5
増分としてデフォルト値の 1 が使用されるため、名前付き変数にari値 1、2、3、4、5 を持つ配列が割り当てられます。
インデックスは1から始まります。[40]これは数学における行列の通常の慣例であり、C、C++、Javaなどの他のプログラミング言語で一般的に使用される0ベースのインデックスとは異なります。
行列は、行の要素を空白またはカンマで区切り、行をセミコロンで区切ることで定義できます。要素のリストは角括弧で囲む必要があります[]。括弧は()要素とサブ配列にアクセスするために使用されます (関数の引数リストを示すためにも使用されます)。
>> A = [ 16 、3 、2 、13 ; 5 、10 、11 、8 ; 9 、6 、7 、12 ; 4 、15 、14 、1 ] A = 16 3 2 13 5 10 11 8 9 6 7 12 4 15 14 1
>> A ( 2 , 3 )
答え =
11
2:4インデックスのセットは、 と評価されるなどの式で指定できます[2, 3, 4]。たとえば、行 2 から 4、列 3 から 4 までのサブ行列は、次のように記述できます。
>> A ( 2 : 4 , 3 : 4 )
ans =
11 8
7 12
14 1
サイズnの正方単位行列は関数を使用して生成でき、ゼロまたは 1 を含む任意のサイズの行列はそれぞれ関数とを使用して生成できます。
eyezerosones
>>目( 3 , 3 )
答え =
1 0 0
0 1 0
0 0 1
>>ゼロ( 2 , 3 )
答え =
0 0 0
0 0 0
>> 1 ( 2 , 3 )
答え =
1 1 1
1 1 1
ベクトルまたは行列の転置は、関数を使用するtransposeか、行列の後にドットとプライムを追加することによって行われます (ドットがない場合、プライムは複素配列の共役転置を実行します)。
>> A = [ 1 ; 2 ]、B = A . ' 、C =転置( A ) A = 1 2 B = 1 2 C = 1 2
>> D = [ 0 , 3 ; 1、5]、D. ' D = 0 3 1 5 ans = 0 1 3 5
ほとんどの関数は配列を入力として受け入れ、各要素に対して要素ごとに演算を行います。たとえば、はJmod(2*J,n)のすべての要素を 2 倍にし、各要素をnで割って減算します。MATLAB には標準のループが含まれていますが、( APLやRなどの他の同様のアプリケーションと同様に)ベクトル化された表記法を使用することが推奨されており、多くの場合、実行が高速になります。関数magic.mから抜粋した次のコードは、nが奇数の場合に魔方陣M を作成します(ここでは、MATLAB 関数を使用して、 を含む正方行列IとJを生成します)。
forwhile meshgrid
[ J , I ] = meshgrid ( 1 : n ); A = mod ( I + J - ( n + 3 ) / 2 , n ); B = mod ( I + 2 * J - 2 , n ); M = n * A + B + 1 ;
構造
MATLABは構造体データ型をサポートしています。[41] MATLABのすべての変数は配列であるため、より適切な名前は「構造体配列」です。配列の各要素は同じフィールド名を持ちます。さらに、MATLABは動的フィールド名[42](名前によるフィールド検索、フィールド操作など)をサポートしています。
機能
MATLAB関数を作成する場合、ファイル名はファイル内の最初の関数名と一致する必要があります。有効な関数名はアルファベット文字で始まり、文字、数字、またはアンダースコアを含めることができます。変数と関数は大文字と小文字が区別されます。[43]
rgbImage = imread ( 'ecg.png' ); grayImage = rgb2gray ( rgbImage ); % インデックスなしの画像の場合level = graythresh ( grayImage ); % 画像をバイナリに変換するためのしきい値、binaryImage = im2bw ( grayImage , level ); % 個々の赤、緑、青のカラー チャネルを抽出します。redChannel = rgbImage (:, :, 1 ); greenChannel = rgbImage (:, :, 2 ); blueChannel = rgbImage (:, :, 3 ); % 黒い部分を純粋な赤にします。redChannel ( ~ binaryImage ) = 255 ; greenChannel ( ~ binaryImage ) = 0 ; blueChannel ( ~ binaryImage ) = 0 ; % 出力画像を形成するために再結合します。rgbImageOut = cat ( 3 , redChannel , greenChannel , blueChannel ); imshow ( rgbImageOut );
関数ハンドル
MATLABは、関数ハンドル[44]または関数参照を導入することでラムダ計算の要素をサポートしています。これらは.mファイルまたは匿名[45] /ネストされた関数[46]で実装されます。
クラスとオブジェクト指向プログラミング
MATLABは、クラス、継承、仮想ディスパッチ、パッケージ、値渡しセマンティクス、参照渡しセマンティクスを含むオブジェクト指向プログラミングをサポートしています。 [47]ただし、構文と呼び出し規約は他の言語とは大きく異なります。MATLABには値クラスと参照クラスがあり、クラスがスーパークラスとして扱われるかどうか(参照クラスの場合)によって異なります(値クラスの場合)。[48]
メソッド呼び出しの動作は、値クラスと参照クラスでは異なります。たとえば、メソッドの呼び出しは次のようになります。
オブジェクト.メソッド();
オブジェクトが参照クラスのインスタンスである 場合にのみ、オブジェクトのメンバーを変更できます。それ以外の場合、値クラス メソッドは、オブジェクトを変更する必要がある場合に新しいインスタンスを返す必要があります。
単純なクラスの例を以下に示します。
classdef Helloメソッドfunction greeting ( obj ) disp ( 'Hello!' ) end end end
という名前のファイルに配置するとhello.m、次のコマンドで実行できます。
>> x = Hello (); >> x .greet ();こんにちは!
グラフィックスとグラフィカルユーザーインターフェースプログラミング
MATLAB には、緊密に統合されたグラフ プロット機能があります。たとえば、関数plot を使用すると、2 つのベクトルxとyからグラフを作成できます。コード:
x = 0 :パイ/ 100 : 2 *パイ; y =罪( x );プロット( x , y )
正弦関数の次の図を生成します。
MATLAB は 3 次元グラフィックスもサポートしています。
MATLABはグラフィカルユーザーインターフェイス(GUI)アプリケーションの開発をサポートしています。 [49] UIはプログラムで生成することも、 GUIDEやApp Designerなどのビジュアルデザイン環境を使用して生成することもできます。[50] [51]
MATLABとその他の言語
MATLABは、プログラミング言語CまたはFortranで書かれた関数やサブルーチンを呼び出すことができます。[52] MATLABデータ型を渡したり返したりできるようにラッパー関数が作成されます。MEXファイル(MATLAB実行ファイル)は、そのような関数をコンパイルして作成される動的にロード可能なオブジェクトファイルです。[53] [54] 2014年以降、 Pythonとの双方向インターフェースが追加されました。[55] [56]
Perl、Java、ActiveX、.NETで書かれたライブラリはMATLABから直接呼び出すことができ、[57] [58]多くのMATLABライブラリ( XMLやSQLサポートなど)はJavaまたはActiveXライブラリのラッパーとして実装されています。JavaからMATLABを呼び出すのはより複雑ですが、MathWorksが別売りしているMATLABツールボックス[59]を使用するか、JMI(Java-to-MATLAB Interface)と呼ばれる文書化されていないメカニズム[60] [61] (これもJMIと呼ばれる無関係なJavaメタデータインターフェイスと混同しないでください)を使用して行うことができます。Java用の公式MATLAB APIは2016年に追加されました。[62]
MathWorksが提供するMuPADベースのSymbolic Math Toolboxの代替として、MATLABはMapleやMathematicaに接続することができる。[63] [64]
MathMLをインポートおよびエクスポートするためのライブラリも存在します。[65]
米国の制裁との関係
2020年、MATLABは米国の制裁措置を受けて中国の2つの大学からサービスを撤退した。大学側は、オープンソースの代替手段の利用を増やし、国内の代替手段を開発することでこれに対応すると述べた。[66]
参照
注記
- ^ ab https://www.mathworks.com/company/newsroom/mathworks-announces-release-2024b-of-matlab-and-simulink.html . 2024年9月15日閲覧。
{{cite web}}:欠落または空|title=(ヘルプ) - ^ 「ソースコードを保護する」。MathWorks 。 2019年11月1日閲覧。
- ^ 「MEX プラットフォームの互換性」。MathWorks。2019年11 月 1 日閲覧。
- ^ 「MAT-File Versions」。MathWorks 。 2019年11月1日閲覧。
- ^ 「図を保存して後でMATLABで再度開く」。MathWorks 。 2019年11月1日閲覧。
- ^ 「ライブコードファイル形式 (.mlx)」。MathWorks 。 2019年11月1日閲覧。
- ^ 「MATLAB App Designer」。MathWorks 。 2019年11月1日閲覧。
- ^ 「Toolbox Distribution」。MathWorks 。 2019年11月1日閲覧。
- ^ 「MATLAB アプリ インストーラー ファイル」。MathWorks。2019年11 月 1 日閲覧。
- ^ 「サポート パッケージのインストール」。MathWorks。2019年11 月 1 日閲覧。
- ^ 「2004 年 3 月 8 日と 9 日にカリフォルニア州サンタバーバラで Thomas Haigh が実施した CLEVE MOLER へのインタビュー」(PDF) 。コンピュータ歴史博物館。2014年 12 月 27 日時点のオリジナル(PDF)からアーカイブ。2016 年12 月 6 日閲覧。
つまり、APL、Speakeasy、LINPACK、EISPACK、および PL0 は MATLAB の前身でした。
- ^ Bezanson, Jeff; Karpinski, Stefan; Shah, Viral; Edelman, Alan (2012 年 2 月 14 日)。「Julia を作成した理由」。Julia 言語。2016 年12 月 1 日閲覧。
- ^ Eaton, John W. (2001 年 5 月 21 日). 「Octave: Past, Present, and Future」(PDF) . Texas-Wisconsin Modeling and Control Consortium . 2017 年 8 月 9 日時点のオリジナル(PDF)からアーカイブ。2016 年12 月 1 日閲覧。
- ^ “History”. Scilab. 2016年12月1日時点のオリジナルよりアーカイブ。2016年12月1日閲覧。
- ^ SM Rump: INTLAB – INTerval LABoratory。Tibor Csendes 編著『Developments in Reliable Computing』、77~104 ページ。Kluwer Academic Publishers、ドルドレヒト、1999 年。
- ^ Moore, RE, Kearfott, RB, & Cloud, MJ (2009). 区間解析入門.産業応用数学協会.
- ^ Rump, SM (2010). 検証方法: 浮動小数点演算を使用した厳密な結果Acta Numerica , 19, 287–449.
- ^ Hargreaves, GI (2002). MATLAB での区間解析。数値アルゴリズム、(2009.1).
- ^ 「L字型膜」。MathWorks。2003年。 2014年2月7日閲覧。
- ^ 「システム要件とプラットフォームの可用性」。MathWorks。2013年8 月 14 日閲覧。
- ^ 「MATLAB および Simulink 製品ファミリーのプラットフォーム ロードマップ」de.mathworks.com . 2021 年12 月 22 日閲覧。
- ^ 「行列と配列 - MATLAB & Simulink」www.mathworks.com . 2022年5月21日閲覧。
- ^ The MathWorks (2020年2月)。「会社概要」(PDF)。
- ^ 「現在の世界中のMATLABユーザー数」。Mathworks。2017年11月9日。 2023年4月26日閲覧。
- ^ abcdefgh Chonacky, N.; Winch, D. (2005). 「Maple、Mathematica、Matlab のレビュー: お近くの出版物に近日掲載予定」。Computing in Science & Engineering . 7 (2). 電気電子技術者協会 (IEEE): 9–10. Bibcode :2005CSE.....7b...9C. doi :10.1109/mcse.2005.39. ISSN 1521-9615. S2CID 29660034.
- ^ abcdefgh Haigh, Thomas. 「Cleve Moler: 数学ソフトウェアの先駆者であり Matlab の創始者」(PDF) . IEEE Annals of the History of Computing . IEEE Computer Society.
- ^ 「MATLAB の簡単な歴史」www.mathworks.com . 2021 年9 月 4 日閲覧。
- ^ abcdefg Moler, Cleve; Little, Jack (2020年6月12日). 「MATLABの歴史」. ACM on Programming Languagesの議事録. 4 (HOPL). Association for Computing Machinery (ACM): 1–67. doi : 10.1145/3386331 . ISSN 2475-1421.
- ^ ab Xue、D.;プレス、TU (2020)。 MATLAB プログラミング: 数学的問題の解決策。 De Gruyter STEM。デ・グルイテル。 p. 21.ISBN 978-3-11-066370-9. 2020年9月16日閲覧。
- ^ ab Press, CRC (2008). MATLAB による応用数学問題の解決。CRC Press。p. 6. ISBN 978-1-4200-8251-7. 2020年9月16日閲覧。
- ^ Woodford, C.; Phillips, C. (2011). 数値解析法と実例集: Matlab 版. SpringerLink : Bücher. Springer Netherlands. p. 1. ISBN 978-94-007-1366-6. 2020年9月16日閲覧。
- ^ Tranquillo, JV (2011). MATLAB for Engineering and the Life Sciences. エンジニアリングとコンピュータサイエンス の統合デジタルライブラリ。Morgan & Claypool Publishers。ISBN 978-1-60845-710-6. 2020年9月17日閲覧。
- ^ LoTurco, Lori (2020年1月28日). 「エンジニアリングのペースを加速する」. MITニュース. マサチューセッツ工科大学. 2020年9月16日閲覧。
- ^ Gatto, Marino; Rizzoli, Andrea (1993). 「MATLAB バージョン 4.0 のレビュー」.天然資源モデリング. 7 (1). Wiley: 85–88. Bibcode :1993NRM.....7...85G. doi :10.1111/j.1939-7445.1993.tb00141.x. ISSN 0890-8575.
- ^ Cho, MJ; Martinez, WL (2014). MATLAB の統計: 入門書。Chapman & Hall/CRC コンピュータサイエンス & データ分析。CRC プレス。ISBN 978-1-4665-9657-3. 2020年9月17日閲覧。
- ^ Xue, D.; Chen, Y. (2013). MATLAB と Simulink によるシステムシミュレーションテクニック。現在は使用されていません。Wiley。p. 17。ISBN 978-1-118-69437-4. 2020年10月15日閲覧。
- ^ 「MATLAB ドキュメント」。MathWorks。2013年8 月 14 日閲覧。
- ^ 「MATLAB と他の OO言語の比較」。MATLAB。MathWorks。2013年8月 14 日閲覧。
- ^ 「シンボリック変数と式の作成」。Symbolic Math Toolbox。MathWorks。2013年8月 14 日閲覧。
- ^ 「行列のインデックス作成」。MathWorks 。 2013年8月14日閲覧。
- ^ 「Structures」。MathWorks 。 2013年8月14日閲覧。
- ^ 「変数からフィールド名を生成する」。MathWorks。2013年8 月 14 日閲覧。
- ^ 「大文字と小文字およびスペースの区別」。MathWorks 。 2019年11月1日閲覧。
- ^ 「関数ハンドル」。MathWorks 。 2013年8月14日閲覧。
- ^ 「匿名関数」。MathWorks 。 2013年8月14日閲覧。
- ^ 「ネストされた関数」。MathWorks。
- ^ 「オブジェクト指向プログラミング」。MathWorks 。 2013年8月14日閲覧。
- ^ 「ハンドル クラスと値クラスの比較」。MathWorks。
- ^ 「MATLAB GUI」。MathWorks。2011年4月30日。 2013年8月14日閲覧。
- ^ 「シンプルな GUIDE GUI を作成する」。MathWorks 。2014年8 月 14 日閲覧。
- ^ 「MATLAB App Designer」。MathWorks 。 2019年11月1日閲覧。
- ^ 「MATLAB へのアプリケーション プログラミング インターフェイス」。MathWorks。2017 年 9 月 15 日時点のオリジナルよりアーカイブ。2013 年8 月 14 日閲覧。
- ^ 「MEX ファイルの作成」。MathWorks。2014 年 3 月 3 日時点のオリジナルよりアーカイブ。2013 年8 月 14 日閲覧。
- ^ Spielman, Dan (2004 年 2 月 10 日)。「Connecting C and Matlab」、イェール大学、コンピュータサイエンス学部。2008年5 月 20 日閲覧。
- ^ 「MATLAB Engine for Python」。MathWorks 。 2015年6月13日閲覧。
- ^ 「Python ライブラリを呼び出す」。MathWorks。2015年6 月 13 日閲覧。
- ^ 「外部プログラミング言語インターフェイス」。MathWorks。2014年3月11日時点のオリジナルよりアーカイブ。2013年8月14日閲覧。
- ^ 「適切なオペレーティング システムの実行可能ファイルを使用して Perl スクリプトを呼び出す」。MathWorks。2013年11 月 7 日閲覧。
- ^ 「MATLAB Builder JA」。MathWorks 。 2010年6月7日閲覧。
- ^ Altman, Yair (2010 年 4 月 14 日). 「Java-to-Matlab Interface」. 文書化されていない Matlab。2015 年 9 月 5 日時点のオリジナルよりアーカイブ。2010年6 月 7 日閲覧。
- ^ Kaplan, Joshua. 「matlabcontrol JMI」.
- ^ 「MATLAB Engine API for Java」。MathWorks 。 2016年9月15日閲覧。
- ^ Germundsson, Roger (1998 年 9 月 30 日)。「MaMa: MathLink を使用して Mathematica から MATLAB を呼び出す」。Wolfram Research。Wolframライブラリ アーカイブ。
- ^ rsmenon; szhorvat (2013). 「MATLink: Mathematica から MATLAB と通信する」2013 年8 月 14 日閲覧。
- ^ Weitzel, Michael (2006 年 9 月 1 日). 「MathML インポート/エクスポート」. MathWorks - File Exchange. 2011 年 2 月 25 日時点のオリジナルよりアーカイブ。2013年8 月 14 日閲覧。
- ^ 「米軍の禁止令により、中国の2つの大学が人気ソフトウェアを使用できなくなった」サウスチャイナ・モーニング・ポスト。2020年6月12日。 2020年11月6日閲覧。
さらに読む
- ギラット、エイモス (2004)。MATLAB : アプリケーション入門第 2 版。John Wiley & Sons。ISBN 978-0-471-69420-5。
- Quarteroni, Alfio ; Saleri, Fausto (2006). MATLAB と Octave による科学計算. Springer. ISBN 978-3-540-32612-0。
- Ferreira, AJM (2009).有限要素解析のための MATLAB コード. Springer. ISBN 978-1-4020-9199-5。
- リンチ、スティーブン (2004)。MATLABを使用した動的システムとアプリケーション。ビルクハウザー。ISBN 978-0-8176-4321-8。
外部リンク
- 公式サイト
- Curlieの MATLAB
