I\'m not sure if I am doing this correctly. Given that h(n) is asummed to be a c
ID: 3348849 • Letter: I
Question
I'm not sure if I am doing this correctly.
Given that h(n) is asummed to be a causal system inpulse response with
I am to determine the poles, ROC and state whether the system is stable.
The answer I got was:
The poles are 1/3 and 1/2.
The system is stable because the unit circle falls in the ROC.
Then I am to determine the partial expansion (find A and B) and determine h(n) using the table.
I was able to find that A = 1/15 and B = 1/2.
and using the table I found h(n) to be
Then, I am to compare the result by using Matlab filter function as the below.
b = [1]; a = [6 -1 -1];
[delta,n1] = impseq(0,0,10);
xb1 = filter(b,a,delta);
[u,n2]=stepseq(0,0,10);
xb2= (1/15)*((1/3).^n2).*u + (1/2)*((-1/2).^n2).*u
result:
xb1 =
0.1667 0.0278 0.0324 0.0100 0.0071 0.0029 0.0017 0.0008 0.0004 0.0002 0.0001
xb2 =
0.5667 -0.2278 0.1324 -0.0600 0.0321 -0.0154 0.0079 -0.0039 0.0020 -0.0010 0.0005
xb1 and xb2 should be identical but I am getting two different sets of coefficients. What am I doing wrong?
Explanation / Answer
The inverse partial fractions that you have calculated are a little bit off from the correct values. I have given below the correct partial fraction values.
H(z) = (1/15) / (1+(1/3)z^-1) + (1/10) / (1-(1/2)z^-1)
I have implememented the program as below.
clc;
close all;
clear all;
b = [1];
a = [6 -1 -1];
n = (0:10)';
u = (n==0); % Unit impulse sequence
xb1 = filter(b,a,u)
xb2 = (1/15)*((-1/3).^n) + (1/10)*((1/2).^n)
RESULT:
xb1 =
0.1667
0.0278
0.0324
0.0100
0.0071
0.0029
0.0017
0.0008
0.0004
0.0002
0.0001
xb2 =
0.1667
0.0278
0.0324
0.0100
0.0071
0.0029
0.0017
0.0008
0.0004
0.0002
0.0001