本文簡要介紹 python 語言中 scipy.interpolate.BPoly
的用法。
用法:
class scipy.interpolate.BPoly(c, x, extrapolate=None, axis=0)#
就係數和斷點而言的分段多項式。
x[i]
和x[i + 1]
之間的多項式寫在 Bernstein 多項式基中:S = sum(c[a, i] * b(a, k; x) for a in range(k+1)),
其中
k
是多項式的次數,並且:b(a, k; x) = binom(k, a) * t**a * (1 - t)**(k - a),
其中
t = (x - x[i]) / (x[i+1] - x[i])
和binom
是二項式係數。- c: ndarray,形狀(k,m,...)
多項式係數,階 k 和 m 區間
- x: ndarray,形狀(m + 1,)
多項式斷點。必須按升序或降序排序。
- extrapolate: 布爾型,可選
如果是布爾值,則確定是根據第一個和最後一個間隔外推到越界點,還是返回 NaN。如果‘periodic’,使用周期性外推。默認為真。
- axis: 整數,可選
插值軸。默認為零。
參數 ::
注意:
伯恩斯坦多項式的性質在文獻中有很好的記載,例如參見 [1] [2] [3]。
參考:
[2]Kenneth I. Joy,伯恩斯坦多項式,http://www.idav.ucdavis.edu/education/CAGDNotes/Bernstein-Polynomials.pdf
[3]E. H. Doha、A. H. Bhrawy 和 M. A. Saker,邊界值問題,2011 年卷,文章 ID 829546,DOI:10.1155/2011/829543。
例子:
>>> from scipy.interpolate import BPoly >>> x = [0, 1] >>> c = [[1], [2], [3]] >>> bp = BPoly(c, x)
這將創建一個二階多項式
- x: ndarray
斷點。
- c: ndarray
多項式的係數。它們被重新整形為一個 3-D 數組,最後一個維度表示原始係數數組的尾隨維度。
- axis: int
插值軸。
屬性 ::
相關用法
- Python SciPy interpolate.BSpline用法及代碼示例
- Python SciPy interpolate.BarycentricInterpolator用法及代碼示例
- Python SciPy interpolate.make_interp_spline用法及代碼示例
- Python SciPy interpolate.krogh_interpolate用法及代碼示例
- Python SciPy interpolate.InterpolatedUnivariateSpline用法及代碼示例
- Python SciPy interpolate.LSQSphereBivariateSpline用法及代碼示例
- Python SciPy interpolate.griddata用法及代碼示例
- Python SciPy interpolate.splder用法及代碼示例
- Python SciPy interpolate.LinearNDInterpolator用法及代碼示例
- Python SciPy interpolate.PPoly用法及代碼示例
- Python SciPy interpolate.NdBSpline用法及代碼示例
- Python SciPy interpolate.pade用法及代碼示例
- Python SciPy interpolate.barycentric_interpolate用法及代碼示例
- Python SciPy interpolate.RegularGridInterpolator用法及代碼示例
- Python SciPy interpolate.NdPPoly用法及代碼示例
- Python SciPy interpolate.interp2d用法及代碼示例
- Python SciPy interpolate.approximate_taylor_polynomial用法及代碼示例
- Python SciPy interpolate.RectSphereBivariateSpline用法及代碼示例
- Python SciPy interpolate.sproot用法及代碼示例
- Python SciPy interpolate.splantider用法及代碼示例
- Python SciPy interpolate.CloughTocher2DInterpolator用法及代碼示例
- Python SciPy interpolate.interp1d用法及代碼示例
- Python SciPy interpolate.splrep用法及代碼示例
- Python SciPy interpolate.make_smoothing_spline用法及代碼示例
- Python SciPy interpolate.Rbf用法及代碼示例
注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.interpolate.BPoly。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。