0

在 Maple 中,如果我们想在下面的表达式中将函数 f(x) 替换为 f(x)+a*f1(x),我们可以这样做

expr:=f(x)+diff(f(x),x);
subs(f(x)=f(x)+a*f1(x),expr);

但是,如果我们想在这个表达式中进行相同的替换

expr:=f(x)+D(V)(f(x))+D(f)(x);

D(f)(x) 项不会改变。是否有一种方便的方法可以在涉及 D(f)(x) 或更高级导数的表达式中进行替换?

4

1 回答 1

1

以下两种方式中的第一种可能更符合您的要求。第二种方法包含一个修复,强制它a是恒定的x(即a(x)不依赖于x)。

expr:=f(x)+D(V)(f(x))+D(f)(x);

              f(x) + D(V)(f(x)) + D(f)(x)

eval( expr, f=(t->f(t)+a*f1(t)) );

      f(x) + a f1(x) + D(V)(f(x) + a f1(x)) + D(f)(x) + a D(f1)(x)

eval( eval(expr,f=f+a*f1), [D(a)(x)=0, a(x)=a] );

      f(x) + a f1(x) + D(V)(f(x) + a f1(x)) + D(f)(x) + a D(f1)(x)
于 2013-01-24T03:32:53.940 回答