Differentiate a Legendre series in Python

To differentiate a Legendre series in Python, use the legendre.legder() method from NumPy's polynomial module. This function returns the Legendre series coefficients differentiated m times along the specified axis.

Syntax

numpy.polynomial.legendre.legder(c, m=1, scl=1, axis=0)

Parameters

The function accepts the following parameters ?

  • c ? Array of Legendre series coefficients. For multidimensional arrays, different axes correspond to different variables
  • m ? Number of derivatives taken (must be non-negative, default: 1)
  • scl ? Scalar multiplier applied at each differentiation step (default: 1)
  • axis ? Axis over which the derivative is taken (default: 0)

Basic Example

Let's start with a simple differentiation of a Legendre series ?

import numpy as np
from numpy.polynomial import legendre as L

# Create an array of coefficients
coefficients = np.array([1, 2, 3, 4])
print("Original coefficients:", coefficients)

# Differentiate the Legendre series
result = L.legder(coefficients)
print("After differentiation:", result)
Original coefficients: [1 2 3 4]
After differentiation: [ 6.  9. 20.]

Multiple Derivatives

You can take higher-order derivatives by specifying the m parameter ?

import numpy as np
from numpy.polynomial import legendre as L

coefficients = np.array([1, 2, 3, 4, 5])

# First derivative
first_deriv = L.legder(coefficients, m=1)
print("First derivative:", first_deriv)

# Second derivative
second_deriv = L.legder(coefficients, m=2)
print("Second derivative:", second_deriv)
First derivative: [ 6.  9. 20. 35.]
Second derivative: [18. 60. 140.]

Using Scale Factor

The scale factor multiplies each differentiation step, useful for variable transformations ?

import numpy as np
from numpy.polynomial import legendre as L

coefficients = np.array([1, 2, 3, 4])

# Differentiate with scale factor
scaled_result = L.legder(coefficients, scl=2)
print("With scale factor 2:", scaled_result)

# Compare with normal differentiation
normal_result = L.legder(coefficients)
print("Normal differentiation:", normal_result)
With scale factor 2: [12. 18. 40.]
Normal differentiation: [ 6.  9. 20.]

How It Works

The Legendre polynomial differentiation follows the mathematical relationship where the derivative of a Legendre series involves specific recurrence relations. Each coefficient in the result corresponds to the derivative of the corresponding Legendre basis function.

Legendre Series Differentiation Original: c? + c?P?(x) + c?P?(x) + c?P?(x) ? Derivative: d?P?(x) + d?P?(x) + d?P?(x) where d? are computed using Legendre recurrence relations

Conclusion

The legendre.legder() function provides an efficient way to differentiate Legendre series in Python. Use the m parameter for higher-order derivatives and scl for scaling transformations. This is essential for solving differential equations and numerical analysis involving Legendre polynomials.

Updated on: 2026-03-26T20:47:49+05:30

228 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements