Mathematica DSolve有两个功能

问题描述 投票:0回答:1

我有以下两个微分方程

y'[t] == k1*y[t] - k3*y2[t]
y2'[t] == k2*y2[t] - k4*y[t]

我可以使用Mathematica Solve函数求解方程:

DSolve[{y'[t] == k1*y[t] - k3*y2[t], y2'[t] == k2*y2[t] - k4*y[t], 
   y[0] == y10, y2[0] == y20}, {y[t], y2[t]}, t]

Mathematica给出了这个微分方程组的分析结果,形式如下:

y[t] = f{t}

y2[t] f{t}

但我想要的是y [t]的函数,它不仅取决于t,还取决于y2 [t]

y[t] = f{t, y2[t]}

原因是我有实验数据(浓度y和y2超过t),我想拟合y(后来是y2)的曲线。我很感激任何投入! :-)

math wolfram-mathematica differential-equations
1个回答
0
投票

我本来只是留下这个评论,但我不能(声誉太低),但尝试简化你的代码:

DSolve[{D[y1[t, y2[t]], t] == 3*y1[t, y2[t]],   D[y2[t], t] == 2*y1[t, y2[t]], y1[0, 0] 
== 0, 
y2[0] == 2}, {y1[t, y2[t]], y2[t]}, t]

产生错误

DSolve::ivar2: The independent variable t should not appear in two different arguments of the dependent variable y1[t,y2[t]].

所以,如果我理解你想要的是什么,我不能完全确定你是否可以让Mathematica做你想要的事情。我建议在The Mathematica Stack Exchange询问,因为他们很可能对这些类型的问题更有经验。

© www.soinside.com 2019 - 2024. All rights reserved.