2017-04-23 13 views
1

2つの異なるモードで同じ離散伝達関数を作成しました。それから私は同じ入力に対してそれらをシミュレートしました。異なる結果を持つ離散伝達関数のシミュレーション

結果が異なるのはなぜですか?両者の違いは何ですか?

コード:

close all;clear;clc; 
Ts=0.001; 
t = 0:Ts:10; 
%input 
u=rand(length(t),1); 
%1st TF 
test_tf=c2d(tf([8 18 32],[1 6 14 24]),Ts); 
y=lsim(test_tf,u,t); 
%2nd TF 
test_d_tf=tf([0.007985 -0.01595 0.007967],[1 -2.994 2.988 -0.994],Ts); 
y_d=lsim(test_d_tf,u,t); 
%plotting 
plot(t,u,'k:',t,y,'b-',t,y_d,'r--'); 

とその結果は次のとおりです。

全体のシミュレーション間隔:

entire simulation interval

ズームし:

zoomed

答えて

0

私の推測では、TFSは、実際には同じではありませんので、彼らは唯一のためのフォーマットのそれを見ている:

>>format long 
>>test_d_tf.Numerator{1} 
ans = 
    0 0.007985000000000 -0.015950000000000 0.007967000000000 
>> test_tf.Numerator{1} 

ans = 
    0 0.007985016651180 -0.015952055311304 0.007967070564278 
+0

はい、あなたは右に持っています。どうもありがとうございました。 – mgc8cgm

関連する問題