这个示例展示了如何使用大小、平均值和标准偏差(STD)对一组s参数数据文件执行统计分析。
首先,读取12个s参数文件,这些文件代表12个类似的射频滤波器到MATLAB®工作空间并绘制它们。接下来,绘制和分析这些滤波器的通带响应,以确保它们满足统计规范。
使用内置的RF工具箱™函数读取一组S-Parameter数据文件。对每个滤波器绘制S21 dB值。文件名称为AWS_Filter_1。通过AWS_Filter_12.s2p s2p。这些文件代表了12个具有类似规范的通带滤波器。
numfiles = 12;文件名=“AWS_Filter_”+ (1: numfiles) +“.s2p”;%建立文件名S = sparameters(文件名(1));%读取文件#1进行初始设置频率= S.Frequencies;%所有文件的频率值是相同的numfreq =元素个数(频率);%频率点个数s21_data = 0 (numfreq numfiles);%预分配速度s21_groupdelay = 0 (numfreq numfiles);%预分配速度读取试金石文件为n = 1:numfiles S = parameter (filename(n));s21 = rfparam (2, 1);s21_data (:, n) = s21;s21_groupdelay (:, n) = groupdelay(年代,频率,2,1);结束s21_db = 20 * log10 (abs (s21_data));图绘制(频率/ 1 e9 s21_db)包含(“频率(GHz)”) ylabel (滤波器响应(dB)的)标题(“12个滤光片的传输性能”)轴在网格在
在本节中,查找、存储和绘制来自AWS下行频带(2.11 - 2.17 GHz)的S21数据。
Idx = (freq >= 2.11e9) & (freq <= 2.17e9);s21_pass_data = s21_data (idx:);s21_pass_db = s21_db (idx:);freq_pass_ghz =频率(idx) / 1 e9;%正常化到GHz情节(freq_pass_ghz s21_pass_db)包含(“频率(GHz)”) ylabel (滤波器响应(dB)的)标题(“12个滤波器的通频带变化”)轴([min(freq_pass_ghz) max(freq_pass_ghz) -1 0])网格在
为确定数据是否服从正态分布,是否存在离群值,对所有通频带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 =性病(abs_S21_pass_freq (:))
std_abs_S21 = 0.0104
计算每个频率点的通频带幅度响应的平均值和标准差。这决定了数据是否符合正态分布。
mean_abs_S21_freq =意味着(abs_S21_pass_freq, 2);std_abs_S21_freq =性病(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”) plot(freq_pass_ghz,mean_abs_S21_freq - 2*std_abs_S21_freq,“k”)传说(“的意思是”,“意思是+ 2 *性病”,“的意思是- 2 *性病”)情节(freq_pass_ghz abs_S21_pass_freq,“c”,“HandleVisibility”,“关闭”网格)在轴([min(freq_pass_ghz) max(freq_pass_ghz) 0.9 1]) ylabel(“S21级”)包含(“频率(GHz)”)标题(“S21(震级)-统计分析”)举行从
绘制通频带大小数据的直方图。这决定了数据的上限和下限是否符合正态分布。
histfit (abs_S21_pass_freq(:))网格在xlabel([0.8 10 100])“S21级”) ylabel (“分布”)标题(“比较滤波器通带响应与正态分布”)
获取通带S21数据的组延迟。使用内60%的带宽对群延迟进行统计分析,并将其归一化为10 ns。
Idx_gpd = (freq >= 2.13e9) & (freq <= 2.15e9);freq_pass_ghz_gpd =频率(idx_gpd) / 1 e9;%正常化到GHzs21_groupdelay_pass_data = s21_groupdelay (idx_gpd:) / 10 e-9;%正常化到10 ns
计算归一化组延迟响应的每频率平均值和标准偏差。所有的数据被收集到一个单一的矢量,用于alter分析。
mean_grpdelay_S21 =意味着(s21_groupdelay_pass_data, 2);std_grpdelay_S21 =性病(s21_groupdelay_pass_data 0 2);all_grpdelay_data =重塑(s21_groupdelay_pass_data。”元素个数(s21_groupdelay_pass_data), 1);
将所有归一化频带群延迟数据作为频率的函数绘制出来,包括基本统计分析定义的上下限。
情节(freq_pass_ghz_gpd mean_grpdelay_S21,“米”)举行在情节(freq_pass_ghz_gpd mean_grpdelay_S21 + 2 * std_grpdelay_S21,“r”) plot(freq_pass_ghz_gpd,mean_grpdelay_S21 - 2*std_grpdelay_S21,“k”)传说(“的意思是”,“意思是+ 2 *性病”,“的意思是- 2 *性病”)情节(freq_pass_ghz_gpd s21_groupdelay_pass_data,“c”,“HandleVisibility”,“关闭”网格)在xlim ([min (freq_pass_ghz_gpd)马克斯(freq_pass_ghz_gpd)]) ylabel ('归一化群延迟S21')包含(“频率(GHz)”)标题('S21(归一化组延迟)-统计分析')举行从
绘制归一化通频带组延迟数据的直方图。这决定了数据的上限和下限是否遵循均匀分布。
直方图(all_grpdelay_data 35)网格在包含('组延迟S21(秒)') ylabel (“分布”)标题(“归一化组延迟直方图”)
对通频带S21数据的大小进行方差分析。
freq_pass_ghz anova1 (abs_S21_pass_freq。');
ylabel (“S21级”)包含(“频率(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};标题(“通过频带S21幅度响应的方差分析”网格)在
对归一化组延迟通频带S21数据进行方差分析。
freq_pass_ghz_gpd anova1 ((s21_groupdelay_pass_data)。');
ylabel ('归一化群延迟S21')包含(“频率(GHz)”) ax2 = gca;ax2。XTick = 0.5:4:40.5;ax2。XTickLabel = {2.13, 2.132, 2.134, 2.136, 2.138, 2.14, 2.142, 2.144, 2.146, 2.148, 2.15};标题(通频带S21组延迟(归一化)的方差分析网格)在