ASKSAGE: Sage Q&A Forum - RSS feedhttps://ask.sagemath.org/questions/Q&A Forum for SageenCopyright Sage, 2010. Some rights reserved under creative commons license.Sat, 13 Feb 2021 10:59:07 +0100Multivariable numerical-symbolic integrationhttps://ask.sagemath.org/question/55689/multivariable-numerical-symbolic-integration/I need to find the symbolic expression of a multivariable integral. The real integrand contains 11 variables (I have to integrate "only" four of them) so example code is simplified here:
x, y, z = var('x','y','z')
integrand = sin(x)*cos(y)*z
result = integrand.integral(x, 0, pi).integral(z, 0, 1)
It works just fine generally but given the complexity of the integral no algorithm gives me a result and it returns just:
integrate(integrate(sin(x)*cos(y), x, 0, pi), z, 0, 1)
Is there a built in way to numerically evaluate an integral on some variables that returns symbolic result with the numerical integration found coefficients (or constants)? Namely, in this case:
cos(y)
EDIT1: I managed to get a very very simple example of the function I need:
def numsym_integral( f, variable, a, b, points = 1000):
dx = (b-a)/points
result = 0
for i in range(0,points):
result = result + f.substitute({variable:a + i*dx}) * dx
return result
It still doesn't work though in my specific case because of the complexity of the expression. I get the number of terms gets multiplied by "points" per integration, leading to something too big. Could something built in be more efficient?MateCheckSat, 13 Feb 2021 10:59:07 +0100https://ask.sagemath.org/question/55689/