有誰知道如何最小化一個包含積分在MATLAB中的函數?功能如下:最小化一個包含積分的函數
L = Int(t=0,t=T)[(AR-x)dt], A is a system parameter and R and x are related through:
dR/dt = axRY - bR, where a and b are constants.
dY/dt = -xRY
我讀的地方,我可以用fminbnd和四組合,但我不能使它發揮作用。有什麼建議麼?
有誰知道如何最小化一個包含積分在MATLAB中的函數?功能如下:最小化一個包含積分的函數
L = Int(t=0,t=T)[(AR-x)dt], A is a system parameter and R and x are related through:
dR/dt = axRY - bR, where a and b are constants.
dY/dt = -xRY
我讀的地方,我可以用fminbnd和四組合,但我不能使它發揮作用。有什麼建議麼?
也許你可以給出你積分的更多細節,例如[AR-x)dt]
的缺失支架在哪裏? x
對t
有依賴嗎,還是我們可以整合dR/dt = axR - bR
給R=C*exp((a*x-b)*t)
?在任何情況下,要回答你的fminbnd
和quad
問題,您可以設置A,C,T,a,b,xmin
和xmax
(最後兩個是要認準分鐘以上的範圍內),並使用:
[x fval] = fminbnd(@(x) quad(@(t)A*C*exp((a*x-b)*t)-x,0,T),xmin,xmax)
此發現x
最小化積分。
啊......我想我也加了第二個方程式。我對此表示歉意......會在第二秒鐘內添加第二個。感謝指針,我目前正在研究這一點。但是,我很好奇你的答案可能會改變我的修改後的問題... – Legend 2010-02-12 23:45:08
如果我沒有理解錯,你都試圖儘量減少對於T:
\int_0^t{(AR-x) dt}
那麼,你只需要找到的零點:
AR-x
這只是數學,不是matlab;)
謝謝...你介意在你的文章中修復膠乳嗎?我似乎無法看到它出於某種原因... – Legend 2010-02-12 23:48:57
不幸的是,texify不支持外部鏈接。通過http://www.texify.com/links.php這裏的代碼來查看圖像。 – Mascarpone 2010-02-14 11:26:24
這裏有一些操作你的方程可能有幫助。
結合你給第二和第三方程給出
dR/dt = -a*(dY/dt)-bR
現在,如果我們解決了在右邊R和它插到你給我們得到
L = Int(t=0,t=T)[(-A/b*(dR/dt + a*dY/dt) - x)dt]
現在我們第一個方程可以整合第一項得到:
L = -A/b*[R(T) - R(0) + Y(T) - Y(0)] - Int(t=0,t=T)[(x)dt]
所以現在所有關於R a nd Y是終點。事實上,你可能也定義了一個新的功能,Z這等於Y + R。然後你得到
L = -A/b*[Z(T) - Z(0)] - Int(t=0,t=T)[(x)dt]
這接下來的部分,我不是在爲自信。x的積分相對於T將放棄一些功能,在t = 0和評估T = T.這個功能我們稱之爲X給:
L = -A/b*[Z(T) - Z(0)] - X(T) + X(0)
這個公式對於所有的T成立,所以我們可以令T爲t,如果我們想。
L = -A/b*[Z(t) - Z(0)] - X(t) + X(0)
另外,我們可以組一個很大的常量在一起,並呼籲他們下把
X(t) = -A/b*Z(t) + C
其中
C = A/b*Z(0) + X(0) - L
所以我不知道還有什麼用做這一點,但我已經表明,x(t)的積分與Z(t)= R(t)+ Y(t)線性相關。在我看來,有很多方程可以解決這個問題。其他人看到從這裏去哪裏?我的數學有什麼問題?
很好的問題。你有沒有找到解決方案?如果不是的話,你是否有興趣使這個問題更一般化 - 即關於最小化包含積分的任何函數而不是你的特定函數?我願意爲這樣一個普遍的問題開始獎金。 – dbliss 2016-04-04 05:49:40