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

txlineEquationBased

Создает линию передачи на основе уравнений.

Библиотека

EngeeRF

Описание

Используйте функцию txlineEquationBased для создания линии передачи на основе уравнений. В таком объекте можно задать потери, фазовую скорость и тип интерполяции. Также объект txlineEquationBased можно использовать для моделирования линии передачи на основе уравнений в РЧ системах с помощью объекта rfbudget.

txline equation based

Синтаксис

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

  • eqtxline = txlineEquationBased() — создает объект линии передачи на основе уравнений, свойства которого заданы по умолчанию.

  • eqtxline = txlineEquationBased(Name=Value) — устанавливает свойства, заданные одним или несколькими аргументами типа «имя-значение». Неуказанные свойства сохраняют свои значения по умолчанию.

Аргументы

Входные аргументы «имя-значение»

Укажите необязательные пары аргументов в виде Name=Value, где Name — имя аргумента, а Value — соответствующее значение.

Пример: eqtxline = txlineEquationBased(Z0 = 75) создает объект линии передачи на основе уравнений с импедансом 75 Ом. Можно указать несколько пар «имя-значение».

# Frequency — рабочая частота линии передачи на основе уравнений
1.0e9 (по умолчанию) | скаляр

Details

Рабочая частота линии передачи на основе уравнений, заданная как положительный скаляр в Гц.

Типы данных

Float64

# Z0 — характеристический импеданс
50.0 (по умолчанию) | скаляр

Details

Характеристический импеданс линии передачи на основе уравнений, заданный как положительный скаляр в Ом.

Типы данных

Float64

# PhaseVelocity — фазовая скорость линии передачи на основе уравнений
2.99792458e8 (по умолчанию) | скаляр

Details

Фазовая скорость линии передачи на основе уравнений, заданная как положительный скаляр в м/с.

Типы данных

Float64

# LossDB — потери в линии передачи на основе уравнений
0.0 (по умолчанию) | скаляр

Details

Потери в линии передачи на основе уравнений, заданные как положительный скаляр в дБ.

Типы данных

Float64

# IntpType — тип интерполяции
"Linear" (по умолчанию) | "Spline" | "Cubic"

Details

Тип интерполяции, заданный в линии передачи на основе уравнений как "Linear", "Spline" или "Cubic".

Типы данных

String

# LineLength — физическая длина
0.01 (по умолчанию) | скаляр

Details

Физическая длина линии передачи на основе уравнений, заданная как положительный скаляр в метрах.

Типы данных

Float64

# StubMode — тип шлейфа
"NotAStub" (по умолчанию) | "Series" | "Shunt"

Details

Тип шлейфа, заданный одним из следующих значений: "NotAStub", "Series", "Shunt".

# Termination — замыкание шлейфовой линии передачи
"NotApplicable" (по умолчанию) | "Open" | "Short"

Details

Замыкание шлейфовой линии передачи, заданное одним из следующих значений: "NotApplicable", "Open", "Short".

# Name — название линии передачи на основе уравнений
"EquationBased" (по умолчанию) | строка

Details

Название линии передачи на основе уравнений, заданное как строка.

Типы данных

String

# Terminals — клеммы линии передачи на основе уравнений
("p1+", "p2+", "p1−", "p2−") (по умолчанию) | кортеж строк

Details

Клеммы линии передачи на основе уравнений, заданные как кортеж строк из 4 элементов.

Этот аргумент доступен только для чтения.

# NumPorts — количество входных и выходных портов
2 (по умолчанию) | скаляр

Details

Количество входных и выходных портов, заданное как положительный скаляр.

Этот аргумент доступен только для чтения.
Типы данных

Int64

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

# eqtxline — объект линии передачи
объект

Details

