# Generate a Vandermonde matrix of the Chebyshev polynomial with complex array of points in Python

PythonNumpyServer Side ProgrammingProgramming

To generate a Vandermonde matrix of the Chebyshev polynomial, use the chebyshev.chebvander() in Python Numpy. The method returns the Vandermonde matrix. The shape of the returned matrix is x.shape + (deg + 1,), where The last index is the degree of the corresponding Chebyshev polynomial. The dtype will be the same as the converted x.

The parameter, a is 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 chebyshev as C

Create an array −

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

Display the array −

print("Our Array...\n",x)

Check the Dimensions −

print("\nDimensions of our Array...\n",x.ndim)


Get the Datatype −

print("\nDatatype of our Array object...\n",x.dtype)

Get the Shape −

print("\nShape of our Array object...\n",x.shape)

To generate a Vandermonde matrix of the Chebyshev polynomial, use the chebyshev.chebvander() −

print("\nResult...\n",C.chebvander(x, 2))

## Example

import numpy as np
from numpy.polynomial import chebyshev as C

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

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

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

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

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

# To generate a Vandermonde matrix of the Chebyshev polynomial, use the chebyshev.chebvander() in Python Numpy
# The method returns the Vandermonde matrix. The shape of the returned matrix is x.shape + (deg + 1,), where The last index is the degree of the corresponding Chebyshev polynomial. The dtype will be the same as the converted x.
# The parameter, a is 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
print("\nResult...\n",C.chebvander(x, 2))

## Output

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

Dimensions of our Array...
1

Datatype of our Array object...
complex128

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

Result...
[[ 1. +0.j -2. +2.j -1.-16.j]
[ 1. +0.j -1. +2.j -7. -8.j]
[ 1. +0.j 0. +2.j -9. +0.j]
[ 1. +0.j 1. +2.j -7. +8.j]
[ 1. +0.j 2. +2.j -1.+16.j]]
Updated on 28-Feb-2022 07:01:42