scipy.interpolate.BSpline.
интегрировать#
- BSpline.интегрировать(a, b, экстраполяция=None)[источник]#
Вычислить определённый интеграл сплайна.
- Параметры:
- afloat
Нижний предел интегрирования.
- bfloat
Верхний предел интегрирования.
- экстраполяцияbool или 'periodic', опционально
следует ли экстраполировать за пределы базового интервала,
t[k] .. t[-k-1], или принять сплайн равным нулю вне базового интервала. Если 'periodic', используется периодическая экстраполяция. Если None (по умолчанию), используется self.extrapolate.
- Возвращает:
- Яarray_like
Определенный интеграл сплайна на интервале
[a, b].
Примеры
Построить линейный сплайн
x if x < 1 else 2 - xна базовом интервале \([0, 2]\), и проинтегрировать его>>> from scipy.interpolate import BSpline >>> b = BSpline.basis_element([0, 1, 2]) >>> b.integrate(0, 1) array(0.5)
Если пределы интегрирования находятся вне базового интервала, результат контролируется экстраполяция параметр
>>> b.integrate(-1, 1) array(0.0) >>> b.integrate(-1, 1, extrapolate=False) array(0.5)
>>> import matplotlib.pyplot as plt >>> fig, ax = plt.subplots() >>> ax.grid(True) >>> ax.axvline(0, c='r', lw=5, alpha=0.5) # base interval >>> ax.axvline(2, c='r', lw=5, alpha=0.5) >>> xx = [-1, 1, 2] >>> ax.plot(xx, b(xx)) >>> plt.show()