Natija: 4-rasm. Trapetsiya usulida berilgan algoritmda kiritilgan elementlarning oʻlchamlari bilan qadamlarning bogʻliqligi
4-rasmdan koʻrinib turibdiki, trapetsiya usuli O(n) chiziqli murakkablikga ega.
2-usul: Berilgan aniq integralni simpson usulida hisoblash dasturini Python dasturlash tilida tuzamiz.
a = 0 # Integrallash chegarasi
b = 1 # Integrallash chegarasi
n = 100 # boʻlinishlar soni
# 2-USUL SIMPSON
s=[]
r=[]
def simpson_integral(f, a, b, n):
h = (b - a) / n
x = a
sum1 = 0
sum2 = 0
for i in range(1, n):
x += h
r.append(x)
s.append(i)
if i % 2 == 0:
sum1 += f(x)
else:
sum2 += f(x)
integral = (h / 3) * (f(a) + f(b) + 4 * sum1 + 2 * sum2)
return integral
def d(x):
return 1 / (1 + x ** 2)
simpson_integral(d, a, b, n)
plt.plot(r,s)
plt.xlabel('x-kirish elementlarining o\'lchami')
plt.ylabel('y-Qadamlar soni')
plt.title('SIMPSON_usuli O(n) murakkablik ')
plt.show()
Natija: 5-rasm. Simpson usulida berilgan algoritmda kiritilgan elementlarning oʻlchamlari bilan qadamlarning bogʻliqligi
5-rasmdan koʻrinib turibdiki, Simpson usuli O(n) chiziqli murakkablikga ega.
3-usul: Berilgan aniq integralni toʻgʻri toʻrtburchaklar usulida hisoblash dasturini Python dasturlash tilida tuzamiz.
# 2-USUL toʻgʻri toʻrtburchaklar s=[]
r=[]
def turtburchaklar_integral(f, a, b, n):
h = (b - a) / n
integral = 0