Wolfram mathematica Mathematica中计算特定x值的y值的语法
以下是问题陈述: 使用NDSolve求解两个非线性相互依赖的初值一阶微分方程,得到解析解。该解用于计算另一个参数,作为相同x值的函数 假设我们的颂歌是:Wolfram mathematica Mathematica中计算特定x值的y值的语法,wolfram-mathematica,Wolfram Mathematica,以下是问题陈述: 使用NDSolve求解两个非线性相互依赖的初值一阶微分方程,得到解析解。该解用于计算另一个参数,作为相同x值的函数 假设我们的颂歌是: X'[t]=a*S[t]*X[t]/(b+S[t] S'[t]=-a*S[t]*X[t]/(c(b+S[t])) where a,b,c are also known constants X[0]=constant S[0]=constant soln = NDSolve[{X'[t]=a*S[t]*X[t]/(b+S[t],S'[t]=-a
X'[t]=a*S[t]*X[t]/(b+S[t]
S'[t]=-a*S[t]*X[t]/(c(b+S[t])) where a,b,c are also known constants
X[0]=constant
S[0]=constant
soln = NDSolve[{X'[t]=a*S[t]*X[t]/(b+S[t],S'[t]=-a*S[t]*X[t]/(c(b+S[t])),X[0]=constant,S[0]=constant},{X,S},{t,0,50}]
The solution is of the form
X-> InterpolatingFunction[{{0.0,50}},<>],S->InterpolationFunction[{{0.0,50}},<>}}
Now the new parameter is: Yvalue=(S[t]/.soln)+(X[t]/.soln)
X'[t]=a*S[t]*X[t]/(b+S[t]
S'[t]=-a*S[t]*X[t]/(c(b+S[t]),其中a、b、c也是已知常数
X[0]=常数
S[0]=常数
soln=NDSolve[{X'[t]=a*S[t]*X[t]/(b+S[t],S'[t]=-a*S[t]*X[t]/(c(b+S[t]),X[0]=常数,S[0]=常数},{X,S},{t,0,50}]
解决方案的形式如下
X->插值函数[{0.0,50},],S->插值函数[{0.0,50},}
现在新参数是:Yvalue=(S[t]/.soln)+(X[t]/.soln)
我试图找出正确的语法来为输入的t值计算Yvalue。
Ex-需要计算t=0.1、0.56、2.3等时的Y值
谢谢你抽出时间
问候,,
AnkurNDSolve要求所有参数都指定特定的数值。如果您将值分配给a、b、c、X[0]、S[0],并仔细匹配所有参数,并仔细正确使用==vs=,则这可以工作
In[1]:= a = 2; b = 3; c = 5;
soln = NDSolve[{X'[t] == a*S[t]*X[t]/(b + S[t]),
S'[t] == -a*S[t]*X[t]/(c(b+S[t])), X[0]==7, S[0]==11}, {X,S}, {t,0,50}][[1]]
Out[2]= {X -> InterpolatingFunction[{{0.,50.}}, <>],
S -> InterpolatingFunction[{{0.,50.}}, <>]}
In[3]:= Yvalue = S[t] + X[t] /. soln /. t -> 0.1
Out[3]= 18.9506
In[4]:= Yvalue = S[t] + X[t] /. soln /. t -> 0.56
Out[4]= 25.6919
In[5]:= Yvalue = S[t] + X[t] /. soln /. t -> 2.3
Out[5]= 61.9823
In[6]:= Plot[S[t] + X[t] /. soln, {t, 0, 50}, PlotRange -> {0, 70}]
Out[6]= ...PlotSnipped...