通過MATLAB 和相關工具箱,工程師、科研人員、數學家和教育工作者可以在統一的平臺下完成相應的科學計算工作。這些工具覆蓋了非常廣泛的應用領域,例如汽車、電子、儀器儀表和通訊等行業。
不管處理什麼樣的對象——算法、圖形、圖像、報告或者算法仿真—— MATLAB 都能夠幫助大家不斷提高工作效率。 MATLAB 環境能夠完成算法開發、數據分析和可視化、高性能數據分析等工作,相對於傳統的 C 、 C++ 或者 FORTRAN 語言,在 MATLAB 中完成這些工作所消耗的時間僅僅是傳統手段的極小一部分。開放性的 MATLAB 軟件和開發語言—— M 語言,能夠快速實現用戶好的想法和概念。
MATLAB 本身包含了 600 餘個用於數學計算、統計和工程處理的函數,這樣,就可以迅速完成科學計算任務而不必進行額外的開發。
業內領先的工具箱算法極大的擴展了 MATLAB 的應用領域,例如信號處理、數字圖像處理、數據分析和統計以及算法建模和仿真等。 MATLAB 的工具箱都是業內的專家、工程師結合多年來的經驗和專業知識,專門開發的用戶處理特殊數學計算、分析和圖形可視化的功能函數集合。利用這些工具箱,用戶可以通過對比應用一系列不同的算法,而避免了應用程序的開發。
使用 MATLAB 軟件進行科學計算,能夠極大加快科研人員進行研究開發的進度,減少在編寫程序和開發算法方面所消耗的時間和有限的經費,從而獲得最大的效能。
強大靈活的分析平臺; | |
兼容多種數據類型; | |
簡化處理數據的函數; | |
快速而又精確的數據分析函數; | |
用戶高級數據處理的工具箱函數; | |
豐富的圖形和自動文檔生成能力; |
利用 MATLAB 環境就可以完成各種數據的分析與可視化工作,其中包括各種信號、圖像、線性系統的分析手段。 MATLAB 提供的高級編程語言,能夠處理標量、向量、矩陣、多維數組、結構、用戶自定義數據類型對象等,充分利用靈活的編程語言就可以迅速的實現算法,並且可以任意擴充已有工具箱的功能。
兼容多種數據類型
將數據導入到 MATLAB 環境下是非常容易實現的工作, MATLAB 本身就能夠通過串口、 TCP/IP 等形式獲取數據,而且還兼容多種數據文件格式,獲取數據的方法包括:
外部設備——使用數據採集工具箱可以直接從 PC 插卡式數據採集設備中直接讀取數據,利用儀器儀表控制工具箱可以通過 GPIB 、 VISA 標準協議讀取儀器設備中的數據,而圖像採集工具箱提供了從工業標準圖像採集設備獲取圖像 / 視頻數據的能力。關於數據採集的詳細信息請參閱 MATLAB 的測量測試解決方案。
數據庫——使用 Database 工具箱可以利用 ODBC/JDBC 標準接口讀取 / 寫入數據庫數據,而 Excel Link 工具箱提供了直接向 Excel 電子表格文件讀寫數據的能力。而 Datafeed 工具箱提供了直接與 Bloomberg 公司提供的實施市場數據連接的能力。
數據文件—— MATLAB 支持多種格式的數據文件 IO ,並且提供了低端的二進制文件讀寫能力可以讀寫任意格式的數據文件。
豐富的工具箱函數
MATLAB 和其他工具箱提供了各個專業領域的數據分析處理函數,利用這些函數,能夠達到事半功倍的效果,這些工具箱有:
Curve Fitting | Image processing | ||
Filter design | Symbolic math | ||
Statistics | Control system design | ||
Communications | Partial differential equations | ||
Optimization | Neural networks | ||
Wavelets | Signal processing | ||
Spline | Fuzzy logic |
MATLAB 的小波分析工具箱處理一維小波變換的可視化結果
豐富的圖形和文檔生成能力
MATLAB 的數據圖形能力非常強大,不僅提供通用的二維數據繪圖能力,還提供了豐富的三維數據可視化能力。 MATLAB Notebook 可以直接在 Microsoft Word 中調用 MATLAB 功能, MATLAB Report Generator 可以將 MATLAB 處理的結果直接生成標準文檔。
MATLAB 本身的數學計算能力是建立在 LAPACK 算法包和優化的 BLAS 線性代數算法包的基礎之上。而且利用 MATLAB 進行算法開發,可以輕而易舉的完成工作,代碼的數量以及工作強度都遠遠少於使用傳統的 C 、 FORTRAN 進行算法開發所需要的工作量。
MATLAB 提供的數學計算能力包括:
三角函數以及基本的數學運算 | |
多項式函數 | |
常微分方程 | |
線性代數 | |
稀疏矩陣 | |
基本信號處理 | |
非線性處理 | |
幾何分析 |
同時 MATLAB 還提供了快速開發、發佈算法的能力,不僅能夠繼承 C/C++ 語言、 Fortran 語言開發的算法,還可以將 MATLAB 開發的 M 語言算法轉變成爲 C/C++ 語言,同其他的開發工具集成。
MATLAB 提供了統一的算法仿真與建模環境,可以針對處理的問題建立複雜的動態系統模型。 MATLAB 本身提供的函數就可以完成系統仿真與建模工作,無論是複雜的矩陣運算還是常微分方程的求解,無論是基礎的簡單系統還是複雜的動態系統,任何可以使用數學手段描述的模型都可以在 MATLAB 中進行建模與仿真。
此外,工具箱函數也可以完成高級應用,例如大家非常熟悉的曲線擬合、信號處理、優化、神經網絡、控制系統等工具箱,可以非常簡便的完成系統模型的創建,並且進行動態系統的仿真。此外,還可以利用其他工具箱完成一些特別的應用:
使用統計工具箱和該工具箱提供的隨機數生成器進行特殊系統仿真與分析,例如完成不同假設條件下的模型分析等。 | |
使用系統辨識工具箱確認動態系統的模型,可以針對時序數據推斷其系統響應,或者分析振顫系統的共鳴模型。 | |
使用圖像處理工具箱中的形態學函數和仿真技術實現圖像的復原。 | |
使用偏微分方程工具箱利用有限元方法分析解決偏微分系統,例如創建電力電子系統的模型等。 |
同樣的模型創建與仿真的工作可以在 Simulink 和 Stateflow 中完成, Simulink 和 Stateflow 可以完成動態系統、數字信號處理系統以及複雜動態邏輯系統的建模與仿真。有關 Simulink 和 Stateflow 的說明請參閱相關的產品說明。
MATLAB 提供了快速的數據圖形可視化能力,可以直接繪製圖形曲線、直觀的觀察顯示結果。強大的直接面向對象的圖形能力允許直接分析、觀察各種圖形特性,並且允許將圖形直接添加到自定義的系統中,對三維圖形對象進行材質渲染等。
豐富的 2-D 和 3-D 繪圖函數 | |
標註、分析和自定義繪圖的交互式工具 | |
三維表面快速、精確的可視化能力 | |
支持大規模、複雜的不規則採樣數據可視化 | |
不同工具箱提供更加豐富的可視化能力 | |
圖像處理與分析的工具 |
MATLAB 不僅僅是算法開發的環境,同時還提供了交互式的編程、調試環境。使用內建的數學函數以及其他工具箱包含的應用函數,利用集成的交互式編程和調試工具能夠節約大量的新算法開發實現的時間,另外, MATLAB 提供了強大的應用程序性能分析工具,輔助用戶優化算法的代碼執行效率。
用戶創建的應用程序還可以通過圖形用戶界面的形式進行發佈,使用 MATLAB 提供的圖形用戶界面開發工具—— GUIDE 可以節約圖形界面程序開發所消耗的時間。利用拖放式的開發環境,可以創建文本框、單選框、複選框、列表框、滾動條等不同的界面元素。
如果需要將應用程序發佈,使用 MathWorks 提供的不同工具可以完成不同類型和層次的應用程序發佈,例如可以將圖形用戶界面應用程序通過 MATLAB Compiler 轉變成標準的 C/C++ 語言,同時還可以通過互聯網完成算法的發佈。
由此可見, MATLAB 是一種高效的開發環境,可以用於創建科學和工程應用程序,它提供的工具覆蓋了科學計算的每一個開發步驟。