我试图用函数替换一些表达式,但有些术语没有改变。输入:
b + 2 *a /。(b*m_ + a*n_) :> chi[m, n]
出去
2 a + b
但如果不是 1 我放 3*b
3 * b + 2 * a /。(b*m_ + a*n_) :> chi[m, n]
输出是正确的
志[3, 2]
诡异的
如果我写 1.*b 效果会更好
(1.*b + 2 *a) /. (b*m_ + a*n_) :> chi[m, n]
出去
智[1., 2]
必须做什么样的假设才能避免提出这一点?是的,最简单的方法是从模式中消除 1,但在这个例子中,我简化了太多只是为了解决问题。我的情况是如何写出大约五十个这样的形式的总和
Sqrt[Pi] V (m*b^2+n*a^2)^(-3/2),
其中 m 和 n 是整数和 b,a,V 常数