Как я могу сделать двойную сумму Реймана с одним лимитом извлечения в python - PullRequest
1 голос
/ 28 мая 2020

Я пытаюсь сделать двойную сумму Реймана с пределом b = (x ^ 2 + y ^ 2 = 16), проблема в том, что когда я использую Sympy и помечаю как TypeError в столбце линейного пространства, я пробовал чтобы проверить работу системы, но ничего не работает, я делаю что-то не так или мне нужно что-то изменить?

import numpy as np
import matplotlib.pyplot as plt
import sympy

#  function to integrate = x +3*y + 1
# Limit funtion 'b' =(x^2 + y^2 = 16)
Width=15; Length=20;

x = sympy.Symbol('x')
a = 0
b =(sympy.sqrt(16-x**2))
c = 0
d = 3
#Heigth of x
deltax= (b - a) / Width
#Heigth of y
deltay = (d - c) / Length


#Area of each square
dA = deltax * deltay


x = np.linspace((a, b - deltax, Width));
y = np.linspace((c, d - deltay, Length));


f = lambda x,y: x +3*y + 1

[X, Y] = np.meshgrid(x, y);
#reimann sum
Suma=sum(dA * f(X, Y))
Suma = sum(Suma)

int(Suma)

print(Suma)
...