Объект линии передачи на основе уравнений, содержащий следующие свойства:

  • Frequency — рабочая частота линии передачи;

  • Z0 — характеристический импеданс;

  • PhaseVelocity — фазовая скорость линии передачи;

  • LossDB — потери в линии передачи;

  • IntpType — тип интерполяции;

  • LineLength — длина линии передачи;

  • StubMode — тип шлейфа;

  • Termination — замыкание шлейфовой линии передачи;

  • Name — название объекта в виде строки, например "EquationBased";

  • Ports — имена портов в виде кортежа строк: ("p1", "p2");

  • Terminals — имена клемм в виде кортежа строк;

  • ParentNodes — узлы родительской схемы в виде вектора целых чисел, отображаемые только после добавления дочерней схемы к родительской схеме;

  • ParentPath — полный путь к родительской схеме в виде строки, отображаемый только после добавления дочерней схемы к родительской схеме;

  • NumPorts — количество портов;

  • Parent — родительская схема, которой принадлежит объект цепи.

Методы

sparameters

Вычисление S-параметров для радиочастотных данных, сетей, схем и соответствующих объектов

groupdelay

Вычисление групповой задержки S-параметров, РЧ-фильтра или объекта цепи

noisefigure

Вычисление коэффициента шума линий передачи, последовательных и параллельных RLC-цепей

Примеры

Расчет S-параметров и групповой задержки линии передачи на основе уравнений

Details

Создадим линию передачи на основе уравнений с длиной 50 см.

import EngeeRF: txlineEquationBased

eqtxline = txlineEquationBased(LineLength = 0.05)

println("Frequency: ", eqtxline.Frequency,
        "\nZ0: ", eqtxline.Z0,
        "\nPhaseVelocity: ", eqtxline.PhaseVelocity,
        "\nLossDB: ", eqtxline.LossDB,
        "\nIntpType: ", eqtxline.IntpType,
        "\nLineLength: ", eqtxline.LineLength,
        "\nStubMode: ", eqtxline.StubMode,
        "\nTermination: ", eqtxline.Termination,
        "\nName: ", eqtxline.Name,
        "\nTerminals: ", eqtxline.Terminals,
        "\nNumPorts: ", eqtxline.NumPorts)
Frequency: 1.0e9
Z0: 50.0
PhaseVelocity: 2.99792458e8
LossDB: 0.0
IntpType: Linear
LineLength: 0.05
StubMode: NotAStub
Termination: NotApplicable
Name: EquationBased
Terminals: ("p1+", "p2+", "p1-", "p2-")
NumPorts: 2

Рассчитаем S-параметры линии передачи на основе уравнений в диапазоне частот 1–4 ГГц.

freq = collect(range(1e9, 4e9, length=51))
sparam = sparameters(eqtxline, freq)

println("Impedance: ", sparam.Impedance,
        "\nNumPorts: ", sparam.NumPorts,
        "\nParameters: ", sparam.Parameters,
        "\nFrequencies: ", sparam.Frequencies)
