Generate a Legendre series with given roots in Python

To generate a Legendre series with specified roots, use the polynomial.legendre.legfromroots() method in Python. This method returns a 1-D array of Legendre polynomial coefficients. If all roots are real, the output is a real array. If some roots are complex, the output is complex even if all resulting coefficients are real.

Syntax

numpy.polynomial.legendre.legfromroots(roots)

Parameters

roots: Array-like sequence containing the roots of the polynomial.

Example

Let's create a Legendre series with roots at -1, 0, and 1 ?

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

# Generate Legendre series with roots at -1, 0, 1
roots = (-1, 0, 1)
coefficients = L.legfromroots(roots)

print("Roots:", roots)
print("Legendre coefficients:", coefficients)
print("Data type:", coefficients.dtype)
print("Shape:", coefficients.shape)
Roots: (-1, 0, 1)
Legendre coefficients: [ 0.  -0.4  0.   0.4]
Data type: float64
Shape: (4,)

Complex Roots Example

When working with complex roots, the output array becomes complex ?

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

# Generate Legendre series with complex roots
complex_roots = (1j, -1j, 2)
coefficients = L.legfromroots(complex_roots)

print("Complex roots:", complex_roots)
print("Legendre coefficients:", coefficients)
print("Data type:", coefficients.dtype)
Complex roots: 1j, -1j, 2)
Legendre coefficients: [ 0.66666667+0.j -0.53333333+0.j  0.        +0.j  0.26666667+0.j]
Data type: complex128

How It Works

The legfromroots() method constructs a Legendre polynomial that has the specified roots. The resulting coefficients represent the polynomial in Legendre basis form, where each coefficient corresponds to a Legendre polynomial term.

Conclusion

Use numpy.polynomial.legendre.legfromroots() to generate Legendre series coefficients from given roots. The method handles both real and complex roots, returning appropriate data types for each case.

Updated on: 2026-03-26T21:03:29+05:30

231 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements