numpy.polynomial.chebyshev.chebinterpolate#
- polynomial.chebyshev.chebinterpolate(func, deg, args=())[原始碼]#
在第一類切比雪夫點插值函數。
傳回在區間 [-1, 1] 中第一類切比雪夫點插值 func 的切比雪夫級數。 如果函數在區間內連續,則插值級數會趨近於 func 的最小最大近似值,並隨著 deg 增加。
- 參數:
- func函數
要近似的函數。 它必須是單一變數的函數形式
f(x, a, b, c...)
,其中a, b, c...
是在 args 參數中傳遞的額外引數。- degint
插值多項式的次數
- argstuple,選用
要在函數呼叫中使用的額外引數。 預設為沒有額外引數。
- 傳回值:
- coefndarray,形狀 (deg + 1,)
從低到高排序的插值級數的切比雪夫係數。
註解
當在第一類切比雪夫點取樣時,用於插值的切比雪夫多項式是正交的。 如果希望約束某些係數,則可以在插值後簡單地將它們設定為所需的值,而無需新的插值或擬合。 如果事先已知某些係數為零,這尤其有用。 例如,如果函數是偶函數,則可以將結果中奇數次項的係數設定為零。
範例
>>> import numpy.polynomial.chebyshev as C >>> C.chebinterpolate(lambda x: np.tanh(x) + 0.5, 8) array([ 5.00000000e-01, 8.11675684e-01, -9.86864911e-17, -5.42457905e-02, -2.71387850e-16, 4.51658839e-03, 2.46716228e-17, -3.79694221e-04, -3.26899002e-16])