Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

sdynpy.core.sdynpy_data.ImpulseResponseFunctionArray

Signature

class sdynpy.core.sdynpy_data.ImpulseResponseFunctionArray(shape, nelements, buffer=None, offset=0, strides=None, order=None)

Data array used to store impulse response functions

Attributes

NameSummary
function_typeReturns the function type of the data array

function_type

Returns the function type of the data array

Methods

NameSummary
enforce_causalityEnforces causality on the impulse response function via a cutoff of some sort.
fftConverts the impulse response function to a frequency response function using the fft function.
find_end_of_ringdownFinds the end of the ringdown in a impulse response function (IRF).

enforce_causality

def sdynpy.core.sdynpy_data.ImpulseResponseFunctionArray.enforce_causality(self, method='exponential_taper', window_parameter=None, end_of_ringdown=None)

Enforces causality on the impulse response function via a cutoff of some sort.

Parameters

Returns

Notes

Although optional, it is best practice for the user to supply a parameter for the end_of_ringdown variable if the “exponential_taper” method is being used or a window_parameter if the “exponential” or “boxcar” methods are being used. The code will attempt to find the end of the ring-down in the IRF and use use that as the end_of_ringdown parameter for the “exponential_taper” window or the window_parameter for the exponential and boxcar windows.

It is not suggested that the user provide a window_paramter if the “exponential_taper” method is being used, since the default is likely the most logical choice.

References

.. [1] Zvonkin, M. (2015). Methods for checking and enforcing physical quality of linear electrical network models [Masters Theses, Missouri University of Science and Technology], Missouri S&T Scholars’ Mine, https://scholarsmine.mst.edu/masters_theses/7490/

fft

def sdynpy.core.sdynpy_data.ImpulseResponseFunctionArray.fft(self, norm='backward', **scipy_rfft_kwargs)

Converts the impulse response function to a frequency response function using the fft function.

Returns

Paramters

norm : str, optional The type of normalization applied to the fft computation. scipy_rfft_kwargs : Additional keywords that will be passed to SciPy’s rfft function.

find_end_of_ringdown

def sdynpy.core.sdynpy_data.ImpulseResponseFunctionArray.find_end_of_ringdown(self)

Finds the end of the ringdown in a impulse response function (IRF).

It does this by smoothing the IRF via a moving average filter, then finding the index of the minimum of the smoothed IRF (for each response/reference pair). The “end of ringdown” is defined as the median of the possible indices.

Returns