Azzera filtri
Azzera filtri

How to plot magnitude and phase spectrum of the function

12 visualizzazioni (ultimi 30 giorni)
Hye i really confuse on how much method to write the code to plot magnitude and phase. Below is my function.
X(z)=z / (z-1)^2
Any idea how to start beside plot?

Risposta accettata

Star Strider
Star Strider il 16 Giu 2020
Try this:
z = tf('z');
X = z / (z-1)^2;
bode(X)
.
  6 Commenti
MUHAMMAD RAHMAT ASMAT
MUHAMMAD RAHMAT ASMAT il 16 Giu 2020
Hye sorry to bother again, but i just raelize that after i amplify the signal and try to z transform it, it give me the ans, but i think it was not correct. Maybe my code is not accurate or vise versa.
>> d=decimate(p2,500);
>> amp=10*d;
>> syms amp %from here i think my z transform it not valid
>> f=amp;
>> ztrans(f)
ans =
z/(z - 1)^2
i need to calculate the spectrum of the decimated signal using Z-transform technique
Star Strider
Star Strider il 16 Giu 2020
I have no idea what you are doing, and I cannot run your code. I cannot imagine how you get a transfer function straight out of a decimated signal, or what ‘calculate the spectrum of the decimated signal using Z-transform technique’ refers to.
If you are estimating a transfer function from the input to and output of a discrete (sampled) system in either the time-domain or frequency-domain, you can either use the System Identification Toolbox functions (there are several that could apply), or the Signal Processing Toolbox invfreqz function. You will need to experiment with whatever functions you choose to use to get the result you want.
.

Accedi per commentare.

Più risposte (2)

Deepak Gupta
Deepak Gupta il 16 Giu 2020
Star Strider has given the answer but just FYI:
X = tf([1 0], [1 -2 1]);
bode(X), grid
This will work too.
You can know more about bode plots here:
  3 Commenti
Star Strider
Star Strider il 16 Giu 2020
Note that this creates a s-domain function, not a z-domain function.
Deepak Gupta
Deepak Gupta il 16 Giu 2020
It creates z-tranfer too. If we give sampling period 0.1s then you will get same result. i.e. tf([1 0], [1 -2 1], 0.1)

Accedi per commentare.


Usman
Usman il 4 Dic 2023
Validate magnitude and phase spectrum for x(t) = e−atu(t) for a > 1 and 0 < a < 1. write code for matlab

Community Treasure Hunt

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

Start Hunting!

Translated by