在Maxima中从象征性区分到适当区分

时间:2018-11-25 16:35:19

标签: maxima differentiation

我正在努力寻找一种从微分运算符的符号声明转换为其实现的方法

我举一个例子。

F: (10-'diff(x(t),t)^2 -2*x(t)*'diff(x(t),t) -5*x(t)^2)*%e^(-t);

E: ratsimp(diff(F, x(t)) - diff(diff(F, 'diff(x(t),t)), t));

sol: ode2(E, x(t), t);
sol: ev(sol, [%k1 = C1, %k2=C2]);

trans_cond: diff(F, 'diff(x(t), t));
trans_cond: ev(trans_cond, sol);
trans_cond: at(trans_cond, [t=1]);

相应的输出保持符号表示法,而我想评估最后一次替换后获得的diff()。

给出结果:

% 4*C1-C2^(-2)

2 个答案:

答案 0 :(得分:3)

另一种解决方案。 nouns的{​​{1}}选项引起对符号导数以及任何其他名词表达式(如符号积分,符号求和等)的求值。

ev

交互式控制台可以识别较短形式的(%i2) 'diff(4*x^2, x); d 2 (%o2) -- (4 x ) dx (%i3) ev (%o2, nouns); (%o3) 8 x 。您可以改为输入ev(..., nouns)

..., nouns

此处(%i5) %o2, nouns; (%o5) 8 x 应用于符号积分:

ev(..., nouns)

在这里,以符号求和:

(%i6) 'integrate (x^2, x);
                             /
                             [  2
(%o6)                        I x  dx
                             ]
                             /
(%i7) %, nouns;
                                3
                               x
(%o7)                          --
                               3

答案 1 :(得分:0)

找到答案后,ev()带有选项diff,可以解决表达式中的所有符号差异。