sage: f(x) = sin(x)^2/x^2
sage: f.integral(x, -50000, 50000).n()
-0.0000200000071537570
sage: f.integral(x, -5000000, 5000000).n()
-2.00000008410959e-7
sage: f.integral(x, -500000000, 500000000).n()
-2.00000000109169e-9
The answer seems to get smaller and smaller as the bounds get farther
apart.
If the bounds get very far apart, something interesting happens:
sage: f.integral(x, -1000000000000000,
1000000000000000)
x |--> -I*gamma(-1, -2000000000000000*I) + I*gamma(-1,
2000000000000000*I) - 1/1000000000000000
I think this has to do with the way sage evaluates an integral. If you
interrupt while it's evaluating, this appears
sage: f.integral(x, -500000001, 500000000).n()
^C---------------------------------------------------------------------------
KeyboardInterrupt Traceback (most recent call
last)
/home/andrew/sage-4.8/<ipython console> in <module>()
/home/andrew/sage-4.8/local/lib/python2.6/site-packages/sage/symbolic/expression.so in sage.symbolic.expression.Expression._numerical_approx (sage/symbolic/expression.cpp:18004)()
/home/andrew/sage-4.8/local/lib/python2.6/site-packages/sage/symbolic/expression.so in sage.symbolic.expression.Expression._convert (sage/symbolic/expression.cpp:5089)()
/home/andrew/sage-4.8/local/lib/python2.6/site-packages/sage/functions/other.pyc in _evalf_(self, x, y, parent)
719 """
720 try:
--> 721 return x.gamma_inc(y)
722 except AttributeError:
723 if not (is_ComplexNumber(x)):
/home/andrew/sage-4.8/local/lib/python2.6/site-packages/sage/rings/complex_number.so in sage.rings.complex_number.ComplexNumber.gamma_inc (sage/rings/complex_number.c:12096)()
/home/andrew/sage-4.8/local/lib/python2.6/site-packages/sage/libs/pari/gen.so in sage.libs.pari.gen.gen.incgam (sage/libs/pari/gen.c:19395)()
I have no idea what this means, so maybe someone with more experience
could more accurately diagnose the results.
Cheers!
sage: f(x) = sin(x)^2/x^2
Cheers!