1

この常微分方程式系をMathematica7で解きたいのですが、すべての独立変数に依存せずに関数が指定されたというエラーが見つかりました。方程式は次のとおりです。 ここに画像の説明を入力してください

皆さんの助けに感謝します

4

2 に答える 2

2

私はV7を手元に持っていませんが、これは役に立ちますか?

DSolve[{D[x[t], t] == r1 - g1 x[t], 
  D[y[t], t] == k2 x[t]/(K + x[t]) g2 y[t]}, {x, y}, t]
于 2011-12-09T21:43:41.760 に答える
0

あなたが見たエラーについては、あなたのコードを見ずにあなたが間違ったことを正確に言うのは難しいです。しかし、うまくいけば、以下のコードが、あなたがたまたま犯した間違いを明確にするのに役立つでしょう。


次に、DEのシステムを解決します。x最初にDEを解くことができます:

In[1]:= xSoln = DSolve[{x'[t] == r1 - g1 x[t]}, x, t]

Out[1]= {{x -> Function[{t}, r1/g1 + E^(-g1 t) C[1]]}}

これをyDEに代入して、1次の線形で不均一な微分方程式を得ることができます。これは、積分係数で解くことができます。

In[2]:= y'[t] == k2 x[t]/(k + x[t]) - g2 y[t] /. xSoln[[1]]

Out[2]= y'[t] == - g2 y[t]  
                 + (k2 (r1/g1 + E^(-g1 t) C[1]))/(k + r1/g1 + E^(-g1 t) C[1])

不均一な混乱 f[t]と呼ぶので、DEはy'[t] == f[t] - g2 y[t]です。Mathematicaはこれを解決できる

In[3]:= y[t] /. DSolve[y'[t] == f[t] - g2 y[t], y, t][[1]]

Out[3]= C[1] E^(-g2 t) + E^(-g2 t) Integrate[E^(g2 K[1]) f[K[1]], {K[1], 1, t}]

積分定数はソリューションの積分定数C[1]と同じではないことに注意してください。x[t]また、明示的な形式で代入するとf[t]、Mathematicaは閉じた形式で積分を行うことができません。

だから私たちができる最善のことは

x[t] == r1/g1 + E^(-g1 t) C[1]
y[t] == C[2] E^(-g2 t) + E^(-g2 t) Integrate[E^(g2 s) f[s], s]

どこ

f[s] == k2 (r1 E^(g1 s) + g1 C[1])/((g1 k + r1)E^(g1 s) + g1 C[1])
于 2011-12-09T23:33:27.637 に答える