是否可以向Maple int添加积分规则?

时间:2018-08-05 02:03:39

标签: maple

我希望Maple为ln(abs(x))返回int(1/x,x)而不是ln(x)

是否有一种使用模式给出规则的方法,以便int可以在Mathematica中使用,因此可以在这种情况下使用?即以某种方式针对上述特定结果覆盖int结果?还是可以设置一些全局选项?

枫树2018.1

1 个答案:

答案 0 :(得分:1)

一种处理方式:

 REALINT2 := proc (f, x) local func, a; 
 func := int(f, x); 
 a := selectfun(func, ln); 
 `assuming`([simplify(eval(func, [seq(a[k] = map(proc (x) options operator, arrow; 
 abs(x) end proc, a[k]), k = 1 .. nops(a))]))], [x in real]) end proc:

 REALINT2(1+1/x, x); 
 REALINT2(1/sin(x), x); 
 REALINT2(x/(x^2+1), x); 
 REALINT2(tan(x), x); 
 REALINT2((diff(f(x), x))/f(x), x); 
 REALINT2(1+1/abs(x), x); 
 `assuming`([REALINT2(1/x, x)], [x < 0])

 #                          x + ln(|x|)
 #                 ln(1 - cos(x)) - ln(|sin(x)|)
 #                          1   / 2    \
 #                          - ln\x  + 1/
 #                          2           
 #                         -ln(|cos(x)|)
 #                           ln(|f(x)|)
 #                     / x - ln(-x)      x < 0
 #                    |                      
 #                    <  undefined       x = 0
 #                    |                      
 #                     \ x + ln(x)       0 < x
 #                             ln(-x)