主要内容

指定或导入组件数据

rf对象属性

对象属性指定对象的行为。您可以指定对象属性,或者您可以从数据文件导入它们。要了解特定类型的电路,数据或模型对象的特定属性,请参阅该类型对象的参考页面。

笔记

RF电路对象RF数据对象RF模型对象部分列出了可用的对象类型,并提供链接到他们的参考页面。

设置属性值

您可以在构造对象时指定对象属性值,也可以修改现有对象的属性值。

本节包含以下主题:

指定建筑的财产值

要在构建对象时设置属性,请在对象构造命令的参数列表中包含一个或多个属性/值对的逗号分隔列表。属性/值对包括参数'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)

使用数据对象设置电路对象属性

在此示例中,您可以创建一个电路对象。然后,您创建三个数据对象并使用它们来更新电路对象的属性。

  1. 创建放大器对象。这个电路对象,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]
  2. 创建存储网络数据的数据对象。在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
  3. 创建存储噪声数据值的数据对象。在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双]
  4. 创建存储输出三阶拦截点的数据对象。在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
  5. 更新放大器对象的属性。在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 =立方体

相关话题