数学建模社区-数学中国

标题: 传递函数相乘之后再画波特图就不对了,什么鬼 [打印本页]

作者: sarcophile    时间: 2019-3-17 18:11
标题: 传递函数相乘之后再画波特图就不对了,什么鬼
ttt = tf431*tfOutFtr( S7 N+ ~6 H' E5 `( @2 `/ Y
tfttt = TransferFunctionModel[ttt, s]4 }0 v* D; c6 d; ]$ t  g% K
BodePlot[tfttt, {0.1, 100000}, {StabilityMargins -> True}, {PlotTheme -> "Detailed"}, {ImageSize -> globalImageSize}]8 d' u: V  z: v9 r
" N/ M( y  L7 ?9 H
其中第一行的 tf431 和 tfOutFtr 都是前面计算好的 (s 的函数),分别用TransferFunctionModel 转化后画波特图也没问题。但是用上面这三行程序,先相乘之后再画波特图,与分开画的波特图然后相加的结果不相等。如1Hz时tf431和tfOutFtr分别是15.6和31.0,上面三行画出来的应该是46.6,但是实际画出来大约是274,相差很多,还验证了10Hz,1000Hz也不对,但是10khz差不多3 o8 d# q9 r4 a7 J2 \; ~8 x2 @; Y& H
% \8 S3 R, \& x# z7 W( s
附件 try2.nb是完整的文件
1 s$ d1 v2 ]  p9 L2 lt.nb是专门编了一个简单的例子,用了两个简单的传函然后相乘,就没问题。相乘后的传函每一点的幅值都等于相乘前两个幅值相加。 t.nb (566.88 KB, 下载次数: 0)
5 T& x9 X  e, \' g3 W' k* { Try2.nb (963.72 KB, 下载次数: 0) ) [$ n7 F, j8 n$ F

9 K' g3 N2 ~6 N# b) L
2 I6 ^) O+ l. q" o2 B: d1 k0 Z- Z* w- g* H0 B0 ?( A, O$ n* h# O





欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5