Документация Engee

add

Страница в процессе разработки.

Добавляет в схему элемент схемы или объект схемы.

Библиотека

EngeeRF

Синтаксис

Вызов функции

  • add(cktobj, cktnodes, elem) — добавляет элемент схемы elem в объект схемы cktobj. Клеммы элемента elem присоединяются к узлам, указанным в cktnodes. Если elem — это объект S-параметров, то из входных данных создается объект drafts/func-rf/func-nport.adoc и добавляется к cktobj.

  • add(cktobj, cktnodes, elem, termorder) — также использует клеммы, указанные в termorder, которые присоединяются к узлам схемы, указанным в cktnodes.

  • elem_out=add(___) — возвращает вставленный элемент схемы elem_out в качестве выходного значения. Укажите любую из комбинаций входных аргументов из предыдущих синтаксисов.

Аргументы

Входные аргументы

# cktobj — объект схемы
скалярный объект-дескриптор

Details

Объект схемы, в который вставляется элемент схемы, заданный как скалярный объект-дескриптор. Этот объект схемы может быть новой схемой, объектом drafts/func-rf/func-nport.adoc или уже существующей схемой.

# cktnodes — узлы схемы
вектор целых чисел

Details

Узлы объекта схемы, заданные как вектор целых чисел. Функция использует этот входной аргумент для присоединения нового элемента к схеме.

# elem — элементы схемы
скалярный объект-дескриптор

Details

Элементы схемы, вставленные в объект схемы, заданные как скалярные объекты-дескрипторы. Элементом может быть резистор, конденсатор, катушка индуктивности, объект S-параметра или целая схема.

# termorder — клеммы элементов
вектор ячеек

Details

Клеммы элементов, заданные как векторы ячеек, указанные в свойстве Terminals аргумента elem. Эти входные аргументы указываются как скалярные объекты-дескрипторы.

Выходные аргументы

# elem_out — элементы схемы
скалярный объект-дескриптор

Details

Элементы схемы, возвращаемые в виде скалярных объектов-дескрипторов после использования функции add. Функция использует любой или все входные аргументы для создания этих элементов схемы.

Примеры

Добавление элемента в цепь

Details

Создадим резистор и добавим его в цепь.

using EngeeRF

hR1 = resistor(50)
hckt1 = circuit("new_circuit1")
add(hckt1,[1 2],hR1)
print(hR1)
resistor(ParentPath = "new_circuit1", Terminals = ("p", "n"), Name = "R", ParentPath = "new_circuit1", ParentNodes = [1, 2], Resistance = 50.0)
print(hckt1)
circuit(ElementNames = ("R",), Name = "new_circuit1", Elements = Vector{EngeeRF.DomainRF.DomainObjectRF}, Nodes = [1, 2])

Добавление элемента к определенным узлам схемы

Details

Создадим конденсатор.

using EngeeRF

hC2 = capacitor(1e-10)
print(hC2)
capacitor(Terminals = ("p", "n"), Name = "C", Capacitance = 1.0e-10)

Подключим клемму n конденсатора к узлу 3, а клемму p конденсатора — к узлу 4.

hckt2 = circuit("new_circuit2")
add(hckt2,[3 4],hC2,("n","p"))
print(hckt2)
circuit(ElementNames = ("C",), Name = "new_circuit2", Elements = Vector{EngeeRF.DomainRF.DomainObjectRF}, Nodes = [3, 4])

Создание цепи и добавление в нее элемента

Details

Создадим цепь.

using EngeeRF

hckt3 = circuit("new_circuit3")
circuit(Name = "new_circuit3")

Добавим катушку индуктивности в цепь, используя функцию add, и отобразим элемент схемы.

hL3 = add(hckt3,[100 200],inductor(1e-9))
print(hckt3)
circuit(ElementNames = ("L", "L"), Name = "new_circuit3", Elements = Vector{EngeeRF.DomainRF.DomainObjectRF}, Nodes = [100, 200])

Отобразим добавленный элемент схемы.

print(hL3)
inductor(ParentPath = "new_circuit3", Terminals = ("p", "n"), Name = "L", ParentPath = "new_circuit3", ParentNodes = [100, 200], Inductance = 1.0e-9)