小编Gar*_*eth的帖子

TransformationFunctions接受数值

我希望改变表达式的形式

r^{-1-n} a^n
Run Code Online (Sandbox Code Playgroud)

结合Mathematica的权力给予

[(a/r)^n] / r.
Run Code Online (Sandbox Code Playgroud)

为此,我编写了这个TransformationFunction

PowerReduce[Times[Power[a_, -1 - b_], Power[c_, b_]]] := Power[a, -1] Power[c/a, b]
Run Code Online (Sandbox Code Playgroud)

这适用于这样的例子

Simplify[Power[r, -1 - n] Power[a, n], TransformationFunctions -> PowerReduce]
Run Code Online (Sandbox Code Playgroud)

但如果我使用数值,则会失败,例如r=2:

Simplify[ Power[2, -1 - n] Power[a, n], TransformationFunctions -> PowerReduce]
Run Code Online (Sandbox Code Playgroud)

其他TransformFunction似乎与数值一起使用.例如,以下适用于数值和代数值.

MultAllVals[Power[a_, b_]] := a b
Simplify[ Power[2, -1 - n] Power[a, n], TransformationFunctions -> MultAllVals]
Run Code Online (Sandbox Code Playgroud)

我怎样才能让Mathematica将n一起的权力分组到一个Power []?

wolfram-mathematica

2
推荐指数
1
解决办法
206
查看次数

标签 统计

wolfram-mathematica ×1