Open In App

Differentiate a Legendre series with multidimensional coefficients in Python

Last Updated : 22 Apr, 2022
Improve
Improve
Like Article
Like
Save
Share
Report

In this article, we will cover how to differentiate a Legendre series with a multi-dimensional coefficient array in Python using NumPy.

Example

Input: [[ 1  2  3  4  5]

 [ 3  4  2  6  7]

 [43 45  2  6  7]]

Output: [[  3.   4.   2.   6.   7.]

 [129. 135.   6.  18.  21.]]

Explanation: Legendre series of the derivative.

legendre.legder method

In python, the Legendre module provides many functions like legder to perform arithmetic, and calculus operations on the Legendre series. It is one of the functions provided by the Legendre class. This method is used to generate the Legendre series and this method is available in the NumPy module in python, it returns a multi-dimensional coefficient array, Below is the syntax of the legder method.

Syntax: legendre.legder(x, m, axis)

Parameter:

  • x: a list or tuple
  • m: Number of derivatives taken, must be non-negative. (Default: 1)
  • axis: Axis over which the derivative is taken. (Default: 0).

Return: Legendre series

Example 1:

In this example, we are creating a coefficient multi-dimensional array of 5 x 3 and, displaying the shape and dimensions of an array. Also, we are using legendre.legder() method to differentiate a Legendre series.

Python3




# import the numpy module
import numpy
  
# import legendre
from numpy.polynomial import legendre
  
# create array of coefficients with 5 elements each
coefficients_data = numpy.array(
    [[1, 2, 3, 4, 5], [3, 4, 2, 6, 7], [43, 45, 2, 6, 7]])
  
# Display the coefficients
print(coefficients_data)
  
# get the shape
print(f"\nShape of an array: {coefficients_data.shape}")
  
# get the dimensions
print(f"Dimension: {coefficients_data.ndim}")
  
# using  legendre.legder() method to differentiate 
# a legendre series.
print("\nDifferentiated legendre series", legendre.legder(coefficients_data))


Output:

[[ 1  2  3  4  5]
 [ 3  4  2  6  7]
 [43 45  2  6  7]]

Shape of an array: (3, 5)
Dimension: 2

Differentiated legendre series [[  3.   4.   2.   6.   7.]
 [129. 135.   6.  18.  21.]]

Example 2:

In this example, we are creating a coefficient multi-dimensional array of 5 x 2 and, displaying the shape and dimensions of an array. Also, we are using the number of derivatives=2, and the axis over which the derivative is taken is 1.

Python3




# import the numpy module
import numpy
  
# import legendre
from numpy.polynomial import legendre
  
# create array of coefficients with 5 elements each
coefficients_data = numpy.array([[1, 2, 3, 4, 5], 
                                 [43, 45, 2, 6, 7]])
  
# Display the coefficients
print(coefficients_data)
  
# get the shape
print(f"\nShape of an array: {coefficients_data.shape}")
  
# get the dimensions
print(f"Dimension: {coefficients_data.ndim}")
  
# using  legendre.legder() method to differentiate
# a legendre series.
print("\nDifferentiated legendre series",
      legendre.legder(coefficients_data, m=2, axis=1))


Output:

[[ 1  2  3  4  5]
 [43 45  2  6  7]]

Shape of an array: (2, 5)
Dimension: 2

Differentiated legendre series [[ 59.  60. 175.]
 [ 76.  90. 245.]]


Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads