is this expression right in MATLAB?

조회 수: 4 (최근 30일)
Aisha Mohamed
Aisha Mohamed 2022년 8월 2일
댓글: Jeffrey Clark 2022년 8월 6일
I know when I want to write the polynomial f(z) = (0.0001) + (0.0174)z + (0.9999)z2 in MATLAB it will be in this form
p=[(0.9999) (0.0174) (0.0001) ] that means I have to start from the coifficient of the higest degree'
My question is when this function take this form
f(1/z) = (0.0001)z−1 + (0.0087)z−2 + (0.9999)z−3
I wrote it in MATLAB in this form p1=[(0.9999) (0.0087) (0.0001) ] is it correct please?
because I see f(1/z) is in the third degree?
I appreciate any help

답변 (1개)

Jeffrey Clark
Jeffrey Clark 2022년 8월 6일
@Aisha Mohamed, what you are looking for is known as a Laurent polynomial - Wikipedia. The MATLAB Wavelet Toolbox has functions and definition of this, but I dont have that toolbox. If you do see Create Laurent polynomial - MATLAB (
  댓글 수: 2
Torsten 2022년 8월 6일
The function
f(1/z) = (0.0001)*z^(1) + (0.0087)*z^(2) + (0.9999)*z^(3)
is equal to the simple polynomial
P(z) = (0.0001)*z + (0.0087)*z^2 + (0.9999)*z^3
Jeffrey Clark
Jeffrey Clark 2022년 8월 6일
@Aisha Mohamed, did you mean what @Torsten believes, that the z used within the function in the f (your f(1/z)) polynomial already be the reciprocal of the values pluged into the P (your first f) polynomial? I guess that in either case as long as you correct the results or inputs where the polynomial function is used with Polynomials - MATLAB & Simulink ( you should be OK.

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


Help CenterFile Exchange에서 Polynomials에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by