交叉耦合矩阵综合问题
录入:edatop.com 点击:
编程计算N阶耦合矩阵,基本都能算对,但是对于某些特殊参数会出现R1!=RN,大家又出现类似的情况么?
希望高手帮忙计算以下参数,看看是否能算出来。
参数为
ftz=[-1.2i -1.4i 1.4i 1.2i -1.05i 1.05i];传输零点
RL=20;%带内回波
N = 14; %滤波器阶数
我计算结果R1=0.6212,RN=0.9567.
理论结果为R1=RN=0.9567
希望高手帮忙计算以下参数,看看是否能算出来。
参数为
ftz=[-1.2i -1.4i 1.4i 1.2i -1.05i 1.05i];传输零点
RL=20;%带内回波
N = 14; %滤波器阶数
我计算结果R1=0.6212,RN=0.9567.
理论结果为R1=RN=0.9567
自己顶一下,有哪位高人帮忙算一下,感谢!
希望大家能帮帮忙,不清楚程序问题,还是matlab函数使用上的问题!
matlab里自带的留数函数residue在高阶计算时极点是不准确的(当两个极点很近时)。这导致了本不该出现的重极点出现了。综合出来的留数也就不对了。我自己编辑个程序计算留数,问题已解决。
达人啊!
你这是做滤波器么,还用到留数了,高深莫测啊,佩服佩服!
楼主的留数计算程序能否分享一下?
是啊,把留数代码分享下贴出来吧,
其实matlab留数计算程序还是很好的,只是精度不是太高,它的精度可以通过改参数来实现,具体方法:
在residu.m中,修改参数
tol = 1E-5; %0.001; % Repeated-root tolerance; adjust as needed.
将tol由原来的0.001改为1E-5,则计算精度就又高了
呵呵,这样改的效果并不怎么好的
我用的matlab自带的程序计算出来的R1=RN=0.9567
我觉得楼主程序有问题的可能性很大,因为精度问题不会让R1和RN偏差那么大
上一篇:同轴腔体滤波器问题
下一篇:求助22.4GHz滤波器