#python #geometry
Вопрос:
Попытка написать функцию, которая использует правило трапеции для оценки интеграла функции ошибок, где мы хотели бы, чтобы значение функции ошибок и num_traps-это количество трапеций, на которые должен быть разделен интервал интегрирования. Используя численное интегрирование и не импортируя из библиотек. В тестовом коде должно быть выведено: 0,835
import numpy as np
def f(t):
"""The function"""
return np.exp(-t**2)
def trapezium_erf(x, num_traps):
"""Calc error func"""
d_t = x / num_traps
area = 0
for i in range(num_traps):
trap_start = x
trap_end = x d_t
start_height = f(trap_start)
end_height = f(trap_end)
trap_area = ((start_height end_height) / 2) * d_t
area = trap_area
x = x d_t
return (2/np.sqrt(np.pi) * area)
#Test code
x = 1.0
area = trapezium_erf(x, 3)
print(f"{area:.3f}")