这个例子展示了如何分离两个相同的、无源的、对称的级联探针的s参数。
考虑一个被测设备连接到两个探头。为了去嵌入DUT的s参数,需要知道每个探针的s参数。为了准确的s参数的两个探头,校准是在实验室使用SOLT(短,开,负载,和通过)或TRL(通过,反射,线)测量完成的。但是,如果假设探测是相同的且对称的,那么可以使用这里描述的过程快速逼近s参数。
该文件connectedprobes.s2p
当两个探针直接连接时,包含s参数数据。
本例使用ABCD-parameters将测量到的s -参数数据平分为每个探针的数据。
当你级联两个网络时,你可以通过矩阵乘以两个独立网络的abcd参数来计算合并后网络的abcd参数。
图1:主网络和两个对称探头级联的网络
如果, 那么,
由上式,对主网的abcd参数取矩阵平方根,即可得到两个单独探头的abcd参数。
由于两个探测是相同的,因此可以计算任意一个探测的s参数。
创建一个sparameters
对象从Touchstone®数据文件connectedprobes.s2p
.
文件名=“connectedprobes.s2p”;S = sparameters(文件名);numports = S.NumPorts;频率= S.Frequencies;numfreq =元素个数(频率);z0 = S.Impedance;
创建一个零矩阵来存储探测器的abcd参数数据。
abcd_probe_data = 0 (numports numports numfreq);
为了计算探测器的s参数,你需要知道它工作的每个频率的s参数。转换提取的s参数connectedprobes.s2pABCD-parameters。然后计算abcd参数的矩阵平方根sqrtm
函数获取探针的abcd参数。将探针的abcd参数转换为s参数。
ABCD = abcdparameters(年代);为n = 1:numfreq abcd_meas = ABCD.Parameters(:,:,n);abcd_probe_data (:,:, n) = sqrtm (abcd_meas);结束ABCD_probe = abcdparameters (abcd_probe_data、频率);
从探测的计算的s参数数据创建一个s参数对象。
S_probe = sparameters (ABCD_probe z0);
对于这个示例,connectedprobes.s2p给出了该网络的s参数数据。
图2:由connectedprobes.s2p衍生的网络
将上述网络分成两个相同的网络,probe1和probe2.这些探针的s参数代表了预期的结果。
图3:相同的网络
R1 = 1;C1 = 1;R2 = 1;电路=电路(“probe1”);add(ckt,[2 2],电阻器R1) add(ckt,[2 4],电容C1) add(ckt,[2 3],电阻器R2)
计算探针1的期望s参数。
setports(ckt,[1 4],[3 4]) S_exp =参数(ckt,freq,z0);
图和比较预期的s参数probe1与用abcd参数计算的结果进行比较。
rfplot (S_exp)在rfplot (S_probe“——”)举行从文本({0.02,5日固体:预期的,“破灭:计算”})
级联的参数的probe1与自身使用cascadesparams
函数,并使用级联的s参数创建s参数对象。
S_combined = cascadesparams (S_probe S_probe);
图和比较s参数connectedprobes.s2p这些都是通过结合probe1计算出来的。
图rfplot(年代)在rfplot (S_combined“——”)举行从文本({0.02,5日固体:预期的,“破灭:计算”})
这里显示的程序不能代替传统的校准。我们将其作为使用RF Toolbox™和MATLAB™在数学上操纵网络参数的一个例子。
使用这种方法有一些限制。
没有保证的解决方案。有些矩阵没有平方根。
解决方案可能不是唯一的。通常,有两个或更多可行的矩阵平方根。