Mathematica DSolve具有两个功能

时间:2019-03-17 20:54:06

标签: math wolfram-mathematica differential-equations

我有以下两个微分方程

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

我可以使用Mathematicas DSolve函数求解方程:

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]}

原因是我有实验数据(t上的浓度y和y2),我想拟合y(以及以后的y2)的曲线。感谢您的投入! :-)

1 个答案:

答案 0 :(得分: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提问,因为他们很可能在这类问题上更有经验。