例如,我有符号
1/n*Sum[ee[k] + 1, {k, j, n}]^2
我希望将Sum[ee[k], {k, j+1, n}]
替换为x
。我怎样才能做到这一点?谢谢你的帮助!
答案 0 :(得分:2)
您可以使用总和的递归关系。例如:
f[j] := f[j + 1] + (ee[j] + 1);
1/N f[j]^2 /. f[j + 1] -> x
出
(1 + x + ee[j])^2/N
修改
基于您发布的几个问题,我认为您在某种程度上误解了Replace []命令的作用。它不是基于“代数”的,而是基于“模式”的。它不理解也不使用比已经定义的更多的代数变换(由你或Mma本身)。
例如:
x/. (x-1)->y
不匹配任何东西。但是
(x-1) /. x->y-1
会给你(y-2)因为模式 x匹配。
此外:
x = 3;
(x - 1) /. x -> y - 1
将为您提供 2 ,因为在可能的匹配之前评估x,并且还评估模式中的x(只需粘贴,执行并查看符号颜色)。
答案 1 :(得分:1)
1/N*Sum[ee[k] + 1, {k, j, N}]^2 /. Sum[ee[k] + 1, {k, j, N}] -> x
这不起作用,还是我误解了?顺便说一句,你不应该使用N作为变量。这是Mathematica的功能。