numpy.polynomial.chebyshev.chebint(c,m=1,k=[],lbnd=0,scl=1,axis=0)[source]¶Integrate a Chebyshev series.
Returns the Chebyshev series coefficientsc integratedm times fromlbnd alongaxis. At each iteration the resulting series ismultiplied byscl and an integration constant,k, is added.The scaling factor is for use in a linear change of variable. (“Buyerbeware”: note that, depending on what one is doing, one may wantsclto be the reciprocal of what one might expect; for more information,see the Notes section below.) The argumentc is an array ofcoefficients from low to high degree along each axis, e.g., [1,2,3]represents the seriesT_0+2*T_1+3*T_2 while [[1,2],[1,2]]represents1*T_0(x)*T_0(y)+1*T_1(x)*T_0(y)+2*T_0(x)*T_1(y)+2*T_1(x)*T_1(y) if axis=0 isx and axis=1 isy.
| Parameters: | c : array_like
m : int, optional
k : {[], list, scalar}, optional
lbnd : scalar, optional
scl : scalar, optional
axis : int, optional
|
|---|---|
| Returns: | S : ndarray
|
| Raises: | ValueError
|
See also
Notes
Note that the result of each integration ismultiplied byscl.Why is this important to note? Say one is making a linear change ofvariable
in an integral relative tox. Then.. math::dx = du/a, so one will need to setscl equal to
- perhaps not what one would have first thought.
Also note that, in general, the result of integrating a C-series needsto be “reprojected” onto the C-series basis set. Thus, typically,the result of this function is “unintuitive,” albeit correct; seeExamples section below.
Examples
>>>fromnumpy.polynomialimportchebyshevasC>>>c=(1,2,3)>>>C.chebint(c)array([ 0.5, -0.5, 0.5, 0.5])>>>C.chebint(c,3)array([ 0.03125 , -0.1875 , 0.04166667, -0.05208333, 0.01041667, 0.00625 ])>>>C.chebint(c,k=3)array([ 3.5, -0.5, 0.5, 0.5])>>>C.chebint(c,lbnd=-2)array([ 8.5, -0.5, 0.5, 0.5])>>>C.chebint(c,scl=-2)array([-1., 1., -1., -1.])