Generate a Pseudo Vandermonde matrix of the Laguerre polynomial and x, y, z sample points in Python


To generate a pseudo Vandermonde matrix of the Laguerre polynomial with x, y, z sample points, use the laguerre.lagvander3d() in Python Numpy. The parameter, x, y, z 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 a list of maximum degrees of the form [x_deg, y_deg, z_deg].

Steps

At first, import the required library −

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

Create arrays of point coordinates, all of the same shape using the numpy.array() method −

x = np.array([1, 2])
y = np.array([3, 4])
z = np.array([5, 6])

Display the arrays −

print("Array1...\n",x)
print("\nArray2...\n",y)
print("\nArray3...\n",z)

Display the datatype −

print("\nArray1 datatype...\n",x.dtype)
print("\nArray2 datatype...\n",y.dtype)
print("\nArray3 datatype...\n",z.dtype)

Check the Dimensions of both the arrays −

print("\nDimensions of Array1...\n",x.ndim)
print("\nDimensions of Array2...\n",y.ndim)
print("\nDimensions of Array3...\n",z.ndim)

Check the Shape of both the arrays −

print("\nShape of Array1...\n",x.shape)
print("\nShape of Array2...\n",y.shape)
print("\nShape of Array3...\n",z.shape)

To generate a pseudo Vandermonde matrix of the Laguerre polynomial with x, y, z sample points, use the laguerre.lagvander3d() in Python −

x_deg, y_deg, z_deg = 2, 3, 4
print("\nResult...\n",L.lagvander3d(x,y,z, [x_deg, y_deg, z_deg]))

Example

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

# Create arrays of point coordinates, all of the same shape using the numpy.array() method
x = np.array([1, 2])
y = np.array([3, 4])
z = np.array([5, 6])

# Display the arrays
print("Array1...\n",x)
print("\nArray2...\n",y)
print("\nArray3...\n",z)

# Display the datatype
print("\nArray1 datatype...\n",x.dtype)
print("\nArray2 datatype...\n",y.dtype)
print("\nArray3 datatype...\n",z.dtype)

# Check the Dimensions of both the arrays
print("\nDimensions of Array1...\n",x.ndim)
print("\nDimensions of Array2...\n",y.ndim)
print("\nDimensions of Array3...\n",z.ndim)

# Check the Shape of both the arrays
print("\nShape of Array1...\n",x.shape)
print("\nShape of Array2...\n",y.shape)
print("\nShape of Array3...\n",z.shape)

# To generate a pseudo Vandermonde matrix of the Laguerre polynomial with x, y, z sample points, use the laguerre.lagvander3d() in Python Numpy

x_deg, y_deg, z_deg = 2, 3, 4
print("\nResult...\n",L.lagvander3d(x,y,z, [x_deg, y_deg, z_deg]))

Output

Array1...
   [1 2]

Array2...
   [3 4]

Array3...
   [5 6]

Array1 datatype...
int64

Array2 datatype...
int64

Array3 datatype...
int64

Dimensions of Array1...
1

Dimensions of Array2...
1

Dimensions of Array3...
1

Shape of Array1...
(2,)

Shape of Array2...
(2,)

Shape of Array3...
(2,)

Result...
   [[ 1.         -4.         3.5           2.66666667 -1.29166667
     -2.          8.        -7.           -5.33333333  2.58333333
     -0.5         2.        -1.75         -1.33333333  0.64583333
      1.         -4.         3.5           2.66666667 -1.29166667
      0.         -0.          0.           0.         -0.
     -0.          0.         -0.          -0.          0.
     -0.          0.         -0.          -0.          0.
      0. -        0.          0.           0.         -0.
     -0.5         2.         -1.75        -1.33333333  0.64583333
      1.         -4.          3.5          2.66666667 -1.29166667
      0.25       -1.          0.875        0.66666667 -0.32291667
     -0.5         2.         -1.75        -1.33333333  0.64583333]
    [ 1.         -5.          7.           1.         -5.
     -3.         15.         -21.         -3.         15.
      1.         -5.           7.          1.         -5.
      2.33333333 -11.66666667 16.33333333  2.33333333 -11.66666667
     -1.          5.         -7.          -1.          5.
      3.         -15.         21.          3.         -15.
     -1.          5.         -7.          -1.           5.
     -2.33333333 11.66666667 -16.33333333 -2.33333333  11.66666667
     -1.          5.         -7.          -1.           5.
      3.        -15.         21.           3.          -15.
     -1.          5.         -7.          -1.           5.
     -2.33333333 11.66666667 -16.33333333 -2.33333333  11.66666667]]

Updated on: 07-Mar-2022

70 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements