{ } Raw JSON

bundles / scipy 1.17.1 / scipy / signal / _arraytools / even_ext

function

scipy.signal._arraytools:even_ext

source: /scipy/signal/_arraytools.py :110

Signature

def   even_ext ( x n axis = -1 )

Summary

Even extension at the boundaries of an array

Extended Summary

Generate a new ndarray by making an even extension of x along an axis.

Parameters

x : ndarray

The array to be extended.

n : int

The number of elements by which to extend x at each end of the axis.

axis : int, optional

The axis along which to extend x. Default is -1.

Examples

import numpy as np
from scipy.signal._arraytools import even_ext
a = np.array([[1, 2, 3, 4, 5], [0, 1, 4, 9, 16]])
even_ext(a, 2)
Even extension is a "mirror image" at the boundaries of the original array:
t = np.linspace(0, 1.5, 100)
a = 0.9 * np.sin(2 * np.pi * t**2)
b = even_ext(a, 40)
import matplotlib.pyplot as plt
plt.plot(np.arange(-40, 140), b, 'b', lw=1, label='even extension')
plt.plot(np.arange(100), a, 'r', lw=2, label='original')
plt.legend(loc='best')
plt.show()
fig-ec4436aa049e447e.png

Aliases

  • scipy.signal._arraytools.even_ext