一、基於mcc 命令列方式實現編譯過程的方法
前期準備:
1)程式設計環境
作業系統:windows xp;開發工具:visual c++ 2008 ,matlab r2011a;注意:
安裝時,要先裝visual c++ 2008 後裝matlabr2008b,因為matlab r2008b 要用到visual c++ 2008 中的.*** 框架。
2)配置編譯器
使用mbuild -setup 和mex -setup 兩個命令對編譯器進行配置, 兩個命令均選擇microsoft visual c++2008(視情況而定)。
3)設定標頭檔案和庫檔案的路徑
在visual c++ 2008 中選擇 tools - options – projects and solutions - vc directories;
在include files 中新增如下路徑:
matlab路徑\extern\include 和存放生成後lib和dll的檔案路徑;
在library files 中新增如下路徑:
matlab路徑\extern\lib\win32\microsoft 和存放生成後lib和dll的檔案路徑
4)設定環境變數
我的電腦-屬性-高階-環境變數-系統變數-path中新增matlab生成庫檔案的路徑
可以根據matlab 安裝實際情況輸入標頭檔案和庫檔案的路徑。
配置:1. 首先在matlab中建立「.m」檔案
例如:function a = addmatrix(a1,a2)
a = a1 + a2;
figure;imshow(mat2gray(a));
title('加法結果顯示');
eturn
儲存為addmatrix.m。
function m = multiplymatrix(a1, a2)
m = a1 * a2;
figure;imshow(mat2gray(m));
title('乘法結果顯示');
return
儲存為multiplymatrix.m。
2. 在matlab 命令視窗用如下命令編譯addmatrix.m和multiplymatrix.
m,生成.dll檔案和呼叫.dll所需要的相關檔案,如.
h 檔案等:
例如:mcc -w cpplib:生成lib的名稱 -t link:lib 自定義檔案(1).m 自定義檔案(2).m –v
3.在專案屬性出加入matlab原有和新生成的lib庫
4.在需要編譯的檔案中加入:
#pragma once
//包含相應的標頭檔案(視情況多新增)
#include
#include
#include "新生成的標頭檔案.h"
//實用相關網域名稱
using namespace std;
int main(int argc, char **argv)
*/ //matlab生成的庫函式初始化
if(!libmatrixpinitialize())
else
mclterminateapplication();
return 0;}
Matlab中m檔案的命名規則
matlab的.m檔案儲存的命名規則 1.檔名命名要用英文本元,第乙個字元不能是數字 下劃線呢?2.檔名不要取為matlab的乙個固有函式,m檔名的命名盡量不要是簡單的英文單詞,最好是由大小寫英文 數字 下劃線等組成。原因是簡單的單詞命名容易與matlab內部函式名同名,結果會出現一些莫名其妙的錯誤...
MATLAB在微積分中的應用
萬方資料 萬方資料 作者 甘松 作者單位 貴州師範大學數計學院,貴州,貴陽,550001 刊名 大觀週刊 英文刊名 daguan zhoukan 年,卷 期 2011 5 參考文獻 4條 1.劉衛國 陳昭平 張穎matlab程式設計與應用 2002 2.薛定宇 陳陽泉高等應用數學問題matlab求解...
第8章MATLAB在非線性系統中的應用
1 狀態反饋與極點配置 狀態反饋是指從狀態變數到控制端的反饋,如圖3所示。設原系統動態方程為 引入狀態反饋後,系統的動態方程為 圖3 狀態反饋 狀態反饋極點配置問題就是 通過狀態反饋矩陣k的選取,使閉環系統式 4.2 的極點,即的特徵值恰好處於所希望的一組給定閉環極點的位置上。線性定常系統可以用狀態...