这个示例向您展示了如何直接使用rfdata
对象。首先,创建一个rfdata.data
对象通过读取存储在Touchstone®格式数据文件中的双端口无源网络的s参数,passive.s2p
.接下来,你创建一个电路对象,rfckt.amplifier
,并使用三个数据对象更新此对象的属性。
使用阅读
的方法rfdata.data
对象读取Touchstone数据文件passive.s2p
.该数据文件中的参数为频率为315khz ~ 6.0 GHz的2端口无源网络的50欧姆s参数。
数据= rfdata.data;data =读取(数据,“passive.s2p”)
data=rfdata.data带属性:Freq:[202x1-double]S_参数:[2x2x202-double]GroupDelay:[202x1-double]NF:[202x1-double]OIP3:[202x1-double]Z0:50.0000+0.0000i ZL:50.0000+0.0000i IntpType:“线性”名称:“数据对象”
使用提取
的方法rfdata.data
对象以获取其他网络参数。例如,以下是频率、75欧姆S参数和Y参数,它们是从中的原始50欧姆S参数转换而来的passive.s2p
数据文件。
[s_params,频率]=提取(数据,“S_PARAMETERS”, 75);y_params =提取(数据,“Y_PARAMETERS”);
使用RF实用程序功能,smithplot
在史密斯图表上绘制75欧姆S11。
s11 = s_params (1 1:);图smithplot(频率、s11 (:))
这里有四个75欧姆s参数和四个y参数在6.0 GHz,最后的频率。
f =频率(结束)
f = 6.0000 e + 09年
s = s_params (:,:,)
=2×2复合体-0.0764 - 0.5401i 0.6087 - 0.3018i 0.6094 - 0.3020i -0.1211 - 0.5223i
y = y_params (:,:,)
y =2×2复合体0.0210+0.0252i-0.0215-0.0184i-0.0215-0.0185i 0.0224+0.0266i
在这个例子中,你创建了一个电路对象,rfckt.amplifier
. 然后创建三个数据对象,并使用它们更新回路对象的特性。
的rfckt.amplifier
对象具有网络参数、噪声数据和非线性数据的属性:
NetworkData
是一个rfdata.network
对象为网络参数。
NoiseData
为噪声参数,可以是标量NF (dB),和rfdata.noise
,或者一个rfdata.nf
对象
NonlinearData
对于可以是标量OIP3(dBm)的非线性参数rfdata.power
,或者一个rfdata.ip3
对象
默认情况下,这些属性rfckt.amplifier
包含来自default.amp
数据文件。NetworkData
是一个rfdata.network
对象,包含50欧姆2端口S-Parameters在191频率范围从1.0 GHz到2.9 GHz。NoiseData
是一个rfdata.noise
对象,该对象包含1.9 GHz到2.48 GHz的9个频率的斑点噪声数据。的NonlinearData
参数是一个rfdata.power
包含销/撅嘴
2.1 GHz的数据。
amp = rfckt.amplifier
amp = rfckt.amplifierwith properties: NoiseData: [1x1 rfdata.noise] NonlinearData: [1x1 rfdata.power] IntpType: 'Linear' NetworkData: [1x1 rfdata.network] nPort: 2 AnalyzedResult: [1x1 rfdata.data] Name: 'Amplifier'
使用下面的代码来创建rfdata.network
对象,该对象包含2.08 GHz、2.10 GHz和2.15 GHz下放大器的2端口Y参数。在本例后面的部分中,将使用此数据对象更新NetworkData
放大器对象的属性。
F = [2.08 2.10 2.15] * 1.05 e9;y(:: 1) =[-.0090 -。0104我,.0013 + .0018i;-.2947 +。2961我,.0252 + .0075i];y(:: 2) =[-.0086 -。0047我,.0014 + .0019i;-.3047 +。3083我,.0251 + .0086i];y(:: 3) =[-.0051 +。0130i, .0017+.0020i; -.3335+.3861i, .0282+.0110i]; netdata = rfdata.network(“类型”,“Y_PARAMETERS”,“频率”F“数据”,y)
netdata = rfdata.network with properties: Type: 'Y_PARAMETERS' Freq: [3x1 double] Data: [2x2x3 double] Z0: 50.000 + 0.00000 i Name: 'Network parameters'
使用下面的代码来创建rfdata.nf
对象,其中包含放大器在1.93 GHz到2.40 GHz的七个频率下的噪声系数,单位为dB。在本例后面的部分中,将使用此数据对象更新NoiseData
放大器对象的属性。
F = [1.93 2.06 2.08 2.10 2.15 2.3 2.4] * 1.0e+009;Nf = [12.4521 13.2466 13.6853 14.0612 13.4111 12.9499 13.3244];nfdata = rfdata.nf (“频率”F“数据”,nf)
nfdata = rfdata。nf与属性:频率:[7x1 double]数据:[7x1 double]名称:'Noise figure'
使用下面的代码来创建rfdata.ip3
对象,该对象包含放大器的输出三阶截距点,在2.1 GHz时为8.45瓦。在本例的后面,将使用此数据对象更新NonlinearData
放大器对象的属性。
ip3data = rfdata.ip3 (“类型”,“OIP3”,“频率”2.1 e9,“数据”, 8.45)
ip3data=rfdata.ip3,带属性:类型:“OIP3”频率:2.1000e+09数据:8.4500名称:“三阶截获”
使用下面的代码用前面步骤中创建的三个数据对象更新放大器对象的属性。为了得到一个好的放大器对象,这些数据对象中的数据必须是准确的。这些数据可以通过射频测量或使用其他工具进行电路模拟获得。
amp.NetworkData = netdata;amp.NoiseData = nfdata;amp.NonlinearData = ip3data
amp=rfckt.AMPLICATER,其属性为:NoiseData:[1x1 rfdata.nf]非线性数据:[1x1 rfdata.ip3]IntpType:“线性”网络数据:[1x1 rfdata.network]nPort:2分析结果:[1x1 rfdata.data]名称:“放大器”