Create a transfer function that looks like a polynomial

조회 수: 4 (최근 30일)
Heraldo Tello
Heraldo Tello 2020년 11월 5일
편집: Ameer Hamza 2020년 11월 5일
Hello everyone I have a function called C
C=inv(Psi'*Psi)*Psi'*E1;
The challege I am having is creating a transfer function from C called filterC that looks like the picture that is attached.
Note the picture attached is an example. My values will be different.
whenever I do prefilter=tf(C) I get values like in row form
Prefilter=tf(C)
Prefilter =
From input to output...
1: -0.8673
2: 0.3917
3: 0.2832
4: -0.6459
5: -0.08966
Static gain.
How can I get my transfer function to look similar to this?
Am I doing something wrong?
Any help is greatly appreciated.

채택된 답변

Ameer Hamza
Ameer Hamza 2020년 11월 5일
편집: Ameer Hamza 2020년 11월 5일
If you have filter cofficient, then you need to pass following options to tf()
C = [1 -1.047 0.558 0.2608 -0.7408 0.09526];
sys = tf(C, 1, .01, 'variable', 'z^-1')
Result
>> sys
sys =
1 - 1.047 z^-1 + 0.558 z^-2 + 0.2608 z^-3 - 0.7408 z^-4 + 0.09526 z^-5
Sample time: 0.01 seconds
Discrete-time transfer function.
Note that, in this case, C must be a row vector.
In your question, you are using C as a column vector; therefore, you are getting five transfer functions with static gains.
  댓글 수: 3
Heraldo Tello
Heraldo Tello 2020년 11월 5일
편집: Heraldo Tello 2020년 11월 5일
I believe it should look like this
filterC = 1 - 0.8673 z^-1 + 0.3917 z^-2 + 0.2832 z^-3 + 0.6459 z^-4 + 0.08966 z^-5
Ameer Hamza
Ameer Hamza 2020년 11월 5일
편집: Ameer Hamza 2020년 11월 5일
You can make it like this by adding a 1 at the beginning of cofficients vector
filterC=tf([1 C'], 1, .01, 'variable', 'z^-1')

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Star Strider
Star Strider 2020년 11월 5일
Since it is a ‘static gain’ object, it acts just like a simple amplifier. It has no frequency-dependent characteristics, so it has no variable associated with it.

카테고리

Help CenterFile Exchange에서 Classical Control Design에 대해 자세히 알아보기

제품


릴리스

R2015b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by