Maxima:集成包含数组项的 `charfun`

Maxima: integration of `charfun` containing array items

如果我运行下面的代码

q: charfun(x>a);
assume(a<b);
integrate(q,x,a,b);

Maxima 能够计算积分值,即 b-a,但如果我 运行 使用索引数组 x[i] 和 [=14= 中的项目进行相同的计算] 代替 ab,如下所示,

q: charfun(x>x[i]);
assume(x[i]<x[i+1]);
integrate(q,x,x[i],x[i+1]);

Maxima 无法执行符号计算,returns

而不是 x[i+1]-x[i]。有没有办法让Maxima计算积分?

嗯,我认为 Maxima 对积分变量 x 也出现在积分极限中感到困惑。如果您将积分变量更改为其他变量,我认为您会得到预期的结果。

q: charfun(u>x[i]);
assume(x[i]<x[i+1]);
integrate(q,u,x[i],x[i+1]);

产量 x[i+1]-x[i].