Wolfram mathematica 用Mathematica解这个微分方程

Wolfram mathematica 用Mathematica解这个微分方程,wolfram-mathematica,differential-equations,Wolfram Mathematica,Differential Equations,我想用以下形式的微分方程来描述化学反应动力学和我对反应模型结果(简化)的想法: y1'(t)=y1(t)+y2(t) 式中,y1为实验测得的反应物浓度,y2为随时间变化的产物浓度。微分方程具有以下边界条件: y1(0) = A y2(0) = 0 现在我无法独自求解方程,因此,我尝试使用Mathematica,但在应用第二个边界条件时,我总是会出错: In: DSolve[{y'[t] == k*y[t] + k2*y2[t], y[0] == A, y2[0] == 0}, y[t],

我想用以下形式的微分方程来描述化学反应动力学和我对反应模型结果(简化)的想法:

y1'(t)=y1(t)+y2(t)
式中,y1为实验测得的反应物浓度,y2为随时间变化的产物浓度。微分方程具有以下边界条件:

y1(0) = A
y2(0) = 0
现在我无法独自求解方程,因此,我尝试使用Mathematica,但在应用第二个边界条件时,我总是会出错:

In:  DSolve[{y'[t] == k*y[t] + k2*y2[t], y[0] == A, y2[0] == 0}, y[t], t]
Out: DSolve::deqx: Supplied equations are not differential equations of the given functions.
这是否意味着这个微分方程没有解析解?有人有主意吗

提前谢谢

致意
Manuel

你只有一个方程来解联立方程

例如,这项工作:-

vars = {x[t], y[t]};
eqns = {x'[t] == y[t], y'[t] == x[t]};
inits = {x[0] == 1, y[0] == 0};
DSolve[eqns, vars, t] // Simplify
sol = vars /. DSolve[Join[eqns, inits], vars, t][[1]]
Plot[sol, {t, 0, 2}]
但是你的联立方程还没有确定

vars = {y[t], y2[t]};
eqns = {y'[t] == k*y[t] + k2*y2[t]};
inits = {y[0] == A, y2[0] == 0};
DSolve[eqns, vars, t] // Simplify
DSolve:因变量比方程多,因此系统未充分确定

vars = {y[t], y2[t]};
eqns = {y'[t] == k*y[t] + k2*y2[t]};
inits = {y[0] == A, y2[0] == 0};
DSolve[eqns, vars, t] // Simplify

只有一个方程可以解联立方程

例如,这项工作:-

vars = {x[t], y[t]};
eqns = {x'[t] == y[t], y'[t] == x[t]};
inits = {x[0] == 1, y[0] == 0};
DSolve[eqns, vars, t] // Simplify
sol = vars /. DSolve[Join[eqns, inits], vars, t][[1]]
Plot[sol, {t, 0, 2}]
但是你的联立方程还没有确定

vars = {y[t], y2[t]};
eqns = {y'[t] == k*y[t] + k2*y2[t]};
inits = {y[0] == A, y2[0] == 0};
DSolve[eqns, vars, t] // Simplify
DSolve:因变量比方程多,因此系统未充分确定

vars = {y[t], y2[t]};
eqns = {y'[t] == k*y[t] + k2*y2[t]};
inits = {y[0] == A, y2[0] == 0};
DSolve[eqns, vars, t] // Simplify

谢谢你的解释!谢谢你的解释!