0

经过一些复杂的集成后,maple 给出了在不同变量域上定义的解决方案列表。我只需要选择其中之一。域是如此复杂以至于assuming没有帮助:maple 内存不足,试图弄清楚这些假设如何与他找到的域相对应。但是,很明显,我需要哪种解决方案。

在 Maple 中是否可以通过其数量以某种方式提取解决方案,或者只是删除未定义的解决方案,使 Maple 忘记定义它的域?

PS 这个解决方案很难复制粘贴,因为它很长。

UPD最小工作示例:

> sln := int(1/x, x=a..b,AllSolutions):
> value(sln) assuming a>0, b>0;
    { -ln(a) + ln(b)        a < b
    {
    {       0               b = a
    {
    { -ln(a) + ln(b)        b < a

在这个特殊的例子中添加assuming a<b会有所帮助,但我想ln(b)-ln(a)直接得到。

4

1 回答 1

1

看看convert。它可以将您的分段系统转换为数组。

> sln := int(1/x, x=a..b,AllSolutions):
> s:=value(sln) assuming a>0, b>0;

                       { -ln(a) + ln(b)        a < b
                       {
                  s := {       0               b = a
                       {
                       { -ln(a) + ln(b)        b < a

> conv:=convert(s,list);

   conv := [a < b, -ln(a) + ln(b), b = a, 0, b < a, -ln(a) + ln(b)]

> conv[2];

                            -ln(a) + ln(b)

您可以通过在数组中提供正确的(偶数)索引或通过匹配您想要的部分的奇数(然后选择相应的偶数)来选择您最喜欢的部分。

于 2012-12-17T15:16:08.393 回答