numpy.polynomial.hermite_e.hermeint#
- polynomial.hermite_e.hermeint(c, m=1, k=[], lbnd=0, scl=1, axis=0)[source]#
積分 Hermite_e 級數。
傳回 Hermite_e 級數係數 c,從 lbnd 沿著 axis 積分 m 次的結果。在每次迭代中,產生的級數會乘以 scl,並加入積分常數 k。縮放因子用於變數的線性變換。(「買家請注意」:請注意,根據人們正在執行的操作,人們可能希望 scl 是人們可能預期的倒數;如需更多資訊,請參閱下方的「注意事項」章節。)引數 c 是沿每個軸從低到高次數的係數陣列,例如,[1,2,3] 代表級數
H_0 + 2*H_1 + 3*H_2
,而 [[1,2],[1,2]] 代表1*H_0(x)*H_0(y) + 1*H_1(x)*H_0(y) + 2*H_0(x)*H_1(y) + 2*H_1(x)*H_1(y)
,如果 axis=0 是x
且 axis=1 是y
。- 參數:
- carray_like
Hermite_e 級數係數的陣列。如果 c 是多維的,則不同的軸對應於不同的變數,且每個軸中的次數由對應的索引給定。
- mint, optional
積分的階數,必須為正數。(預設值:1)
- k{[], list, scalar}, optional
積分常數。在
lbnd
處的第一個積分值是列表中的第一個值,在lbnd
處的第二個積分值是第二個值,依此類推。如果k == []
(預設值),則所有常數都設定為零。如果m == 1
,則可以給定單一純量而不是列表。- lbndscalar, optional
積分的下界。(預設值:0)
- sclscalar, optional
在每次積分之後,結果會先乘以 scl,然後再加入積分常數。(預設值:1)
- axisint, optional
積分所沿的軸。(預設值:0)。
- 傳回值:
- Sndarray
積分的 Hermite_e 級數係數。
- 引發:
- ValueError
如果
m < 0
、len(k) > m
、np.ndim(lbnd) != 0
或np.ndim(scl) != 0
。
另請參閱
注意事項
請注意,每次積分的結果都會乘以 scl。為什麼需要注意這一點?假設人們正在對相對於 x 的積分進行變數的線性變換 \(u = ax + b\)。那麼 \(dx = du/a\),因此人們需要將 scl 設定為等於 \(1/a\) - 也許不是人們一開始會想到的。
另請注意,一般而言,積分 C 級數的結果需要「重新投影」到 C 級數基底集合上。因此,通常,此函數的結果是「違反直覺的」,但卻是正確的;請參閱下方的「範例」章節。
範例
>>> from numpy.polynomial.hermite_e import hermeint >>> hermeint([1, 2, 3]) # integrate once, value 0 at 0. array([1., 1., 1., 1.]) >>> hermeint([1, 2, 3], m=2) # integrate twice, value & deriv 0 at 0 array([-0.25 , 1. , 0.5 , 0.33333333, 0.25 ]) # may vary >>> hermeint([1, 2, 3], k=1) # integrate once, value 1 at 0. array([2., 1., 1., 1.]) >>> hermeint([1, 2, 3], lbnd=-1) # integrate once, value 0 at -1 array([-1., 1., 1., 1.]) >>> hermeint([1, 2, 3], m=2, k=[1, 2], lbnd=-1) array([ 1.83333333, 0. , 0.5 , 0.33333333, 0.25 ]) # may vary