1
我正在研究Matlab,我需要定義一個依賴於幾個變量的矩陣函數。Matlab |幾個變量的矩陣函數
例如,我有這樣的載體:
t=[1,2,3,4,5,6,7,8,9,10]
y=[1,2,3,4,5,6,7,8,9,10]
是任何可以包含實數或具有任何長度(對於t和y相同的長度,我把它叫做NumData)。
我有一個函數,取決於一些參數P1,P2,...,P5。我想要做的是形成一個矩陣(NumData x 5),這取決於p,一個參數向量:
我不知道如何進一步。我想定義一個矩陣:
Matrix = ones(NumData,NumParameters)
但是,當我嘗試分配,例如
Matrix(1,3) = p(1)+3*p(2)
我得到了一個錯誤。
我試着定義:
Matrix(1,3)[email protected](p) p(1)+3*p(2)
但它也沒用......
我試圖代碼來定義矩陣,就像這樣:
[email protected](p) [1 1 1 exp(-p(5)) -p(4)*exp(-p(5))
1 2 4 exp(-2*p(5)) -p(4)*exp(-2*p(5))
1 3 9 exp(-3*p(5)) -p(4)*exp(-3*p(5))
1 4 16 exp(-4*p(5)) -p(4)*exp(-4*p(5))
1 5 25 exp(-5*p(5)) -p(4)*exp(-5*p(5))]
但它不是好,因爲這是針對特定情況...
我的主要目標是從t矢量形成J,並且臨時t J取決於矢量參數p,因此我可以稍後評估
A= J(1,2,1,2,2)
例如,然後將A因子分解爲QR。
你有什麼建議嗎?或者我對Matlab要求太高了?
請發佈您收到的錯誤消息。 – PearsonArtPhoto 2012-03-13 21:04:51
如果沒有錯誤信息,你的問題就不清楚了。如果錯誤只是沿着「指示越界」的方向發展,那麼你的矩陣不夠大。 – learnvst 2012-03-14 01:45:42