如何最小化Maple中的Sum

时间:2013-06-09 13:52:08

标签: maple

我有以下问题 - 我需要尽量减少枫木的总和。例如,假设我有这个:

  

EXPESSION:= A [0] + A [1] + A [2] + A [3] + A [4] + A [5];

我想使用一些功能

  

someFunction(表达式);

将返回Sum的符号(如sum(A [i],i = 0 .. 5));

是否存在某种类似的功能?

2 个答案:

答案 0 :(得分:2)

好吧,我想你需要一些东西来压缩现有的激情。如果您愿意指定summand,index和index范围,那么someFunction可以减去这些术语并添加(未评估的)这些术语的总和。

convert_to_Sum:= (ex, summand, index)->
    simplify(ex - sum(summand, index) + Sum(summand, index))
;

示例:

ex:= A[0]+A[1]+A[2]+A[3]+A[4]+A[5];
convert_to_Sum(ex, A[i], i= 0..5);

答案 1 :(得分:1)

使用Sum(A[i], i= 0..5) 请注意,Sum是大写的。我意识到这不处理表达式已经存在的情况,这可能是你最感兴趣的。