bundles / numpy latest / numpy / polynomial / legendre / legint
function
numpy.polynomial.legendre:legint
source: build-install/usr/lib/python3.14/site-packages/numpy/polynomial/legendre.py :702
Signature
def legint ( c , m = 1 , k = [] , lbnd = 0 , scl = 1 , axis = 0 ) Summary
Integrate a Legendre series.
Extended Summary
Returns the Legendre series coefficients c integrated m times from lbnd along axis. At each iteration the resulting series is multiplied by scl and an integration constant, k, is added. The scaling factor is for use in a linear change of variable. ("Buyer beware": note that, depending on what one is doing, one may want scl to be the reciprocal of what one might expect; for more information, see the Notes section below.) The argument c is an array of coefficients from low to high degree along each axis, e.g., [1,2,3] represents the series L_0 + 2*L_1 + 3*L_2 while [[1,2],[1,2]] represents 1*L_0(x)*L_0(y) + 1*L_1(x)*L_0(y) + 2*L_0(x)*L_1(y) + 2*L_1(x)*L_1(y) if axis=0 is x and axis=1 is y.
Parameters
c: array_likeArray of Legendre series coefficients. If c is multidimensional the different axis correspond to different variables with the degree in each axis given by the corresponding index.
m: int, optionalOrder of integration, must be positive. (Default: 1)
k: {[], list, scalar}, optionalIntegration constant(s). The value of the first integral at
lbndis the first value in the list, the value of the second integral atlbndis the second value, etc. Ifk == [](the default), all constants are set to zero. Ifm == 1, a single scalar can be given instead of a list.lbnd: scalar, optionalThe lower bound of the integral. (Default: 0)
scl: scalar, optionalFollowing each integration the result is multiplied by
sclbefore the integration constant is added. (Default: 1)axis: int, optionalAxis over which the integral is taken. (Default: 0).
Returns
S: ndarrayLegendre series coefficient array of the integral.
Raises
: ValueErrorIf
m < 0,len(k) > m,np.ndim(lbnd) != 0, ornp.ndim(scl) != 0.
Notes
Note that the result of each integration is multiplied by scl. Why is this important to note? Say one is making a linear change of variable in an integral relative to x. Then , so one will need to set scl equal to - perhaps not what one would have first thought.
Also note that, in general, the result of integrating a C-series needs to be "reprojected" onto the C-series basis set. Thus, typically, the result of this function is "unintuitive," albeit correct; see Examples section below.
Examples
from numpy.polynomial import legendre as L c = (1,2,3)✓
L.legint(c) L.legint(c, 3) L.legint(c, k=3) L.legint(c, lbnd=-2) L.legint(c, scl=2)✗
See also
Aliases
-
numpy.polynomial.Legendre._int -
numpy.polynomial.legendre.legint