scipy.interpolate.BSpline.integrate¶
- BSpline.integrate(a, b, extrapolate=None)[源代码]¶
计算样条的定积分。
- 参数
- a浮动
积分下限。
- b浮动
积分上限。
- extrapolate布尔值或‘周期性’,可选
是否在基准间隔之外进行外推,
t[k] .. t[-k-1]
,或者将样条取为基准区间之外的零。如果为‘PERIONAL’,则使用周期性外推。如果无(默认值),请使用 self.extrapolate 。
- 退货
- Iarray_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)
如果积分限制在基本间隔之外,则结果由 extrapolate 参数
>>> 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()