matlab 乙個函式本來要有兩個輸出,卻只輸出乙個,怎麼回事?

2025-07-13 02:20:15 字數 1506 閱讀 5960

1樓:劉賀

呼叫形式不對,既然函式有2個輸出值,就應該這樣呼叫:

[ku,kd]=bulk(

ku =kd =

matlab裡寫乙個有兩個輸出的函式,如果只用乙個數存其輸出值如何儲存後乙個輸出值

2樓:布霜

在matlab裡面輸入edit

function f=fun(x,y)

f=x.^2+sin(x.*y)+2*y;

儲存一下。最後在matlab命令視窗輸入fun(1,0)就可以了。

就可以計算當x=1,y=0時的值,得到的結果應當是1ans =1

matlab定義多輸出函式,有沒有辦法只引用其中乙個輸出?

3樓:幻化x星光螺

可以,不需要的輸出用~替換掉。

比如自帶函式里直角座標轉極座標的函式。

theta,rho] = cart2pol(x,y)如果我只想要rho這個輸出,可以這樣:,rho] = cart2pol(x,y)

matlab中運用function為什麼輸出只有乙個值

4樓:網友

這是預設輸出。

如果你要輸出兩個值,就必須這樣用:

a,b] = my(12,10)

你的另乙個程式有些錯誤,語句順序要修改一下:

function x=fun(a,b)

c = a+b;

d = a*b;

x = [c;d];

這樣你用命令。

x = fun(12,10)

就不會出錯了。

5樓:風清響

如果你使用my(c,d),那麼系統預設只返回第乙個值,也就是a。

如果你需要返回a,b,那麼必須指明是[a,b]=my(c,d)--

你下面那個圖,c沒有定義,因為你第一行定義語句裡面,沒出現c,只出現了矩陣x。所有你後續函式表示式裡面出現的引數,都要在第一行定義。

6樓:網友

你使用[x,y]=my(12,10)

就會返回兩個值了。

matlab 某個自定義的函式中如果有多個輸出值 如何正確使用函式控制代碼@

7樓:網友

fzero求解的函式只能是單輸出的(如果是多輸出函式,後面的輸出會被忽略)。

不可能如你所希望的那樣,通過一次fzero求出y1、y2對應的零點。只能通過迴圈的方式做。

但如果把函式改寫一下,可以避免使用顯式迴圈:

function y = a(x)

y(1)=x-5;

y(2)=x-3;

然後求解:> s=arrayfun(@(i)fzero(@(x)subsref(a(x),struct('type','()','subs',})1 6]),1:length(a(1)))

s =5 3

matlab中用series函式計算兩個傳遞函式的串聯形式

解決方bai法以及步驟 1 首du先,啟動使用的zhimatlab軟體,如圖 2 根dao據簡介中的系統專,用 來表示屬各環的傳遞函式,如圖 3 傳遞函式的求解由內到外,先求解內環的傳遞函式,如圖所示 4 外環的傳遞函式,如圖所示 5 根據求得的傳遞函式,利用roots函式判斷系統的穩定性,如圖所示...

如何用matlab求兩個函式的卷積

function convolution t 4 0.001 4 e rectpuls t 0.25,1.5 plot t,e pause h tripuls t 1,2,1 plot t,h pause s 8 0.001 8 f conv e,h plot s,f 卷積後訊號就變長了,如果不想改...

函式兩次求導,一個函式兩次求導

二階導數 所謂二階導數,即原函式導數的導數,將原函式進行二次求導。例如 y x 2的導數為y 2x,二階導數即y 2x的導數為y 2。意義如下 1 切線斜率變化的速度 2 函式的凹凸性 例如加速度的方向總是指向軌跡曲線凹的一側 其實沒有bai 什麼意義du 如果你非要知道的話,那麼zhi只能說你求出...