【发布时间】:2026-01-20 03:40:01
【问题描述】:
我正在使用不同的运算放大器电路进行实验,我需要将我的测量结果绘制到图表上。我有两个数据集:
freq1 = [.1 .2 .5 .7 1 3 4 6 10 20 35 45 60 75 90 100]; %kHz
Vo1 = [1.2 1.6 1.2 2 2 2.4 14.8 20.4 26.4 30.4 53.6 68.8 90 114 140 152]; %mV
V1 = 19.6;
Acm = Vo1/(1000*V1);
还有:
freq2 = [.1 .5 1 30 60 70 85 100]; %kHz
Vo1 = [3.96 3.96 3.96 3.84 3.86 3.88 3.88 3.88]; %V
V1 = .96;
Ad = Vo1/(2*V1);
(我会展示我的情节,但显然我需要更多的代表)
我需要绘制方程,CMRR 与频率:
CMRR = 20*log10(abs(Ad/Acm));
Ad 和Acm 的大小不同,频率点不匹配,但两者的边界是相同的,100Hz 到 100kHz(x 轴)。在CMRR这一行,Matlab说Ad和Acm矩阵维度不一致。
我想如何解决这个问题是使用 freq1 作为 CMRR 的 x 轴,然后根据 freq1 上的值从 Ad 获取近似点。
或者我可以对 Ad 和 Acm 进行函数逼近,然后对它们进行除法运算符。
我不知道如何编写这两个想法。任何其他想法都会有所帮助,尤其是更简单的想法。
【问题讨论】:
-
如果您使用 / 运算符,则 Matlab 假定您希望将矩阵彼此相除。您应该使用 ./ 逐个元素地划分向量 Ad 和 Acm 元素。但是你不会绕过将一个向量插值到另一个向量的频率点。
标签: matlab dataset approximation