Impedance: 50.0
NumPorts: 2
Parameters: ComplexF64[-2.220446049250313e-16 - 4.1679476801833825e-17im 0.4993720350777837 - 0.86638765606527im; 0.49937203507778366 - 0.86638765606527im -4.8094176200734197e-17 - 2.7720716559863837e-17im;;; -1.1102230246251565e-16 - 7.746605625269458e-17im 0.44394673166823445 - 0.8960531789135578im; 0.4439467316682344 - 0.8960531789135578im -4.9740943525919837e-17 - 2.4643994160257998e-17im;;; -2.220446049250313e-16 - 6.168009841838356e-17im 0.386766947443799 - 0.9221774928748833im; 0.386766947443799 - 0.9221774928748834im -1.13117207793482e-16 - 1.7344189887089432e-17im;;; 0.0 - 7.748866580428094e-18im 0.3280586573408042 - 0.9446573544644369im; 0.32805865734080414 - 0.9446573544644369im -1.1398349140097495e-16 - 1.0202318848039895e-17im;;; -1.1102230246251565e-16 - 4.603482976194236e-17im 0.2680538769622782 - 0.9634039231005299im; 0.2680538769622781 - 0.9634039231005298im -1.143993113951302e-16 - 3.0201281683456998e-18im;;; 0.0 - 1.094389320325657e-17im 0.20698974565054706 - 0.9783431122032402im; 0.2069897456505471 - 0.9783431122032403im -1.0861790491514704e-16 - 2.2980478148254223e-17im;;; 0.0 - 2.4142625140993065e-18im 0.14510758931077383 - 0.9894158819851314im; 0.14510758931077383 - 0.9894158819851316im -1.1186100164472837e-16 - 2.3792750061959886e-18im;;; -3.3306690738754696e-16 - 1.5268801550988787e-17im 0.08265196668917132 - 0.996578472776937im; 0.0826519666891713 - 0.9965784727769368im -1.659636549484095e-16 - 1.3764317467330416e-17im;;; -1.1102230246251565e-16 - 5.0547162245353496e-18im 0.019869702875001127 - 0.9998025779660998im; 0.019869702875001127 - 0.9998025779661im -1.1100038421375524e-16 - 2.205980162428692e-18im;;; -1.1102230246251565e-16 + 6.89930336721601e-18im -0.04299108615403161 - 0.9990754558647191im; -0.04299108615403161 - 0.9990754558647192im -1.1106881273670685e-16 + 1.3067300750634487e-18im;;; -0.0 + 1.9302819429070965e-17im -0.10568197408798269 - 0.9943999800647961im; -0.10568197408798269 - 0.9943999800647962im -1.1040057535547334e-16 + 1.1733056092031756e-17im;;; -1.1102230246251565e-16 + 1.534550638678243e-17im -0.16795520606731099 - 0.9857946280817759im; -0.16795520606731107 - 0.9857946280817762im -1.11776036075838e-16 + 4.966125017556893e-18im;;; -1.1102230246251565e-16 - 1.8753610045174958e-18im -0.22956467781194156 - 0.9732934083312695im; -0.2295646778119415 - 0.9732934083312694im -1.1124312505137036e-16 + 1.1979639699181458e-17im;;; -2.220446049250313e-16 + 1.1062302765319615e-16im -0.2902669082272282 - 0.9569457257275388im; -0.2902669082272281 - 0.9569457257275387im -1.5936347670290152e-16 + 4.833915072009389e-17im;;; -0.0 + 7.903867817411496e-17im -0.3498220016430662 - 0.9368161864349049im; -0.3498220016430662 - 0.936816186434905im -1.0400749000215648e-16 + 3.8838044074459144e-17im;;; -1.1102230246251565e-16 + 4.845035317977161e-17im -0.4079945958833807 - 0.9129843425437026im; -0.40799459588338066 - 0.9129843425437025im -1.0136162382142794e-16 + 4.529649942723653e-17im;;; -2.220446049250313e-16 + 4.110209890020117e-17im -0.464554792419212 - 0.8855443776798216im; -0.46455479241921194 - 0.8855443776798216im -1.112091614113436e-16 + 2.6997148738689583e-17im;;; -1.1102230246251565e-16 + 1.1896962690203121e-16im -0.5192790649294283 - 0.8546047347903113im; -0.5192790649294282 - 0.8546047347903114im -1.2370596405631156e-16 + 1.021146473315332e-17im;;; -0.0 + 7.105597696516976e-17im -0.571951142678424 - 0.8202876875760389im; -0.571951142678424 - 0.8202876875760389im -9.107022775634453e-17 + 6.349933275622543e-17im;;; -1.1102230246251565e-16 - 3.055491273616664e-18im -0.6223628652196891 - 0.7827288572651062im; -0.622362865219689 - 0.7827288572651062im -1.2144843906935495e-16 + 2.564597829514524e-17im;;; -0.0 + 8.828162932984573e-18im -0.6703150050474553 - 0.7420766766367408im; -0.6703150050474553 - 0.7420766766367408im -4.119353062197133e-17 + 3.7209957617770647e-17im;;; -0.0 + 5.2958915225775245e-17im -0.715618054945295 - 0.6984918034138358im; -0.715618054945295 - 0.6984918034138359im -1.1727295033808576e-16 + 4.067548001067423e-17im;;; -2.220446049250313e-16 + 4.7623778938938555e-17im -0.7580929769200628 - 0.6521464853424245im; -0.7580929769200627 - 0.6521464853424244im -7.240280434555317e-17 + 8.41652277783281e-17im;;; -0.0 + 1.5782181454736025e-17im -0.7975719097613865 - 0.6032238794672959im; -0.7975719097613866 - 0.6032238794672959im -3.348565199941511e-17 + 4.427413490056745e-17im;;; -0.0 + 4.0405317942411887e-17im -0.8338988324304307 - 0.5519173282939795im; -0.8338988324304308 - 0.5519173282939795im -6.127513255615775e-17 + 9.258136839722995e-17im;;; -1.1102230246251565e-16 + 6.337979590832304e-17im -0.8669301806562143 - 0.498429595697711im; -0.8669301806562142 - 0.49842959569771095im -2.7668400664910328e-17 + 4.8124292365348775e-17im;;; 2.220446049250313e-16 - 2.414847058053249e-17im -0.8965354143026846 - 0.4429720655990777im; -0.8965354143026847 - 0.44297206559907776im -7.43576022922278e-17 + 2.5177823642841653e-17im;;; -1.1102230246251565e-16 + 9.394328670630365e-17im -0.9225975332643158 - 0.385763906573178im; -0.9225975332643158 - 0.38576390657317805im -3.212129783601675e-17 + 7.682167679193129e-17im;;; -0.0 + 7.409925059800268e-17im -0.9450135398514043 - 0.3270312056937658im; -0.9450135398514045 - 0.32703120569376587im -1.8153878716607223e-17 + 5.245878952627761e-17im;;; -1.1102230246251565e-16 - 1.9270214745649305e-17im -0.9636948458377101 - 0.2670060750354418im; -0.9636948458377101 - 0.2670060750354418im -5.3495810328080825e-17 - 1.4821814610956986e-17im;;; 2.220446049250313e-16 + 3.2316147338911895e-17im -0.9785676225617929 - 0.20592573436499012im; -0.9785676225617931 - 0.20592573436499018im -5.715587291371398e-18 + 2.7160707643020062e-17im;;; -0.0 + 3.5835621200800317e-17im -0.989573092698435 - 0.14403157364708127im; -0.989573092698435 - 0.14403157364708127im -3.997679233399589e-18 + 2.7466170801583172e-17im;;; -1.1102230246251565e-16 + 1.2178270106566688e-17im -0.9966677625470726 - 0.08156819906931935im; -0.9966677625470726 - 0.08156819906931938im -5.645816105261949e-17 + 9.303599089319145e-18im;;; -1.1102230246251565e-16 + 1.8372279601138167e-19im -0.999823593919226 - 0.018782466356756507im; -0.9998235939192258 - 0.0187824663567565im -6.516477065162015e-20 + 3.468834920414366e-18im;;; -2.220446049250313e-16 - 7.202927091987518e-18im -0.9990281149456315 + 0.04407749480379049im; -0.9990281149456313 + 0.04407749480379048im -3.058490599935243e-19 - 6.9321500966281706e-18im;;; -1.1102230246251565e-16 - 1.2121749030933905e-17im -0.9942844693651619 + 0.1067632613741192im; -0.9942844693651617 + 0.10676326137411918im -2.222456830530389e-18 - 2.069770332968266e-17im;;; -1.1102230246251565e-16 - 5.0394589745125645e-17im -0.985611404100747 + 0.16902709873435673im; -0.9856114041007469 + 0.16902709873435673im -4.6914444200118124e-18 - 2.7356211854144465e-17im;;; -1.1102230246251565e-16 - 2.573614724123191e-17im -0.9730431951713938 + 0.23062293973203268im; -0.9730431951713937 + 0.23062293973203266im -6.401072442431062e-18 - 2.700737398085278e-17im;;; -1.1102230246251565e-16 - 4.34145519089447e-17im -0.9566295122331017 + 0.2913073571413155im; -0.9566295122331017 + 0.2913073571413155im -1.61708067570496e-17 - 5.3103605525856116e-17im;;; 0.0 - 8.46540413665163e-17im -0.9364352222840092 + 0.35084052568923413im; -0.9364352222840092 + 0.35084052568923424im -7.145815872207326e-17 - 3.2507035762895094e-17im;;; -2.220446049250313e-16 - 7.27871565695909e-17im -0.9125401333095312 + 0.40898716984695616im; -0.9125401333095311 + 0.4089871698469561im -3.405502295552777e-17 - 7.598423001710633e-17im;;; -2.220446049250313e-16 - 1.376816541121295e-16im -0.8850386788806017 + 0.46551749364044215im; -0.8850386788806016 + 0.46551749364044215im -1.0081233992939508e-16 - 7.241761990743672e-17im;;; -1.1102230246251565e-16 - 1.0734682565646289e-16im -0.8540395449514917 + 0.5202080888058633im; -0.8540395449514918 + 0.5202080888058634im -0.0 + 0.0im;;; 0.0 - 3.173956506212159e-17im -0.8196652403321035 + 0.5728428177007324im; -0.8196652403321038 + 0.5728428177007326im -1.0909888968533117e-16 - 5.920195794503617e-17im;;; 0.0 - 7.424110151341821e-17im -0.7820516125322349 + 0.6232136674814915im; -0.7820516125322348 + 0.6232136674814915im -1.1260320162382976e-16 - 5.222986252289996e-17im;;; -2.220446049250313e-16 - 7.688007475668633e-17im -0.7413473108911991 + 0.6711215721718292im; -0.7413473108911989 + 0.6711215721718291im -3.725473108738992e-17 - 4.1153042689767653e-17im;;; -2.220446049250313e-16 - 7.308824638211556e-17im -0.6977131991145233 + 0.7163771993729124im; -0.6977131991145231 + 0.7163771993729123im -3.8730862912091e-17 + 3.9766923053014676e-17im;;; -1.1102230246251565e-16 - 6.686795743462372e-17im -0.6513217195393747 + 0.7588016985064492im; -0.6513217195393747 + 0.7588016985064492im -8.424391168065361e-17 - 7.231123694710625e-17im;;; 0.0 - 4.791627819422664e-17im -0.6023562116411517 + 0.7982274076335139im; -0.6023562116411518 + 0.798227407633514im -8.862104468415776e-17 - 6.687497351899905e-17im;;; 0.0 - 8.853835612336333e-17im -0.5510101874745005 + 0.8344985160557902im; -0.5510101874745005 + 0.8344985160557902im -9.264794665406641e-17 - 6.117441969372145e-17im;;; -1.1102230246251565e-16 - 4.1607567066648765e-17im -0.49748656691222304 + 0.867471680080618im; -0.497486566912223 + 0.867471680080618im -4.8154351621788496e-17 - 2.7616052051383676e-17im]
Frequencies: [1.0e9, 1.06e9, 1.12e9, 1.18e9, 1.24e9, 1.3e9, 1.36e9, 1.42e9, 1.48e9, 1.54e9, 1.6e9, 1.66e9, 1.72e9, 1.78e9, 1.84e9, 1.9e9, 1.96e9, 2.02e9, 2.08e9, 2.14e9, 2.2e9, 2.26e9, 2.32e9, 2.38e9, 2.44e9, 2.5e9, 2.56e9, 2.62e9, 2.68e9, 2.74e9, 2.8e9, 2.86e9, 2.92e9, 2.98e9, 3.04e9, 3.1e9, 3.16e9, 3.22e9, 3.28e9, 3.34e9, 3.4e9, 3.46e9, 3.52e9, 3.58e9, 3.64e9, 3.7e9, 3.76e9, 3.82e9, 3.88e9, 3.94e9, 4.0e9]

Рассчитаем групповую задержку линии передачи на основе уравнений на частоте 2.4 ГГц.

freqs = [2.4e9 2.4e9 + 1e3]
gd = groupdelay(eqtxline, freqs)
2-element Vector{Float64}:
 1.6678204760105675e-10
 1.6678204760105675e-10