matlab外部接口简介
1、MATLAB外部接口主要包括3部分內容:
(1)、MEX文件:外部程序調用接口;
MEX文件是MATLAB解釋器可以自動加載和運行的動態鏈接過程,MATLAB可以像調用內部函數一樣調用它們。用戶通過MEX文件可以完成以下功能:
可以在MATLAB系統中像調用MATLAB的內建函數一樣調用已經存在的用C語言和Fortran語言編寫完成的算法,而無需將這些程序重新編寫為MATLAB的M文件,從而使資源得到充分利用;
當使用MATLAB進行大規模的數據處理時,MATLAB往往由于執行效率的問題而顯得力不從心,這時可以使用其他高級編程語言進行算法的設計,然后在MATLAB中調用,從而大大地提高數據處理的效率;
通過MEX文件,用戶可以直接對硬件進行編程,進一步擴展了MATLAB的應用領域;
(2)、MAT文件應用程序:數據輸入輸出接口;
MATLAB文件與其他編程環境的數據交換是通過MAT文件來實現的。MAT文件是MATLAB數據存儲默認的文件格式,它的文件名是以.mat為后綴;
MAT數據格式是MATLAB的數據存儲的標準格式,它把文件存儲為二進制格式。MAT文件由文件頭和緊跟其后的數據組成。其中,MAT文件的文件頭又由以下幾部分組成:MATLAB版本信息、操作平臺的信息、文件創建的時間。我們可以從文本編輯器中打開一個MAT文件,查看器文件頭的信息。變量的數據類型包括MATLAB中能夠使用到的大部分數據類型,包括字符串、矩陣、多維陣列、結構和單元陣列。MATLAB以字節流的方式順序地將數據寫入到MAT文件中去,存儲在硬盤上的數據是以二進制的格式保存。
在MATLAB中,可以直接使用save命令存儲在當前工作內存區中的數據,把這些數據存儲成二進制的MAT文件。Load命令則執行相反的操作,它把磁盤中的MAT文件的數據讀取到MATLAB工作區中。
建立mat文件:(1)、打開matlab,點擊左上角文件(File),然后點擊新建(new),選擇變量(Variable),就新建了一個mat文件。點擊你新建的文件,即可打開一個編輯器,輸入數據即可;(2)、用save直接對數據進行保存。
讀取mat文件:load filename.mat
(3)、MATLAB計算引擎函數庫;
MATLAB引擎函數庫是MATLAB提供的一系列允許用戶在別的程序中與MATLAB交互的函數庫和程序庫。它允許用戶在自己的C語言或Fortran語言應用程序中對MATLAB進行調用,將MATLAB作為一個計算引擎使用,讓其在后臺運行,完成復雜的矩陣計算,簡化前臺用戶程序設計的任務。在用戶啟動MATLAB引擎時,相當于啟動了另外一個MATLAB進程,將其在后臺運行。用戶應用程序通過MATLAB引擎函數庫中提供的函數完成與MATLAB引擎之間進行數據交換和命令傳送的任務。
通過MATLAB引擎可以完成以下功能:
可以將MATLAB作為一個功能強大的和可編程的數學函數庫,調用MATLAB中大量的數學計算函數,完成復雜的計算任務。例如,對一個矩陣進行轉置或計算快速傅里葉變換,這對于普通的C語言或Fortran語言編程將是非常麻煩的,而使用了MATLAB計算引擎之后,僅僅幾行語句就可以完成任務。當MATLAB工作在這種方式下時,MATLAB就是一個強有力的、編程靈活且高效的數學函數庫;
利用MATLAB的計算高效和矩陣處理靈活的特點,結合其他高級語言循環處理快、圖像界面編程簡單的優點,可以為一個特定的任務構建一個高效友善的交互界面。這種開發模式,將極大地縮短應用程序開發周期。
MATLAB計算引擎工作在后臺,工作時不需要MATLAB完全與程序相連,只需要以小部分引擎函數庫相連即可,從而節省了大量系統資源,使應用程序整體性能更好。而且用戶編制的應用程序可以獨立于MATLAB的解釋性執行環境而執行,真正生成獨立可執行的應用程序。使用MATLAB引擎不需要經過特別的系統配置,在一般情況下,對MEX文件的系統配置完成后,對MATLAB引擎的系統配置也基本完成,無需額外的步驟就可以對MATLAB引擎程序進行編譯了。
除上述3部分外,還包括MATLAB與其他開發平臺的接口,其中這些開發平臺主要包括Visual C++、Delphi、Visual Basic等。
總結
以上是生活随笔為你收集整理的matlab外部接口简介的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C#中object的使用
- 下一篇: 举例说明使用MATLAB Coder从M