Свойства объектов задают поведение объекта. Можно задать свойства объектов, или можно импортировать их из файла данных. Чтобы узнать о свойствах, которые характерны для конкретного типа схемы, данные или объект модели, видят страницу с описанием для того типа объекта.
Объекты Схемы РФ, Объекты данных РФ, разделы Объектов модели РФ перечисляют доступные типы объектов и обеспечивают ссылки на их страницы с описанием.
Можно задать значения свойства объекта, когда вы создаете объект, или можно изменить значения свойств существующего объекта.
Этот раздел содержит следующие темы:
Чтобы установить свойство, когда вы создадите объект, включайте список, разделенный запятыми одной или нескольких пар свойства/значения в списке аргументов объектной команды конструкции. Пара свойства/значения состоит из аргументов '
, где:PropertyName
', PropertyValue
вектор символов, задающий имя свойства. Имя является нечувствительным к регистру. Кроме того, вы должны только ввести достаточно букв, чтобы однозначно определить имя свойства. Например, PropertyName
'st'
достаточно, чтобы относиться к StubMode
свойство.
Необходимо использовать одинарные кавычки вокруг имени свойства.
значение должно присвоить свойству.PropertyValue
Включайте столько же имен свойства в список аргументов, сколько существуют свойства, которые вы хотите установить. Любые значения свойств, которые вы не устанавливаете, сохраняют свои значения по умолчанию. Схема и страницы с описанием объекта данных перечисляют допустимые значения, а также значение по умолчанию для каждого свойства.
Этот раздел содержит примеры того, как выполнить следующие задачи:
Создайте Компоненты с Заданными Свойствами. Следующий код создает коаксиальный объект схемы линии электропередачи представлять коаксиальную линию электропередачи, которая 0,05 метра длиной. Заметьте, что тулбокс перечисляет доступные свойства и их значения.
t1 = rfckt.coaxial('LineLength',0.05) t1 = Name: 'Coaxial Transmission Line' nPort: 2 AnalyzedResult: [] LineLength: 0.0500 StubMode: 'NotAStub' Termination: 'NotApplicable' OuterRadius: 0.0026 InnerRadius: 7.2500e-004 MuR: 1 EpsilonR: 2.3000 LossTangent: 0 SigmaCond: Inf
Создайте Сети Заданных Компонентов. Чтобы объединить набор компонентов РФ и существующих сетей, чтобы сформировать сеть РФ, вы создаете сетевой объект с Ckts
набор свойств к массиву, содержащему указатели всей схемы, возражает в сети.
Предположим, что у вас есть следующие компоненты РФ:
t1 = rfckt.coaxial('LineLength',0.05); a1 = rfckt.amplifier; t2 = rfckt.coaxial('LineLength',0.1);
Следующий код создает каскадную сеть этих компонентов:
casc_network = rfckt.cascade('Ckts',{t1,a1,t2});
Существует два способа изменить свойства существующего объекта:
Используя set
команда
Используя подобные структуре присвоения вызвал запись через точку
В этом разделе рассматриваются право преимущественной покупки. Для получения дополнительной информации на второй опции, смотрите Reference Properties Непосредственно Используя Запись через точку.
Чтобы изменить свойства существующего объекта, используйте set
команда с одной или несколькими парами свойства/значения в списке аргументов. Общий синтаксис команды
set(h,Property1',value1,'Property2',value2,...)
где
h
указатель объекта.
'
список пар свойства/значения.Property1
', value1
, 'Property2
', value2
,...
Например, следующий код создает коаксиальный объект линии электропередачи по умолчанию и изменяет его в серийный тупик с открытым завершением.
t1 = rfckt.coaxial; set(t1,'StubMode','series','Termination','open')
Можно использовать set
команда, не задавая пар свойства/значения, чтобы отобразить список всех свойств можно установить для конкретного объекта. Этот пример перечисляет свойства, можно установить для коаксиальной линии электропередачи t1
:
set(t1) ans = LineLength: {} StubMode: {} Termination: {} OuterRadius: {} InnerRadius: {} MuR: {} EpsilonR: {} LossTangent: {} SigmaCond: {}
Программное обеспечение RF Toolbox™ позволяет вам импортировать файлы данных промышленного стандарта, файлы MathWorks® AMP, и Agilent® P2D и файлы S2D в конкретные объекты. Эта возможность импорта позволяет вам симулировать поведение измеренных компонентов.
Можно импортировать следующие форматы файлов:
Форматы файлов промышленного стандарта — SNP Пробного камня, YNP, ZNP, HNP и форматы GNP задают сетевые параметры и шумовую информацию для измеренных и симулированных данных.
Для получения дополнительной информации о файлах Пробного камня смотрите https://ibis.org/connector/touchstone_spec11.pdf
.
Формат файла Agilent P2D — Задает большой сигнал усилителя и микшера, зависимые степенью сетевые параметры, шумовые данные и таблицы межмодуляции для нескольких условий работы, таких как значения смещения и температура.
Формат файла P2D позволяет вам импортировать модели верификации уровня системы усилителей и микшеров.
Формат файла Agilent S2D — Задает параметры сети усилителя и микшера со сжатием усиления, зависимые степенью параметры S21, шумовые данные и таблицы межмодуляции для нескольких условий работы.
Формат файла S2D позволяет вам импортировать модели верификации уровня системы усилителей и микшеров.
Усилитель MathWorks (AMP) формат файла — Задает параметры сети усилителя, выходную мощность по сравнению с входной мощностью, шумовыми данными и точкой пересечения третьего порядка.
Для получения дополнительной информации о .amp
файлы, смотрите Разделы Данных о Файле AMP.
Этот раздел содержит следующие темы:
Один объект данных и три объекта схемы принимают данные из файла. В следующей таблице перечислены объекты и любой соответствующий формат данных, который каждый поддерживает.
Объект | Описание | Поддерживаемый формат (форматы) |
---|---|---|
rfdata.data | Объект данных, содержащий сетевые данные о параметре, шумовую фигуру и точку пересечения третьего порядка | Пробный камень, AMP, P2D, S2D |
rfckt.amplifier | Усилитель | Пробный камень, AMP, P2D, S2D |
rfckt.mixer | Микшер | Пробный камень, AMP, P2D, S2D |
rfckt.passive | Типовой пассивный компонент | Пробный камень |
Чтобы импортировать данные о файле в схему или объект данных при конструкции, используйте read
команда формы:
obj = read(obj_type,'filename');
где
obj
указатель схемы или объекта данных.
obj_type
тип объекта, в котором можно хранить данные из списка объектов, которые принимают, что данные о файле, показанные в Объектах, Используемых, Импортируют Данные из Файла.
filename
имя файла, который содержит данные.
Например,
ckt_obj=read(rfckt.amplifier, 'default.amp');
импортирует данные из файла default.amp
в rfckt.amplifier
объект.
Можно также импортировать данные о файле в существующий объект схемы. Следующие команды эквивалентны предыдущей команде:
ckt_obj=rfckt.amplifier; read(ckt_obj, 'default.amp');
Когда вы импортируете данные компонента от .p2d
или .s2d
файл, свойства заданы для нескольких условий работы. Необходимо выбрать условия работы указать, что поведение объекта, как описано в Задают Условия работы.
Чтобы задать свойство объекта схемы с помощью объекта данных, используйте set
команда с именем объекта данных как значение в паре свойства/значения.
Например, предположите, что у вас есть следующий rfckt.amplifier
и rfdata.nf
объекты:
amp = rfckt.amplifier f = 2.0e9; nf = 13.3244; nfdata = rfdata.nf('Freq',f,'Data',nf)
Следующая команда использует rfdata.nf
объект данных задать rfckt.amplifier
NoiseData
свойство:
set(amp,'NoiseData',nfdata)
В этом примере вы создаете объект схемы. Затем вы создаете три объекта данных и используете их, чтобы обновить свойства объекта схемы.
Создайте объект усилителя. Этот объект схемы, rfckt.amplifier
, имеет сетевой параметр, шумовые данные и нелинейные свойства данных. Эти свойства управляют частотной характеристикой усилителя, который хранится в AnalyzedResult
свойство. По умолчанию все свойства усилителя содержат значения от default.amp
файл. NetworkData
свойством является rfdata.network
объект, который содержит S-параметры на 50 Ом. NoiseData
свойством является rfdata.noise
объект, который содержит зависимого частоты, определяет шумовые данные. NonlinearData
свойством является rfdata.power
объект, который содержит информация о фазе и выходная мощность.
amp = rfckt.amplifier
Тулбокс отображает следующий вывод:
amp = Name: 'Amplifier' nPort: 2 AnalyzedResult: [1x1 rfdata.data] IntpType: 'Linear' NetworkData: [1x1 rfdata.network] NoiseData: [1x1 rfdata.noise] NonlinearData: [1x1 rfdata.power]
Создайте объект данных, который хранит сетевые данные. Введите следующий набор команд в подсказке MATLAB®, чтобы создать rfdata.network
возразите, что хранит Y-параметры с 2 портами на уровне 2,08 ГГц, 2,10 ГГц и 2,15 ГГц. Позже в этом примере, вы используете этот объект данных обновить NetworkData
свойство rfckt.amplifier
объект.
f = [2.08 2.10 2.15]*1.0e9; y(:,:,1) = [-.0090-.0104i, .0013+.0018i; ... -.2947+.2961i, .0252+.0075i]; y(:,:,2) = [-.0086-.0047i, .0014+.0019i; ... -.3047+.3083i, .0251+.0086i]; y(:,:,3) = [-.0051+.0130i, .0017+.0020i; ... -.3335+.3861i, .0282+.0110i]; netdata = rfdata.network('Type','Y_PARAMETERS',... 'Freq',f,'Data',y)
Тулбокс отображает следующий вывод:
netdata = Name: 'Network parameters' Type: 'Y_PARAMETERS' Freq: [3x1 double] Data: [2x2x3 double] Z0: 50
Создайте объект данных, который хранит шумовые значения фигуры. Введите следующий набор команд в посдказке MATLAB, чтобы создать rfdata.nf
объект, который содержит шумовые значения фигуры, в дБ, на семи различных частотах. Позже в этом примере, вы используете этот объект данных обновить NoiseData
свойство rfckt.amplifier
объект.
f = [1.93 2.06 2.08 2.10 2.15 2.30 2.40]*1.0e9; nf=[12.4521 13.2466 13.6853 14.0612 13.4111 12.9499 13.3244]; nfdata = rfdata.nf('Freq',f,'Data',nf)
Тулбокс отображает следующий вывод:
nfdata = Name: 'Noise figure' Freq: [7x1 double] Data: [7x1 double]
Создайте объект данных, который хранит выходные точки пересечения третьего порядка. Введите следующую команду в посдказке MATLAB, чтобы создать rfdata.ip3
объект, который содержит выходную точку пересечения третьего порядка 8,45 ватт, на уровне 2,1 ГГц. Позже в этом примере, вы используете этот объект данных обновить NonlinearData
свойство rfckt.amplifier
объект.
ip3data = rfdata.ip3('Type','OIP3','Freq',2.1e9,'Data',8.45)
Тулбокс отображает следующий вывод:
ip3data = Name: '3rd order intercept' Type: 'OIP3' Freq: 2.1000e+009 Data: 8.4500
Обновите свойства объекта усилителя. Введите следующий набор команд в посдказке MATLAB, чтобы обновить NetworkData
, NoiseData
, и NonlinearData
свойства усилителя возражают с объектами данных, которые вы создали на предыдущих шагах:
amp.NetworkData = netdata; amp.NoiseData = nfdata; amp.NonlinearData = ip3data;
Можно получить одни или несколько значений свойств существующего объекта с помощью get
команда.
Этот раздел содержит следующие темы:
Чтобы получить определенные значения свойств для объекта, используйте get
команда со следующим синтаксисом:
PropertyValue = get(h,PropertyName)
где
PropertyValue
значение, присвоенное свойству.
h
указатель объекта.
вектор символов, задающий имя свойства.PropertyName
Например, предположите, что у вас есть следующая коаксиальная линия электропередачи:
h2 = rfckt.coaxial;
Следующий код получает значение внутреннего радиуса и внешнего радиуса для коаксиальной линии электропередачи:
ir = get(h2,'InnerRadius') or = get(h2,'OuterRadius') ir = 7.2500e-004 or = 0.0026
Чтобы отобразить список свойств, сопоставленных с конкретным объектом, а также их текущими значениями, используйте get
команда, не задавая имя свойства.
Например:
get(h2) Name: 'Coaxial Transmission Line' nPort: 2 AnalyzedResult: [] LineLength: 0.0100 StubMode: 'NotAStub' Termination: 'NotApplicable' OuterRadius: 0.0026 InnerRadius: 7.2500e-004 MuR: 1 EpsilonR: 2.3000 LossTangent: 0 SigmaCond: Inf
Этот список включает свойства только для чтения, которые не появляются, когда вы вводите set(h2)
. Для коаксиального объекта линии электропередачи свойствами только для чтения является Name
, nPort
, и AnalyzedResult
. Name
и nPort
свойства фиксируются тулбоксом. AnalyzedResult
значение свойства вычисляется и устанавливается тулбоксом, когда вы анализируете компонент на заданных частотах.
Альтернативный способ запросить для или изменить значения свойств подобной структуре ссылкой. Имена полей для объектов РФ являются именами свойства, таким образом, можно получить или изменить значения свойств с подобным структуре синтаксисом.
хранит значение PropertyValue
= rfobj.PropertyName
свойство PropertyName
объект в rfobj
переменная. Эта команда эквивалентна PropertyValue
.PropertyValue
= доберитесь (rfobj
PropertyName
')
устанавливает значение rfobj.PropertyName
= PropertyValue
свойство к PropertyName
для PropertyValue
объект. Эта команда эквивалентна rfobj
установленному (
.rfobj
PropertyName
', PropertyValue
)
Например, ввод
ckt = rfckt.amplifier('IntpType','cubic'); ckt.IntpType
дает значение свойства IntpType
для объекта ckt
схемы.
ans = Cubic
Точно так же
ckt.IntpType = 'linear';
сбрасывает метод интерполяции для линейного.
Вы не должны вводить целое имя поля или использовать символы верхнего регистра. Только необходимо ввести минимальное количество символов, достаточных, чтобы идентифицировать имя свойства исключительно. Таким образом ввод команд
ckt = rfckt.amplifier('IntpType','cubic'); ckt.in
также производит
ans = Cubic