将方程列表替换为表达式

时间:2017-12-07 17:00:15

标签: substitution maxima

在以下玩具问题中,我想评估j(fxxx),但考虑到a,b,c生成的solve的实际数字,有没有办法做到这一点?根据文档有subst但它需要三个参数(要替换的变量,值和表达式)。

display2d:false;
i(f) := integrate(f(x),x,0,1);
j(f) := a*f(0)+b*f(1/2)+c*f(1);
f1(x) := 1;
fx(x) := x;
fxx(x) := x^2;
fxxx(x) := x^3;
print(solve([i(f1) = j(f1), i(fx) = j(fx), i(fxx) = j(fxx)],[a,b,c]));

Try it online!

1 个答案:

答案 0 :(得分:2)

实际上我应该已经阅读了文档,我们实际上仍然可以使用subst

i(f) := integrate(f(x),x,0,1);
j(f) := a*f(0)+b*f(1/2)+c*f(1);
f1(x) := 1;
fx(x) := x;
fxx(x) := x^2;
fxxx(x) := x^3;
jj(g) := subst(solve([i(f1) = j(f1), i(fx) = j(fx), i(fxx) = j(fxx)],[a,b,c]),j(g));
print(jj(g));
print(jj(fxxx)-i(fxxx));

Try it online!