richards
Преобразование цепи с сосредоточенными элементами в цепь с распределенными элементами с помощью преобразования Ричардса.
| Библиотека |
|
Синтаксис
Вызов функции
-
cktOut = richards(cktIn,opFreq)— применяет преобразование Ричардса к цепиcktInи возвращает объект цепиcktOutна заданной опорной частотеopFreq. В объектеcktOutвсе конденсаторы и катушки индуктивности заменяются объектами линий передач, основанными на электрической длине (см. описание функцииdrafts/func-rf/func-txlineelectricallength.adoc).Преобразование Ричардса можно применять только к цепям, в которых все отрицательные выводы портов имеют общий узел.
Аргументы
Входные аргументы
#
opFreq —
рабочая частота
скаляр
Details
Рабочая частота, на которой применяется преобразование Ричардса, заданная как положительный скаляр.
Выходные аргументы
#
txOut —
линия передачи на основе электрической длины
объект txlineElectricalLength
Details
Линия передачи на основе электрической длины, возвращаемая в виде объекта drafts/func-rf/func-txlineelectricallength.adoc.
Примеры
Применение преобразования Ричардса к РЧ фильтру
Details
Создадим низкочастотный LC Pi фильтр Чебышева с частотой полосы пропускания 1 ГГц, затуханием в полосе пропускания 0.5 дБ и порядком фильтра 5.
using EngeeRF
Fp = 1e9
Ap = 0.5
Ord = 5
cktIn = rffilter(FilterType = "Chebyshev", ResponseType = "Lowpass",
Implementation = "LC Pi", FilterOrder = Ord,
PassbandFrequency = Fp, PassbandAttenuation = Ap)
opFreq = 1e9
Преобразуем сосредоточенные элементы РЧ фильтра в распределенный элемент с помощью преобразования Ричардса.
cktOut = richards(cktIn, opFreq)
circuit(ElementNames = ("C_tx", "L_tx", "C_1_tx", "L_1_tx", "C_2_tx"), Elements = DataType[txlineElectricalLength, txlineElectricalLength, txlineElectricalLength, txlineElectricalLength, txlineElectricalLength], Name = "unnamed", Nodes = [0, 1, 2, 3, 4, 5, 6], NumPorts = 2, Ports = ("p1", "p2"), TerminalNodes = [1, 6, 0, 0], Terminals = ("p1+", "p2+", "p1-", "p2-"))
Применение преобразования Ричардса к катушке индуктивности
Details
Создадим катушку индуктивности с нГн.
LorCobj= inductor(5e-9)
Создадим цепь.
ckt = circuit("new_circuit1")
Добавим в цепь резистор и созданную ранее индуктор катушку индуктивности.
add(ckt, [1 2], LorCobj)
add(ckt, [2 3], resistor(100))
Зададим параметры выводов и отобразим результат.
setports(ckt, [1 0], [3 0])
println("ElementNames: ", ckt.ElementNames,
"\nElements: ", ckt.Elements,
"\nName: ", ckt.Name,
"\nNodes: ", ckt.Nodes)
ElementNames: ("L", "R")
Elements: EngeeRF.DomainRF.DomainObjectRF[inductor(Inductance = 5.0e-9, Name = "L", ParentNodes = [1, 2], ParentPath = "new_circuit1", Terminals = ("p", "n")), resistor(Name = "R", ParentNodes = [2, 3], ParentPath = "new_circuit1", Resistance = 100.0, Terminals = ("p", "n"))]
Name: new_circuit1
Nodes: [0, 1, 2, 3]
Применим преобразование Ричардса к катушке индуктивности на частоте 1 ГГц и покажем узлы для соединения линии передачи.
txOut, nodes = richards(LorCobj, 1e9)
println("Z0: ", txOut.Z0,
"\nReferenceFrequency: ", txOut.ReferenceFrequency,
"\nLineLength: ", txOut.LineLength,
"\nStubMode: ", txOut.StubMode,
"\nTermination: ", txOut.Termination,
"\nName: ", txOut.Name,
"\n\nnodes: ", nodes)
Z0: 31.41592653589793
ReferenceFrequency: 1.0e9
LineLength: 0.7853981633974483
StubMode: Series
Termination: Short
Name: L_tx
nodes: [1, 2, 0, 0]
Узлы в этом примере представляют собой узлы, в которых подключается двухпортовая линия передачи, представляющая собой последовательную индуктивность . Возвращаемое значение узла устанавливается равным −1, если узел заземления не удается определить из схемы.
Алгоритмы
Преобразование Ричардса
Details
На данном рисунке показано, как преобразование Ричардса преобразует схему с конденсаторами и катушками индуктивности в абстрактную модель линии передачи [1].