1樓:匿名使用者
用任何方式建立都行,包括記事本,或者是matlab自帶的編譯器,然後將matlab工作目錄切換到檔案所在目錄,直接輸入檔名執行。或者在任何目錄下輸入該檔案的完全路徑。
m檔案有兩種格式,一種叫做script,就是將一系列的命令寫成一個檔案。執行這種檔案相當於一次性執行了很多條命令;所有執行過程中的資料都在工作空間裡。
另一種叫function,在檔案開頭的地方有下面的說明行:
function [輸出引數1,輸出引數2,...]=函式名(輸入引數1, 輸入引數2,...)
呼叫的時候,用“檔名(引數列表)"的方式呼叫,這裡的檔名是不包含字尾".m"的。執行結束以後只會返回輸出引數,計算過程中的中間變數不會被顯示在工作空間裡。
學習matlab要多看其幫助檔案,比很多參考書有用得多。還有一本叫做“戰勝matlab必做練習五十題”的書對於快速掌握matlab基本應用很不錯。我初學的時候只做了前三十題就已經可以自如地工作了。
matlab中一個m檔案怎麼呼叫另一個m檔案的函式
2樓:墨汁諾
按程式,後面的資料將覆蓋前面的資料,可按下面:
function xunhuan(k)
%input('迴圈次數')
for i=1:k
myfunc;
success=xlswrite('e:testdata.xls', w,i)
endend
這樣會在一個檔案中生成多個工作表
3樓:匿名使用者
將兩個m檔案放在同一目錄,在第一個m檔案裡面直接輸入第二個m檔案的檔名即可 ("字尾名不要")。
採用:run函式。
這樣的話,就可以將另一個m檔案中的資料匯入到動態儲存中,這樣就可以呼叫變數的值了
4樓:
普通的指令碼檔案(不是函式):
run('****') 裡面填相對路徑或絕對路徑。
例如當前資料夾下的 aa.m,則可以run('aa.m');
如果不在搜尋路徑,則需要給完整路徑,如run('c:\ddd\aa.m')、run('../../ddd/aa.m')
如果是自己寫的函式(以 function 開頭):
最好把它放在path的某個資料夾裡,一般的做法是,把所有自定義函式都集中放在一起,然後把這個資料夾(需要的話還有子資料夾)加入到path中
matlab m檔案中如何呼叫simulink模組
5樓:
m檔案對simulink的連線:
1、在m檔案中首先開啟mdl檔案,用open_system('model');
2、現在可以在m檔案中用set_param()和get_param()函式改變和獲得simulink中模組的引數值;
把m函式封裝成simulink模組(matlab7.0):
1、可以應用user-defined functions 裡面的embedded matlab function;
2、m函式為多輸入與多輸出時可直接改fcn函式輸入與輸出,儲存就可以那;
用sim()函式
該函式的呼叫格式為:
[t,x,y]=sim(f1,tspan,options,ut)
其中f1為simulink的模型名,tspan為**時間控制變數;引數options為模型控制引數;ut為外部輸入向量
6樓:匿名使用者
在m檔案裡呼叫模型mdl關鍵是用sim命令。
[ t, x, y ] = sim( model, timespan, options, ut)
[ t, x, y1, y2, …, yn] = sim( model, timespan, options, ut)
(1)model:需要進行**的
系統模型框圖名稱;
(2)timespan:系統**的時間範圍(起始至終止時間),可有如下形式:
tfinal:設定**終止時間。**起始時間預設為0;
[tstarttfinal]:設定起始時間(tstart)與終止時間(tfinal);
[tstartoutputtimestfinal]:設定起始時間(tstart)與終止時間(tfinal),並且設定**返回的時間向量[tstartoutputtimestfinal],其中tstart、outputtimes、tfinal必須按照升序排列。
(3)options:由simset命令所設定的除**時間外的**引數;
(4)ut:表示系統模型頂層的外部可選輸入。ut可以是matlab 函式。可以使用多個外部輸入ut1、ut2、…。
(5)t:返回系統**的時間向量。
(6)x:返回系統**的狀態變數矩陣。
(7)y:返回系統**的輸出矩陣。按照頂層輸出outport模組的順序輸出。如果輸出訊號為向量輸出,則輸出訊號具有與此向量相同的維數。
(8)y1,…,yn:返回多個系統**的輸出。
改變模型輸入引數的demo,同時不影響原來的mdl檔案
>t=0:0.1:10; t=t’; u=sin(t); sim_input=[t, u];
>[tout1, x1, yout1]=sim(‘command_in_out’, 10); %使用simulink**引數對話方塊中的workspace i/o 從matlab 工作空間中獲得輸入訊號
>u=cos(t);
>ut=[t, u]; %改變系統輸入訊號
>>[tout2, x2, yout2]=sim(‘command_in_out’, 10, , ut);
7樓:塵埃開出花
matlab m檔案中呼叫simulink模組步驟如下:
1、開啟simulink在simulink庫中選擇”simulink“庫,在其下的子庫”user-defined functions“中選擇 ”matlab function“並新增到simulink**框圖中。
2、開啟m檔案:如下圖所示,雙擊matlab function 即可開啟編輯環境。
4、變數的定義:確定輸入輸出函式,在確定了輸入輸出變數之後進行函式頭的編輯。
6、m檔案模組外觀:m檔案編輯後即可進行封裝並連線成整個函式系統,從而實現所需要的**功能。
8樓:小丁創業
matlab m檔案中呼叫simulink模組的方法和詳細的操作步驟如下:
1、首先,開啟simulink,在simulink庫中選擇“ simulink”庫,在子庫“ user-defined functions”中選擇“ matlab function”,然後將其新增到simulink**框圖中,如下圖所示。
2、其次,開啟m檔案,雙擊“matlab function”開啟編輯環境,如下圖所示。
4、然後,變數的定義:確定輸入和輸出函式,並在確定輸入和輸出變數後編輯函式頭,如下圖所示。
6、最後,m檔案模組的外觀:編輯m檔案後,可以將其封裝並連線到整個功能系統中,以實現所需的**功能,如下圖所示。
matlab中怎麼同時執行多個m檔案,這些檔案怎麼相互呼叫?
9樓:匿名使用者
function sin=drawsin(x)%放在第一個m檔案中sin=sin(x);
plot(x,y,'g*');
function cos=drawcos(x)%放在第二個m檔案中cos=sin(x);
plot(x,y,'r*');
function main()%放在第三個m檔案中,drawsin,drawcos是子程式
x=-pi:0.1:pi;
drawsin(x)
drawcos(x)
matlab中如何在m檔案中呼叫自定義函式
10樓:楊好巨蟹座
n 1、函式覆檔案+呼叫命令
制檔案:需單獨定義一個自定
義函式的m檔案;
n 2、函式文
件+子函式:定義一個具有多個自定義函式的m檔案;
1、函式檔案+呼叫函式檔案:定義多個m檔案:
% 呼叫函式檔案:myfile.m
clear
clcfor t=1:10
y=mylfg(t);
end%自定義函式檔案: mylfg.m
function y=mylfg(x) %注意:函式名(mylfg)必須與檔名(mylfg.m)一致
y=x^(1/3);
注:這種方法要求自定義函式必須單獨寫一個m檔案,不能與呼叫的命令檔案寫在同一個m檔案中。
2、函式檔案+子函式:定義一個具有多個子函式的m檔案%命令檔案:funtry2.m
function =funtry2()
for t=1:10
y=lfg2(t)
fprintf(‘m^(1/3)=%6.4f\n’);
endfunction y=lfg2(x)y= x^(1/3);
%注:自定義函式檔案funtry2.m中可以定義多個子函式function。子函式lfg2只能被主函式和主函式中的其他子函式呼叫。
11樓:匿名使用者
看看路徑有沒有設對,如果path裡面沒有包含f1.m的目錄,就用cd命令把這個目錄加進去,用法和dos下的一樣
matlabgui呼叫m檔案及顯示問題
醜水凡 function start callback hobject,eventdata,handles hobject handle to start see gcbo eventdata reserved to be defined in a future version of matlab ...
matlab裡怎麼呼叫函式,在matlab中怎麼直接呼叫函式
手機使用者 matlab可以在m檔案函式中定義一個函式和多個子函式,但是需要注意的是子函式只能由同一m檔案中的函式呼叫。如下面的例子 function max,min mypfun x 主函式n length x max mysubfun1 x,n min mysubfun2 x function ...
matlab中的 m是什麼檔案
鄢昭君衡哲 matlab的m檔案分為兩種。一種為指令碼檔案,就是由一堆命令構成的,裡面第一行不是function 開頭,這種檔案比如是myfun.m 就在命令視窗裡輸入myfun回車就行,matlab會把m檔案中的命令都執行一次。另一種為函式檔案,第一行為function,比如說 function ...