Merge pull request #3100 from jepler/update-ulab

Update ulab
This commit is contained in:
Scott Shawcroft 2020-07-01 14:21:00 -07:00 committed by GitHub
commit 0e5dfbaf8f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 47 additions and 2 deletions

@ -1 +1 @@
Subproject commit 0394801933f6e68a5bc7cdb0da76c7884e8cf70a
Subproject commit 48cb939839fcf091fcdcdf742530b1b650066a15

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-06-26 11:50-0500\n"
"POT-Creation-Date: 2020-07-01 10:33-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -3009,6 +3009,10 @@ msgstr ""
msgid "sleep length must be non-negative"
msgstr ""
#: extmod/ulab/code/ndarray.c
msgid "slice step can't be zero"
msgstr ""
#: py/objslice.c py/sequence.c
msgid "slice step cannot be zero"
msgstr ""
@ -3025,6 +3029,18 @@ msgstr ""
msgid "sort argument must be an ndarray"
msgstr ""
#: extmod/ulab/code/filter.c
msgid "sos array must be of shape (n_section, 6)"
msgstr ""
#: extmod/ulab/code/filter.c
msgid "sos[:, 3] should be all ones"
msgstr ""
#: extmod/ulab/code/filter.c
msgid "sosfilt requires iterable arguments"
msgstr ""
#: py/objstr.c
msgid "start/end indices"
msgstr ""
@ -3314,3 +3330,15 @@ msgstr ""
#: py/objrange.c
msgid "zero step"
msgstr ""
#: extmod/ulab/code/filter.c
msgid "zi must be an ndarray"
msgstr ""
#: extmod/ulab/code/filter.c
msgid "zi must be of float type"
msgstr ""
#: extmod/ulab/code/filter.c
msgid "zi must be of shape (n_section, 2)"
msgstr ""

View File

@ -17,3 +17,20 @@ def convolve(r, c=None):
Convolution is most time-efficient when both inputs are of float type."""
...
def sosfilt(sos : ulab.array, x : ulab.array, *, xi : Optional[ulab.array] = None) -> Union[ulab.array, Tuple[ulab.array, ulab.array]]:
"""
:param ulab.array sos: Array of second-order filter coefficients, must have shape (n_sections, 6). Each row corresponds to a second-order section, with the first three columns providing the numerator coefficients and the last three providing the denominator coefficients.
:param ulab.array x: The data to be filtered
:param ulab.array zi: Optional initial conditions for the filter
:return: If ``xi`` is not specified, the filter result alone is returned. If ``xi`` is specified, the return value is a 2-tuple of the filter result and the final filter conditions.
Filter data along one dimension using cascaded second-order sections.
Filter a data sequence, x, using a digital IIR filter defined by sos.
The filter function is implemented as a series of second-order filters with direct-form II transposed structure. It is designed to minimize numerical precision errors for high-order filters.
Filter coefficients can be generated by using scipy's filter generators such as ``signal.ellip(..., output='sos')``."""
...