How to matlab z-transform of x(n)=((4/3)^n) u(1-n)

40 visualizaciones (últimos 30 días)
John Bravo
John Bravo el 21 de Sept. de 2018
Comentada: John D'Errico el 12 de Nov. de 2022
How to matlab z-transform of x(n)=((4/3)^n) u(1-n) by using symbolic math toolbox
  2 comentarios
Dimitris Kalogiros
Dimitris Kalogiros el 21 de Sept. de 2018
x(n) seams to be a non-causal signal. It's values are zeros for n>1 and they are not, for n=<1...
Are sure you have formulated your question without any typo ?
John Bravo
John Bravo el 21 de Sept. de 2018
yes its from here

Iniciar sesión para comentar.

Respuestas (1)

Dimitris Kalogiros
Dimitris Kalogiros el 21 de Sept. de 2018
Symbolic math toolbox, calculates only unilateral z transform. So, we have to use some properties in order to calculate what you ask. Because, you ask a bilateral z-transform
First, I will break your time-series into two parts : one for -inf<n<=0 and the other for 0<n<2.
Then, in order to calculate bilateral z-transform of the first time-series, we must use the "time reversal" property of z-transform.
You can study all these here: z transform properties
clearvars; clc; close all;
% u(t) : 0 for n<0 and 1 for n>=0
oldparam = sympref('HeavisideAtOrigin',1);
syms n z
assume(n, 'integer');
%%time series
x(n)=((4/3)^n)*heaviside(1-n);
% break into two time series
x1(n)=( (4/3)^n )* heaviside(-n)
x2(n)=( (4/3)^n )* (heaviside(n-1)-heaviside(n-2))
% plot time series
ntest=-8:1:8;
subplot(2,1,1); stem(ntest, x(ntest), 'b^');
title(texlabel(x(n))); xlabel('n'), ylabel('x(n)');
subplot(2,1,2); stem(ntest, x1(ntest), 'ro'); hold on;
subplot(2,1,2); stem(ntest, x2(ntest), 'g*','Color', [0 .5 0]);
legend('x1', 'x2'); title('decomposition to x1(n), x2(n)');
%%z-transform of x1(n)
% create "time reversed" version
x1r(n)=subs(x1(n),n,-n);
% z-transform of x1r(n)
X1r(z)=simplifyFraction( ztrans(x1r(n),n,z) );
% z-transform of x1(n)
X1(z)=simplifyFraction( subs(X1r(z),z,z^-1) );
%%z-transform of x2(n)
X2(z)=simplifyFraction( ztrans(x2(n)) );
%%calculation of z-transform of x(n)
X(z)=X1(z)+X2(z)
And here you are, what you get, when you execute the above script:
  2 comentarios
AlireaA Mirrabie
AlireaA Mirrabie el 12 de Nov. de 2022
Sir you're a life saver
John D'Errico
John D'Errico el 12 de Nov. de 2022
No. You are not a life saver, but someone who is teaching a student that Answers is here as a service to do their homeowrk, when no effort was shown or made. Please do not answer obvious homework assignments for Students. That hurts the student, because now this student will vome to believe they can continue posting their homework assignments on Answers. It hurts Answers, because now other students will think they too have the right to get their assignments done for them on Answers.

Iniciar sesión para comentar.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by