# Generate a Vandermonde matrix of given degree with complex array of points in Python

PythonNumpyServer Side ProgrammingProgramming

To generate a Vandermonde matrix of given degree, use the polynomial.polyvander() 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 power of x. 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 libraries −

import numpy as np
from numpy.polynomial.polynomial import polyvander

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 given degree, use the polynomial.polyvander() in Python Numpy −

print("\nResult...\n",polyvander(x, 2))

## Example

import numpy as np
from numpy.polynomial.polynomial import polyvander

# 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 given degree, use the polynomial.polyvander() in Python Numpy
print("\nResult...\n",polyvander(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 0.-8.j]
[ 1.+0.j -1.+2.j -3.-4.j]
[ 1.+0.j 0.+2.j -4.+0.j]
[ 1.+0.j 1.+2.j -3.+4.j]
[ 1.+0.j 2.+2.j 0.+8.j]]
Updated on 28-Feb-2022 10:58:44