Can you summarize the following document?
        
  1970年代末到80年代初,時任美國新墨西哥大學教授的克里夫·莫勒爾為了讓學生更方便地使用LINPACK及(需要通過FORTRAN程式設計來實現,但當時學生們並無相關知識),獨立編寫了第一個版本的MATLAB。這個版本的MATLAB只能進行簡單的矩陣運算,例如矩陣轉置、計算行列式和本徵值,此版本軟體分發出大約兩三百份。  1984年,傑克·李特、克里夫·莫勒爾和斯蒂夫·班格爾特合作成立了MathWorks公司,正式把MATLAB推向市場。MATLAB最初是由莫勒爾用FORTRAN編寫的,李特和班格爾特花了約一年半的時間用C重新編寫了MATLAB並增加了一些新功能,同時,李特還開發了第一個系統控制工具箱,其中一些程式碼到現在仍然在使用。C語言版的面向MS-DOS系統的MATLAB 1.0在拉斯維加斯舉行的IEEE決策與控制會議(IEEE Conference on Decision and Control)正式推出,它的第一份訂單隻售出了10份拷貝,而到了現在,根據MathWorks自己的資料,目前世界上180多個國家的超過三百萬工程師和科學家在使用MATLAB和Simulink。  1992年,學生版MATLAB推出;1993年,Microsoft Windows版MATLAB面世;1995年,推出Linux版。

  MATLAB的主要提供以下功能:

  MATLAB的一個重要特點是可擴充套件性。作為Simulink和其它所有MathWorks產品的基礎,MATLAB可以通過附加的工具箱(Toolbox)進行功能擴充套件,每一個工具箱就是實現特定功能的函式的集合。MathWorks提供的工具箱分以下幾大類:  這些工具箱大多是用開放式的MATLAB語言寫成,使用者不但可以檢視原始碼,還可以可根據自己的需要進行修改以及建立自定義函式。此外,常有使用者在MATLAB Central: File Exchange釋出自己編寫的MATLAB程式或工具箱,供他人自由下載使用。

  MATLAB語言是一種互動性的數學指令碼語言,其語法與C/C++類似。它支援包括邏輯(boolean)、數值(numeric)、文字(text)、函式柄(function handle)和異質資料容器(heterogeneous container)在內的15種資料型別,每一種型別都定義為矩陣或陣列的形式(0維至任意高維)。  執行MATLAB程式碼的最簡單方式是在MATLAB程式的命令視窗(Command Window)的提示符處(codice_1)輸入程式碼,MATLAB會即時返回操作結果(如果有的話)。此時, MATLAB可以看作是一個互動式的數學終端,簡單來說,一個功能強大的“計算器”。MATLAB程式碼同樣可以儲存在一個以".m"為字尾名的文字檔案中,然後在命令視窗或其它函式中直接呼叫。

  MATLAB的變數名字跟許多程式語言一樣,嚴格區分大小寫,例如,"var"、"VAR"和"Var"是三個不同的變數。另外,MATLAB中變數名字必須以字母為首字母,"3var"、"_var"等是非法的變數名。變數由賦值運算子(codice_2)定義. MATLAB是動態檢查的,這意味著變數可以在未定義其型別的情況下賦值並且變數的型別也可以改變,除非將變數看做是符號物件。變數值可以取自常量,計算中的其他變數的值,或某一函式的輸出。例如:

  MATLAB的意思是"矩陣實驗室",因此它提供了許多建立向量,矩陣和多維陣列的便捷的方式。在MATLAB自己的語言中,一個"向量"(vector)指的是一維(1×"N"或"N"×1)矩陣,在其他語言中通常被叫做陣列(array)。"矩陣"(matrix)通常指的是2-維陣列,例如"m"×"n"陣列其中"m"和"n"大於或等於1。多維陣列通常指的是維數大於2的陣列。  需要注意的是,雖然MATLAB用C語言重寫,但是在矩陣儲存方式上卻和FORTRAN保持一致,兩者使用的均為列優先儲存,而非行優先儲存。在進行較大的矩陣運算時,這一差別對效能的影響是不應忽略的。  MATLAB提供了定義簡單陣列的簡單方式,使用語法:"初值"codice_3"增量"codice_3"終值"。例如:  定義了一個名為codice_5的變數(或向已存在的變數codice_5賦予一個新值),其值為包含1, 3, 5, 7, 9的一個向量。即陣列由1開始("初值"),每次以增量2("增量")遞增,當達到9("終值")時停止。 在該語法中"增量"可被省略(這樣僅剩一個冒號),這時增量採用預設值1。  由於預設增量為1,上面的語句對變數codice_7用1, 2, 3, 4, 5的向量賦值。  在MATLAB內定義矩陣同樣很簡單,例如:  在MATLAB記憶體取矩陣元素同樣非常簡單,例如:  若要對矩陣內所有元素做同樣的運算,如次方倍,則需要在運算元前面加上".",例如:  若不在運算元前面加上"."則代表矩陣運算:

  利用MATLAB的符號數學工具箱(Symbolic Math Toolbox)可以進行代數或符號運算,如分解多項式因子和解代數方程:  把多項式formula_1簡化成了formula_2。  求得方程formula_3的兩個解為formula_4和formula_5。

  MATLAB中常用的繪圖命令是"plot",例如描繪一個在[-4,4]區間內的正弦函式:  利用"plot"命令也可以在同一幅圖中描繪多個函式圖形: 用MATLAB的畫圖命令可以生成複雜的三維圖形:

  到7.1版為止,MATLAB的釋放編號均以數字來命名,例如R7,R12.1,R14 SP1等;從7.2版開始,釋放編號以年份來命名,每年3月份推出的用a表示,9月份推出的則以b表示,例如R2006a代表2006年3月推出的版本,R2009b指2009年下半年推出的版本: 從2014a版起,Matlab介面支援中文。

  

  

  Maple是Waterloo Maple Inc.(簡稱Maplesoft)開發的商業計算機代數系統,用於快速計算、開發設計表單、教學基本概念或建立高保真模擬模型等。最新版本是2018年3月釋出的Maple 2018.0,分Personal(個人版),Professional(專業版),Academic(學術版),Government(政府版)和Student(學生版)。

  Mathematica是斯蒂芬·沃爾夫勒姆開發的科學計算軟體,開發工作現由Wolfram Research公司負責。最新版本是2019年4月16日釋出的Mathematica 12.0。

  LabVIEW是美國國家儀器公司開發的視覺化程式設計平臺,主要用於資料採集,儀器控制和工業自動化。最新版本是2017年8月釋出的LabVIEW 2017。

  

  FreeMat是一個與MATLAB和互動式資料語言(IDL)很類似的數值計算平臺及程式語言。最新版本是2009年10月釋出的FreeMat 4.0

  GNU Octave是一種主要用於數值計算的高階語言。它除了提供數值方法解決線性和非線性問題的命令介面,還提供了一種與MATLAB大抵相容的語言。最新版本是2019年3月1日釋出的5.1.0。

  Scilab是一個互動性的數值運算平臺,主要用於工程和科學應用方面,例如航空航天、汽車、能源、金融、化學、生物、醫學、國防等。最新版本是5.4.0。

  是由一些曾在INRIA和ENPC參與Scilab開發的研究人員,在Scilab BUILD4版本的基礎上開發出來的GTK+版本,它整合了建模/模擬工具Scicos及其它數量眾多的工具箱,被認為是“惟一一款可以與商業軟體MATLAB/Simulink及MATRIXx/SysstemBuild媲美的開源軟體”。最新穩定版本是4.4.1。

  (),一種Java語言程式設計工具包。目前最新1.0.3版本,是2012年11月9日釋出的。

  NumPy是Python語言的一個擴充程式庫。支援高階大量的維度陣列與矩陣運算,此外也針對陣列運算提供大量的數學函式函式庫。  SciPy是一個開源,基於NumPy的Python演算法庫和數學工具包,包含的模組有最佳化、線性代數、積分、插值、特殊函式、快速傅立葉變換、訊號處理和影象處理、常微分方程求解和其他科學與工程中常用的計算。

  Julia是一種高階通用語言。
MATLAB是MATrix LABoratory(矩陣實驗室)的縮寫,是一款由美國The MathWorks公司出品的商業數學軟體。MATLAB是一種用於演算法開發、資料視覺化、資料分析以及數值計算的高階技術計算語言和互動式環境。除了矩陣運算、繪製函式/資料影象等常用功能外,MATLAB還可以用來建立使用者介面及與呼叫其它語言(包括C、C++、Java、Python和FORTRAN)編寫的程式。