Преобразование матрицы секций второго порядка в вектор любого типа.
Библиотека
EngeeDSP
Синтаксис
Вызов функции
cll = sos2cell(sos) — формирует вектор любого типа cll, содержащий коэффициенты системы фильтров, описываемой матрицей секций второго порядка sos.
cll = sos2cell(sos,g) — также задает масштабный коэффициент усиления g для добавления в представление вектора любого типа cll системы, указанной в аргументе sos.
Аргументы
Входные аргументы
#sos —
представление секций второго порядка
матрица
Details
Представление секций второго порядка, заданное как матрица. Аргумент sos — это матрица размером , где — количество секций второго порядка:
строки которой содержат коэффициенты числителя и знаменателя и секций второго порядка функции :
Типы данных
Float32, Float64
Поддержка комплексных чисел
Да
#g —
масштабный коэффициент усиления
1 (по умолчанию) | скаляр
Details
Масштабный коэффициент усиления, заданный как скаляр.
Типы данных
Float32, Float64
Поддержка комплексных чисел
Да
Выходные аргументы
#cll —
представление секций второго порядка в виде вектора любого типа
вектор типа Any
Details
Представление секций второго порядка, возвращаемое в виде двухэлементного вектора типа Any следующей длины:
элементов — если значение аргумента g равно 1 или если оно не задано. Каждый элемент вектора любого типа соответствует секции второго порядка. Например, элемент вектора cll[k] содержит коэффициенты из -й секции матрицы sos.
cll[k] = [sos(k, 1:3) sos(k, 4:6)]
элемент — если значение аргумента g отлично от 1. Первый элемент вектора cll содержит коэффициент усиления, указанный в аргументе g. Каждый последующий элемент вектора любого типа соответствует секции второго порядка. Например, элемент вектора cll[k+1] содержит коэффициенты из -й секции матрицы sos.
Вектор секций второго порядка эллиптического фильтра
Details
Создадим эллиптический фильтр нижних частот 4-го порядка с пульсациями в полосе пропускания 0.5 дБ и затуханием в полосе заграждения 20 дБ. Граница полосы пропускания составляет 0.6 от частоты Найквиста. Преобразуем передаточную функцию в матрицу секций второго порядка.
import EngeeDSP.Functions: ellip, tf2sos
b, a = ellip(4, 0.5, 20, 0.6)
m = tf2sos(b, a)
Используем функцию sos2cell для преобразования матрицы размером 2 на 6, полученной с помощью функции tf2sos, в вектор любого типа c размером 1 на 2. Отобразим второй элемент первого элемента вектора c. Убедимся, что он содержит коэффициенты знаменателя первой секции второго порядка матрицы m.