TESTS::¶
-
sage.symbolic.integration.external.
fricas_integrator
(expression, v, a=None, b=None, noPole=True)¶ Integration using FriCAS
EXAMPLES:
sage: from sage.symbolic.integration.external import fricas_integrator # optional - fricas sage: fricas_integrator(sin(x), x) # optional - fricas -cos(x) sage: fricas_integrator(cos(x), x) # optional - fricas sin(x) sage: fricas_integrator(1/(x^2-2), x, 0, 1) # optional - fricas 1/4*sqrt(2)*(log(3*sqrt(2) - 4) - log(sqrt(2))) sage: fricas_integrator(1/(x^2+6), x, -oo, oo) # optional - fricas 1/6*sqrt(6)*pi
-
sage.symbolic.integration.external.
giac_integrator
(expression, v, a=None, b=None)¶ Integration using Giac
EXAMPLES:
sage: from sage.symbolic.integration.external import giac_integrator sage: giac_integrator(sin(x), x) -cos(x) sage: giac_integrator(1/(x^2+6), x, -oo, oo) 1/6*sqrt(6)*pi
-
sage.symbolic.integration.external.
maxima_integrator
(expression, v, a=None, b=None)¶ Integration using Maxima
EXAMPLES:
sage: from sage.symbolic.integration.external import maxima_integrator sage: maxima_integrator(sin(x), x) -cos(x) sage: maxima_integrator(cos(x), x) sin(x) sage: f(x) = function('f')(x) sage: maxima_integrator(f(x), x) integrate(f(x), x)
-
sage.symbolic.integration.external.
mma_free_integrator
(expression, v, a=None, b=None)¶ Integration using Mathematica’s online integrator
EXAMPLES:
sage: from sage.symbolic.integration.external import mma_free_integrator sage: mma_free_integrator(sin(x), x) # optional - internet -cos(x)
A definite integral:
sage: mma_free_integrator(e^(-x), x, a=0, b=oo) # optional - internet 1
-
sage.symbolic.integration.external.
parse_moutput_from_json
(page_data, verbose=False)¶ Return the list of outputs found in the json (with key
'moutput'
)INPUT:
page_data
– json obtained from Wolfram Alphaverbose
– bool (default:False
)
OUTPUT:
list of unicode strings
EXAMPLES:
sage: from sage.symbolic.integration.external import request_wolfram_alpha sage: from sage.symbolic.integration.external import parse_moutput_from_json sage: page_data = request_wolfram_alpha('integrate Sin[x]') # optional internet sage: parse_moutput_from_json(page_data) # optional internet [u'-Cos[x]']
sage: page_data = request_wolfram_alpha('Sin[x]') # optional internet sage: L = parse_moutput_from_json(page_data) # optional internet sage: sorted(L) # optional internet [u'-Cos[x]', u'{{x == Pi C[1], Element[C[1], Integers]}}']
-
sage.symbolic.integration.external.
request_wolfram_alpha
(input, verbose=False)¶ Request Wolfram Alpha website.
INPUT:
input
– stringverbose
– bool (default:False
)
OUTPUT:
json
EXAMPLES:
sage: from sage.symbolic.integration.external import request_wolfram_alpha sage: page_data = request_wolfram_alpha('integrate Sin[x]') # optional internet sage: [str(a) for a in sorted(page_data.keys())] # optional internet ['queryresult'] sage: [str(a) for a in sorted(page_data['queryresult'].keys())] # optional internet ['datatypes', 'encryptedEvaluatedExpression', 'encryptedParsedExpression', 'error', 'host', 'id', 'numpods', 'parsetimedout', 'parsetiming', 'pods', 'recalculate', 'related', 'server', 'sponsorCategories', 'success', 'timedout', 'timedoutpods', 'timing', 'version']
-
sage.symbolic.integration.external.
symbolic_expression_from_mathematica_string
(mexpr)¶ Translate a mathematica string into a symbolic expression
INPUT:
mexpr
– string
OUTPUT:
symbolic expression
EXAMPLES:
sage: from sage.symbolic.integration.external import symbolic_expression_from_mathematica_string sage: symbolic_expression_from_mathematica_string(u'-Cos[x]') -cos(x)
-
sage.symbolic.integration.external.
sympy_integrator
(expression, v, a=None, b=None)¶ Integration using SymPy
EXAMPLES:
sage: from sage.symbolic.integration.external import sympy_integrator sage: sympy_integrator(sin(x), x) -cos(x) sage: sympy_integrator(cos(x), x) sin(x)