1 | initial version |
Double integration is working. If you would like a numeric approximation you can call the n
function with your last integral as an argument. See code below (modified from above).
from sage.plot.plot3d.shapes import Box
x,y = var('x,y')
@interact
def interplay(function= input_box(sin(x*y)),lower_x_bound= input_box(0),upper_x_bound = input_box(1),lower_y_bound=input_box(0),upper_y_bound=input_box(1),dydx = checkbox(default = False)):
if dydx==False :
prev = integral(function,x,lower_x_bound,upper_x_bound)
result = n(integral(prev,y,lower_y_bound,upper_y_bound))
q ="$\int_%s^{%s} \int_%s^%s %s \,dx\,dy = %s $" % (lower_y_bound, upper_y_bound,lower_x_bound,upper_x_bound,function,result)
else:
result = n(integral(integral(function,y,lower_y_bound,upper_y_bound),x,lower_x_bound,upper_x_bound))
q = "$\int_%s^{%s} \int_%s^%s %s \,dy\,dx = %s $" % (lower_x_bound,upper_x_bound,lower_y_bound,upper_y_bound,function,result)
html("%s" %q)
I think there was a typo in your original code. You integrate twice wrt y when dydx is True
.