数据分析上的RF过滤一组S参数

这个例子展示了如何对一组s参数数据文件执行统计分析。首先,将代表12个类似RF滤波器的12个s参数文件读入MATLAB工作空间并绘图。接下来,绘制并分析这些滤波器的通带响应,以确保它们满足统计规范。

阅读S参数从筛选数据文件

使用内置的RF工具箱函数读取一组s参数数据文件。对于每个过滤器,收集并绘制S21原始值和S21 dB值。文件的名称是AWS_Filter_1。通过AWS_Filter_12.s2p s2p。这些文件表示具有类似规格的12个通带滤波器。

numfiles = 12;文件名=“AWS_Filter_”+ (1:numfiles) +“.s2p”;%建立文件名S = S参数(文件名(1));%读取文件#1的初始设置FREQ = S.Frequencies;频率值对于所有文件都是相同的numfreq =元素个数(频率);频率点的数目s21_data =零(numfreq,numfiles);%的速度预分配%读取文件试金石n = 1时:numfiles S = S参数(文件名(N));S21 = rfparam(S,2,1);s21_data(:,N)= S21;结束s21_db = 20 * log10 (abs (s21_data));图绘制(频率/ 1 e9 s21_db)包含(“频率(GHz)”)ylabel(滤波器响应(dB)的)标题(“的12层的过滤器传输性能”)轴

滤波器通带可视化

在本节中,查找、存储和绘制来自AWS下行频带(2.11到2.17 GHz)的S21数据。

IDX =(频率> = 2.11e9)&(频率<= 2.17e9);s21_pass_data = s21_data(IDX,:);s21_pass_db = s21_db(IDX,:);freq_pass_ghz =频率(IDX)/ 1E9;%正常化到GHz图(freq_pass_ghz,s21_pass_db)xlabel(“频率(GHz)”)ylabel(滤波器响应(dB)的)标题(“12个滤波器的通带变化”)轴([最小(freq_pass_ghz) max(freq_pass_ghz) -1 0])网格

在S21基本数据统计分析

对所有通带S21数据集的幅度和相位进行统计分析。这决定了数据是否服从正态分布,以及是否存在离群数据。

abs_S21_pass_freq = ABS(s21_pass_data);

计算整个通带S21数据集的大小的平均值和标准偏差。

mean_abs_S21 =平均值(abs_S21_pass_freq,“所有”)
mean_abs_S21 = 0.9289
std_abs_S21 = std (abs_S21_pass_freq(:))
std_abs_S21 = 0.0104

计算在每个频率点处的通带幅度响应的平均值和标准偏差。这个确定数据遵循正态分布。

mean_abs_S21_freq =意味着(abs_S21_pass_freq, 2);std_abs_S21_freq = std (abs_S21_pass_freq,0,2);

绘制所有的原始通带幅度数据作为频率的函数,以及由基本的统计分析所定义的上限和下限。

图(freq_pass_ghz,mean_abs_S21_freq)保持;情节(freq_pass_ghz mean_abs_S21_freq + 2 * std_abs_S21_freq,“r”)图(freq_pass_ghz,mean_abs_S21_freq  -  2 * std_abs_S21_freq,数k)传说('意思',“意思是+ 2 *性病”,“的意思是- 2 *性病”)情节(freq_pass_ghz abs_S21_pass_freq,“c”,“HandleVisibility”,“关”)网格axis([min(freq_pass_ghz) max(freq_pass_ghz) 0.9 1]);ylabel (“震级S21”)xlabel(“频率(GHz)”)标题(“S21(震级)-统计分析”)保持

为通带幅度数据绘制直方图。这决定了数据的上下限是否服从正态分布。

histfit (abs_S21_pass_freq(:))网格轴([0.8 10 100])xlabel(“震级S21”)ylabel(“分布”)标题(比较滤波器通带响应和正态分布)

计算通带S21数据的相位响应,然后计算相位响应的单位频率均值和标准偏差。然后将所有的通带S21相位数据收集到单个矢量中进行分析。

pha_s21 =角(s21_pass_data) * 180 /π;mean_pha_S21 =意味着(pha_s21, 2);std_pha_S21 =性病(pha_s21 0 2);all_pha_data =重塑(pha_s21。”元素个数(pha_s21), 1);

绘制所有原始通带相位数据作为频率的函数,以及由基本统计分析定义的上下限。

情节(freq_pass_ghz mean_pha_S21)图(freq_pass_ghz,mean_pha_S21 + 2 * std_pha_S21,“r”) plot(freq_pass_ghz,mean_pha_S21 - 2*std_pha_S21,数k)传说('意思',“意思是+ 2 *性病”,“的意思是- 2 *性病”)图(freq_pass_ghz,pha_s21,“c”,“HandleVisibility”,“关”)网格max(freq_pass_ghz) -180 180]) ylabel(“S21阶段”)xlabel(“频率(GHz)”)标题('S21(相位) - 统计分析')保持

绘制通频带相位数据的直方图。这决定了数据的上下限是否服从均匀分布。

直方图(all_pha_data 35)网格轴([ -  180 180 0 100])xlabel('相S21(度)')ylabel(“分布”)标题(“滤波器相位响应直方图”)

在S21数据的方差分析

对星等和相位通频带数据进行方差分析。

的anoval(abs_S21_pass_freq',freq_pass_ghz。);

ylabel (“震级S21”)xlabel(“频率(GHz)”) ax1 = gca;ax₁。XTick = 0.5:10:120.5;ax₁。XTickLabel = {2.11,'',2.12,'',2.13,'',2.14,'',2.15,'',2.16,''2.17};标题(“方差分析通损耗(ANOVA)”)网格

的anoval(pha_s21',freq_pass_ghz。);

ylabel ('相S21(度)')xlabel(“频率(GHz)”) ax2 = gca;ax2。XTick = 0.5:10:120.5;ax2。XTickLabel = {2.11,'',2.12,'',2.13,'',2.14,'',2.15,'',2.16,''2.17};标题(通带相位响应方差分析(ANOVA))网格

适合相位数据,以一阶多项式

执行使用线性回归模型S21相位数据的曲线拟合。

phase_s21_fit =适合(repmat (freq_pass_ghz numfiles 1) all_pha_data,'POLY1')
phase_s21_fit =线性模型POLY1:phase_s21_fit(X)= P1 * X + P2系数(具有95%置信界限):P1 = -310.8(-500.9,-120.6)P2 = 665.3(258.3,1072)