当我用数值求解两个微分方程组时:
s1:=diff(n[Di](t), t)=...;
s2:=diff(n[T](t), t)=...;
ics:={...}; #initial condition.
sys := {s1, s2, ics}:
sol:=dsolve(sys,numeric);
关于“t”,那么“t = 4”的解(例如)是形式,sol(4):
[t=4, n1(t)=const1, n2(t)=const2].
现在,如何在另一个方程式中使用n1(t)和n2(t)的值来表示所有“t”,即“p”,它涉及n1(t)或n2(t)(如:{p = a + n1(t)* n2(t)+ f(t)},其中定义“a”和“f(t)”,并将“p”绘制为“t”的间隔?
答案 0 :(得分:1)
也许一个例子会有所帮助。
s1:=diff(n1(t), t)=sin(t);
s2:=diff(n2(t), t)=cos(t);
ics:={n1(0)=1,n2(0)=0}:
sys := {s1, s2} union ics:
sol:=dsolve(sys,numeric,output=listprocedure);
N1:=eval(n1(t),sol);
N2:=eval(n2(t),sol);
N1(0);
N1(1.1);
N2(0);
N2(1.1);
p := 11.3 + N1*N2 + tan:
plot(p, 0..1.1);
您可以查看DEplot例程,该例程专门用于绘制ode解决方案。