簡體   English   中英

Matlab函數輸入用於更改的輸入

[英]Matlab function input for a input that changes

調用函數時如何使用變化的輸入? 我遇到的問題是我必須在Matlab中為拋物線偏微分方程的顯式方法編寫代碼,初始條件為u(x,0) =sin(pi*x)

當調用函數我寫

explicit( 0,0,sin(pi*x),0,0,1,0,1,3,2,0.25,0.25)

其余輸入函數引用不同的值和邊界條件。

其中sin(pi*x)指向我的代碼問題區域。 在代碼自我中,我為此邊界條件編寫了代碼

for j = 1:(n+2)
i = (n+2)
 x = (a -h) + h*j
 u(i,j) = Y_below
end

Y_below表示u(x,0) = sin(pi*x)

當邊界條件Y_below等於任何數字時,這正是我想要的方式。 我不知道在調用函數時如何使用變化的x

我已經嘗試過Google,但我能得到的最接近的是varargin,但我不知道如何使用它。 我是Matlab的新手,這是我必須為作業編寫的第一個程序。 任何幫助將不勝感激!

我不確定這是否是您要的東西,但是
如果您按以下方式定義函數:

function output = myfunction(input1, input2, varargin)

那么varargin是一個varargin的參數,它收集所有
除input1,input2外的其他參數。 這意味着
如果您按以下方式調用此函數:

outp = myfunction(inp1, inp2, inp3, inp4, inp5);

然后在此函數中,以下內容將成立:

input1 = inp1;
input2 = inp2;
varargin{1} = inp3;
varargin{2} = inp4;
varargin{3} = inp5;

您可以在nargin檢查(在函數內)傳遞的參數nargin

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM