1樓:愛你凡凡麼麼噠
將兩個m檔案放在同一目錄,在第一個m檔案裡面直接輸入第二個m檔案的函式名稱即可 。
[輸出1,輸出2,..]=函式名稱(變數1,變數2,...)。
matlab是美國mathworks公司出品的商業數學軟體,用於演算法開發、資料視覺化、資料分析以及數值計算的高階技術計算語言和互動式環境,主要包括matlab和simulink兩大部分。
2樓:我行我素
matlab中的m檔案是可以在檔案外呼叫的,如y=myfun(x)是個個函式,可這樣呼叫:
x=[......];
y=myfun(x)
如果要呼叫m檔案中的函式,則只能在該m檔案內,不能在外部呼叫,這種函式叫子函式。如:function y=myfun(x)
a=[....];
y=myfunfun(a)
function f=myfunfun(a)f=a^2+1;
endend
這個檔案中的myfunfun函式只能在這個函式內使用,不能在外部呼叫。
3樓:楊好巨蟹座
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只能被主函式和主函式中的其他子函式呼叫。
4樓:su顏ail依舊
我舉個例子:
新建m檔案
function [f,sf] = t2f(t,st)%dt = t(2) - t(1);
t = t(end);
df = 1/t;
n = length(st);
f = -n/2*df:1/1:n/2*df-df;
sf = fft(st);
sf = t/n*fftshift(sf);
儲存這個子函式檔名為t2f.m
然後在同一個目錄下另外建立主函式
clear all
close all
t=-1:0.001:1;
y=sinc(2*pi*t);
figure(1);
plot(t,y)
[f,y]=t2f(t,y);%這裡就是呼叫剛才的子函式figure(2);
plot(f,abs(y))
axis([-20 20 -0.1 0.1]);
該程式在第8行呼叫了子函式;
還有另外一種方法把子函式和主函式寫在同一個m檔案裡,這個只要求子函式在主函式之前就可以。
希望對你有所幫助。
matlab中一個m檔案怎麼呼叫另一個m檔案的函式
5樓:越亭晚僑汝
將兩個m檔案放在同一目錄,在第一個m檔案裡面直接輸入第二個m檔案的檔名即可
("字尾名不要")。
採用:run函式。
這樣的話,就可以將另一個m檔案中的資料匯入到動態儲存中,這樣就可以呼叫變數的值了
matlab中如何在m檔案中呼叫自定義函式
6樓:楊好巨蟹座
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只能被主函式和主函式中的其他子函式呼叫。
7樓:匿名使用者
看看路徑有沒有設對,如果path裡面沒有包含f1.m的目錄,就用cd命令把這個目錄加進去,用法和dos下的一樣
matlab怎麼呼叫m檔案中的函式?
8樓:愛你凡凡麼麼噠
將兩個m檔案放在同一目錄,在第一個m檔案裡面直接輸入第二個m檔案的函式名稱即可 。
[輸出1,輸出2,..]=函式名稱(變數1,變數2,...)。
matlab是美國mathworks公司出品的商業數學軟體,用於演算法開發、資料視覺化、資料分析以及數值計算的高階技術計算語言和互動式環境,主要包括matlab和simulink兩大部分。
9樓:扶德萬澎
matlab中的m檔案是可以在檔案外呼叫的,如y=myfun(x)是個個函式,可這樣呼叫:
x=[......];
y=myfun(x)
如果要呼叫m檔案中的函式,則只能在該m檔案內,不能在外部呼叫,這種函式叫子函式。如:function
y=myfun(x)
a=[....];
y=myfunfun(a)
function
f=myfunfun(a)
f=a^2+1;
endend
這個檔案中的myfunfun函式只能在這個函式內使用,不能在外部呼叫。
matlab的呼叫的函式能不能跟函式放在一個m檔案中?
10樓:
可以的,但是呼叫函式的程式本身必須定義成一個函式。比如:被呼叫的函式是fun1,呼叫它的函式是callfun1。那麼你要新建一個callfun1.m,裡面輸入:
function callfun1 %不需要輸入和輸出引數,直接點執行即可執行
a=0.1;
b = fun(a) %點執行後,會直接在command window裡顯示b=0.01
function y = fun1(x)
y=x^2;
注:function結尾加不加return沒有什麼區別,可加可不加
matlab怎麼呼叫m檔案
11樓:匿名使用者
用任何方式建立都行,包括記事本,或者是matlab自帶的編譯器,然後將matlab工作目錄切換到檔案所在目錄,直接輸入檔名執行。或者在任何目錄下輸入該檔案的完全路徑。
m檔案有兩種格式,一種叫做script,就是將一系列的命令寫成一個檔案。執行這種檔案相當於一次性執行了很多條命令;所有執行過程中的資料都在工作空間裡。
另一種叫function,在檔案開頭的地方有下面的說明行:
function [輸出引數1,輸出引數2,...]=函式名(輸入引數1, 輸入引數2,...)
呼叫的時候,用「檔名(引數列表)"的方式呼叫,這裡的檔名是不包含字尾".m"的。執行結束以後只會返回輸出引數,計算過程中的中間變數不會被顯示在工作空間裡。
學習matlab要多看其幫助檔案,比很多參考書有用得多。還有一本叫做「戰勝matlab必做練習五十題」的書對於快速掌握matlab基本應用很不錯。我初學的時候只做了前三十題就已經可以自如地工作了。
12樓:匿名使用者
function y=fun(x)
y=sin(x);
plot(y);
>> x=1; y=fun123(x)
y =0.8415
matlab中怎麼呼叫pythonpython計算結果再返回
全部用檔案io的話可以這樣 matlab把所有引數輸出到一個檔案裡,然後用system命令調python指令碼。python指令碼讀檔案做計算結果再寫檔案。最後matlab再讀檔案得到結果。假設python指令碼的用法是 python py in.txt out.txt則matlab呼叫命令為 st...
怎麼用matlab求m檔案中的函式的梯度
試試,下面的 如果xi是實數將eval syms sx,改為eval syms sx,real 計算結果可能更簡潔一些,這裡由於不知道 回你的m值,所以也將其引數化答了,你可以將其換為你需要的值。若有問題,可繼續追問 x m for i 1 24 sx x num2str i m num2str i...
如何能把MATLAB中的M檔案弄成模組,在SIMULIN
在simulink user defined function裡面有各種可以呼叫的自定義函式,其中embedded matlab function m file s function s function等等又可以實現m檔案被simulink所呼叫。內如果你容是初學者,不妨使用embedded ma...