Generate a Vandermonde matrix of the Legendre series in Python

PythonNumpyServer Side ProgrammingProgramming

To generate a pseudo Vandermonde matrix of the Legendre polynomial, use the polynomial.legvander() method in Python Numpy

The method returns the pseudo-Vandermonde matrix. The shape of the returned matrix is x.shape + (deg + 1,), where The last index is the degree of the corresponding Legendre polynomial. The dtype will be the same as the converted x.

The parameter, x returns an Array of points. The dtype is converted to float64 or complex128 depending on whether any of the elements are complex. If x is scalar it is converted to a 1-D array. The parameter, deg is the degree of the resulting matrix.

Steps

At first, import the required library −

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

Create an array −

x = np.array([0, 1, -1, 2])

Display the array −

print("Our Array...
",c)

Check the Dimensions −

print("
Dimensions of our Array...
",c.ndim)

Get the Datatype −

print("
Datatype of our Array object...
",c.dtype)

Get the Shape −

print("
Shape of our Array object...
",c.shape)

To generate a pseudo Vandermonde matrix of the Legendre polynomial, use the polynomial.legvander() method in Python −

print("
Result...
",L.legvander(x, 2))

Example

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

# Create an array
x = np.array([0, 1, -1, 2])

# Display the array
print("Our Array...
",x)

# Check the Dimensions
print("
Dimensions of our Array...
",x.ndim)

# Get the Datatype
print("
Datatype of our Array object...
",x.dtype)

# Get the Shape
print("
Shape of our Array object...
",x.shape)

# To generate a pseudo Vandermonde matrix of the Legendre polynomial, use the polynomial.legvander() method in Python Numpy
print("
Result...
",L.legvander(x, 2))

Output

Our Array...
[ 0 1 -1 2]

Dimensions of our Array...
1

Datatype of our Array object...
int64

Shape of our Array object...
(4,)

Result...
[[ 1. 0. -0.5]
[ 1. 1. 1. ]
[ 1. -1. 1. ]
[ 1. 2. 5.5]]
Updated on 09-Mar-2022 06:10:22