对象属性指定对象的行为。您可以指定对象属性,或者您可以从数据文件导入它们。要了解特定类型的电路,数据或模型对象的特定属性,请参阅该类型对象的参考页面。
您可以在构造对象时指定对象属性值,也可以修改现有对象的属性值。
本节包含以下主题:
要在构建对象时设置属性,请在对象构造命令的参数列表中包含一个或多个属性/值对的逗号分隔列表。属性/值对包括参数'
, 在哪里:propertyname.
',适当的价值
是指定属性名称的字符矢量。这个名字是不区分大小写的。此外,您只需要键入足够的字母来唯一标识属性名称。例如,propertyname.
'英石'
足以指代StubMode.
财产。
笔记
您必须在属性名称周围使用单引号。
是分配给属性的值。适当的价值
在参数列表中包含AS许多属性名称,因为您要设置属性。您未设置的任何属性值都会保留其默认值。电路和数据对象引用页面列出了有效值以及每个属性的默认值。
本节包含如何执行以下任务的示例:
构造具有指定属性的组件。以下代码创建同轴传输线路电路对象,表示同轴传输线,长度为0.05米。请注意,工具箱列出可用的属性及其值。
t1 = rfckt.coaxial('lineLength',0.05)t1 =名称:'同轴传输线'排球管:2分析方法:[] LineLength:0.0500 StubMode:'NotAstub'终止:'不适用'OuterRadius:0.0026 InnerRadius:7.2500E-004MUR:1 EPSILONR:2.3000 LOSStangent:0 Sigmacond:INF
构建指定组件的网络。要组合一组RF组件和现有网络以形成RF网络,您可以创建一个网络对象CKTS.
属性设置为包含网络中所有电路对象的句柄的数组。
假设您有以下RF组件:
t1 = rfckt.coaxial('lineLength',0.05);a1 = rfckt.amplifier;t2 = rfckt.coaxial('LineLength',0.1);
以下代码创建了这些组件的级联网络:
casc_network = rfckt.cascade('ckts',{t1,a1,t2});
有两种方法可以更改现有对象的属性:
使用放
命令
使用称为DOT符号的结构类分配
本节讨论了第一个选项。有关第二个选项的详细信息,请参阅使用点表示法直接参考属性。
要修改现有对象的属性,请使用放
使用参数列表中的一个或多个属性/值对的命令。命令的一般语法是
套(h,property1.',value1.,'职业2.',价值2.,......)
在哪里
H
是对象的句柄。
'
是属性/值对列表。property1.
',value1.
,'职业2.
',价值2.
,......
例如,以下代码创建默认同轴传输线对象,并将其更改为具有开放终止的串联存根。
t1 = rfckt.coaxial;SET(T1,'StubMode','系列','终止','打开')
笔记
你可以使用放
命令不指定任何属性/值对,以显示可以为特定对象设置的所有属性的列表。此示例列出了可以为同轴传输线设置的属性T1.
:
set(t1)ans = lineLength:{} StubMode:{}终止:{} OuterRadius:{} MUR:{} MUR:{} ePSILONR:{} LOSSTANGENT:{} SIGMACOND:{}
RF Toolbox™软件可让您导入行业标准数据文件MathWorks®AMP文件和安捷伦®p2d和s2d文件进入特定对象。此导入功能可让您模拟测量组件的行为。
您可以导入以下文件格式:
行业标准文件格式 -Thepstone.SNP,YNP,ZnP,HNP和GNP格式指定了用于测量和模拟数据的网络参数和噪声信息。
有关的更多信息Thepstone.文件,参见https://ibis.org/connector/touchstone_spec11.pdf.
。
Agilent P2D文件格式 - 针对多个操作条件(例如温度和偏置值)指定放大器和混音器大信号,依赖性网络参数,噪声数据和互调表。
P2D文件格式允许您导入放大器和混频器的系统级验证型号。
Agilent S2D文件格式 - 指定具有增益压缩的放大器和混音器网络参数,依赖于电源21.用于若干操作条件的参数,噪声数据和互调表。
S2D文件格式允许您导入放大器和混频器的系统级验证型号。
MathWorks放大器(AMP)文件格式 - 指定放大器网络参数,输出功率与输入功率,噪声数据和三阶拦截点。
有关的更多信息.AMP.
文件,参见AMP文件数据部分。
本节包含以下主题:
一个数据对象和三个电路对象接受来自文件的数据。下表列出了每个支持的对象和任何相应的数据格式。万博1manbetx
目的 | 描述 | 万博1manbetx支持的格式 |
---|---|---|
rfdata.data. |
数据对象包含网络参数数据,噪声系数和三阶拦截点 | Thepstone.,amp,p2d,s2d |
rfckt.amplifier. |
放大器 | Thepstone.,amp,p2d,s2d |
rfckt.mixer. |
混合器 | Thepstone.,amp,p2d,s2d |
rfckt.passive. |
通用被动组件 | Thepstone. |
将文件数据导入电路或构造时,使用a读
表格的命令:
obj =读(obj_type.,'文件名');
在哪里
obj.
是电路或数据对象的句柄。
obj_type.
是存储数据的对象类型,从接受所示文件数据的对象列表中用于从文件导入数据的对象。
文件名
是包含数据的文件的名称。
例如,
ckt_obj = read(rfckt.amplifier,'default.amp');
从文件中导入数据default.amp.
进入rfckt.amplifier.
目的。
您还可以将文件数据导入现有电路对象。以下命令等同于上一个命令:
ckt_obj = rfckt.amplifier;读(ckt_obj,'default.amp');
笔记
从中导入组件数据时.p2d.
或者.s2d.
文件,属性是针对多个操作条件定义的。您必须选择操作条件以指定对象行为,如下所述指定操作条件。
要使用数据对象指定电路对象属性,请使用放
命令用数据对象的名称作为属性/值对中的值。
例如,假设您有以下内容rfckt.amplifier.
和rfdata.nf.
对象:
amp = rfckt.amplifier f = 2.0e9;nf = 13.3244;nfdata = rfdata.nf('freq',f,'data',nf)
以下命令使用rfdata.nf.
数据对象指定rfckt.amplifier.
noisdata.
财产:
设置(AMP,'Noisdata',NFData)
在此示例中,您可以创建一个电路对象。然后,您创建三个数据对象并使用它们来更新电路对象的属性。
创建放大器对象。这个电路对象,rfckt.amplifier.
,具有网络参数,噪声数据和非线性数据属性。这些属性控制放大器的频率响应,存储在分析方法
财产。默认情况下,所有放大器属性都包含来自的值default.amp.
文件。这NetworkData.
属性是ANrfdata.network.
包含50欧姆S参数的对象。这noisdata.
属性是ANrfdata.noise.
包含频率相关点噪声数据的对象。这nonlineardata.
属性是ANrfdata.power.
包含输出功率和相位信息的对象。
amp = rfckt.amplifier.
工具箱显示以下输出:
amp = name:'放大器'nport:2分析:[1x1 rfdata.data] intptype:'linear'networkdata:[1x1 rfdata.network] noisdata:[1x1 rfdata.noise] nonlineardata:[1x1 rfdata.power]
创建存储网络数据的数据对象。在MATLAB中键入以下命令集®提示创建一个rfdata.network.
存储2.08 GHz,2.10 GHz和2.15 GHz的2端口Y参数的对象。在此示例中,您可以使用此数据对象更新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;... -.335 + .3861i,.0282 + .0110i];netdata = rfdata.network('类型','y_parameters',...'freq',f,'data',y)
工具箱显示以下输出:
netdata =名称:'网络参数'类型:'y_parameters'freq:[3x1 double]数据:[2x2x3双] z0:50
创建存储噪声数据值的数据对象。在MATLAB提示符下键入以下命令集以创建一个rfdata.nf.
包含噪声数字值的对象,在DB中,七个不同的频率。在此示例中,您可以使用此数据对象更新noisdata.
财产的财产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 =名称:'噪声数字'freq:[7x1双]数据:[7x1双]
创建存储输出三阶拦截点的数据对象。在matlab提示符下键入以下命令以创建一个rfdata.ip3.
包含输出三阶拦截点8.45瓦的对象,在2.1 GHz。在此示例中,您可以使用此数据对象更新nonlineardata.
财产的财产rfckt.amplifier.
目的。
ip3data = rfdata.ip3('类型','OIP3','freq',2.1e9,'data',8.45)
工具箱显示以下输出:
IP3Data =名称:'3RD订单拦截'类型:'OIP3'FREQ:2.1000E + 009数据:8.4500
更新放大器对象的属性。在MATLAB提示符下键入以下命令集以更新NetworkData.
那noisdata.
, 和nonlineardata.
放大器对象的属性与您在上一步中创建的数据对象:
amp.networkdata = netdata;amp.noisedata = nfdata;amp.nonlineardata = IP3Data;
您可以使用的是使用现有对象的一个或多个属性值得到
命令。
本节包含以下主题:
要检索对象的特定属性值,请使用得到
使用以下语法命令:
适当的价值=得到(h,propertyname.)
在哪里
适当的价值
是分配给属性的值。
H
是对象的句柄。
是指定属性名称的字符矢量。propertyname.
例如,假设您有以下同轴传输线:
h2 = rfckt.coaxial;
以下代码检索同轴传输线的内半径和外半径的值:
IR = GET(H2,'INSORADIUS')或= GET(H2,'OUTRERRADIUS')IR = 7.2500E-004或= 0.0026
要显示与特定对象关联的属性列表以及它们当前值,请使用得到
未指定属性名称的命令。
例如:
GET(H2)名称:'同轴传输线'排球:2分析:[] LineL长:0.0100 StubMode:'NotAstub'终止:'不适用'OuterRadius:0.0026内蒙古:7.2500E-004 MUR:1 EPSILONR:2.3000 LOSSTANGENT:0 SIGMACOND:INF.
笔记
此列表包括键入时未显示的只读属性套装(H2)
。对于同轴传输线对象,只读属性是名称
那排名
, 和分析方法
。这名称
和排名
属性由工具箱固定。这分析方法
在指定频率下分析组件时,工具箱计算并设置了属性值。
查询或修改属性值的替代方法是通过结构 - 类似的引用。RF对象的字段名称是属性名称,因此您可以使用类似结构语法检索或修改属性值。
存储值的价值适当的价值
=rfobj.propertyname.
财产的财产propertyname.
对象在RFOBJ.
多变的。此命令等同于适当的价值
。适当的价值
=得到(RFOBJ.
,'propertyname.
')
设置值rfobj.propertyname.
=适当的价值
财产propertyname.
为了适当的价值
目的。此命令等同于RFOBJ.
放(
。RFOBJ.
,'propertyname.
',适当的价值
)
例如,打字
ckt = rfckt.amplifier('intptype','立方');ckt.intptype.
提供财产的价值纯粹
对于电路对象CKT.
。
ans =立方体
相似地,
ckt.intptype ='linear';
将插值方法重置为线性。
您无需键入整个字段名称或使用大写字符。您只需要键入足以唯一才能识别属性名称的最小字符数。从而进入命令
ckt = rfckt.amplifier('intptype','立方');ckt.in.
也生产
ans =立方体