Kelompok : B_04
Restu Maulana A (22151000460
Ilham Adi W (2215100050)
Bernardus Rio H (2215100058)
Ilham Wicaksono (2215100063)
Fachrul Dwi C (2215100068)
MODUL 2
SISTEM WAKTU KONTINYU DAN DISKRIT: REPRESENTASI
DOMAIN WAKTU
Simulasi Sistem Waktu Kontinyu
Program 2.1
Representasi Sinyal Kontinyu
% Program P2_1 %pengenalan syms clear; clf; syms f(t); f(t)=t^2-1; pretty(f(t)); ezplot(f(t));xlabel('Time index t'); ylabel('fungsi'); title('Fungsi t^2-1');
axis([-10 10 -2 10]);
Tugas Modul:
b Buatlah fungsi eksponensial, sinusoidal dan unit step menggunakan script diatas
Exponensial
Unit Step
Program 2.2 Menyelesaikan persamaan differensial dengan syms
% Program P2_2%Persamaan differensial
clear; clf;
eps=-0.00000001;
syms x(t) ys(t) y(t);
x(t)=heaviside(t)*exp(-2*t); dys=diff(ys); y(t)=dsolve(ys+3*dys+2*diff(ys,2)==x,ys(eps)==0,dys(eps)==0) ; pretty(y(t)); Tugas Modul:
b. Selesaikan persamaan y(t)+5´y(t)=u(t) , dengan u unit step eps=-0.00000001;
syms x(t) ys(t) y(t);
x(t)=heaviside(t)*exp(-2*t); dys=diff(ys);
y(t)=dsolve(ys+5*dys==heaviside(t)); pretty(y(t));
Program 2.3 Linearitas Sistem
2.3.1
% Program P2_3_1
clear; clf;
syms x(t) ya(t) yb(t) x1(t) x2(t) y1(t) y2(t) ys(t) e; x1(t)=sin(10*pi*t);
x2(t)=cos(12*pi*t); x=x1+2*x2;
ya(t)=dsolve(ys+2*diff(ys)==x,ys(0)==0); %baris ke-8
subplot(3,1,1); ezplot(ya);
y1(t)=dsolve(ys+2*diff(ys)==x1,ys(0)==0); %baris ke-11
y2(t)=dsolve(ys+2*diff(ys)==x2,ys(0)==0); %baris ke-12
yb=y1+2*y2; subplot(3,1,2); ezplot(yb); e=ya-yb; subplot(3,1,3); ezplot(e);
Tugas Modul:
a. Run dan Tampilkan hasil script diatas.
b. Dilihat dari nilai, apakah ya dan yb keduanya sama? Jawab: Sama
c. Dilihat dari grafik apakah ya dan yb keduanya sama? Jawab: Sama
d. Apakah Sistem Linier?
Jawab: Ya. Karena input x3(t)=x1(t)+x2(t) menghasilkan outuput y3(t)=y1(t)+y2(t)
e. Pada baris ke 8,11 dan 12, apabila kondisi awal ys(0)==0 diganti ys(0)==1, apakah sistem tetap linier?
Tidak, karena grafik ya dan yb berbeda
2.32
% Program P2_3_2
clear; clf;
syms x(t) ya(t) yb(t) x1(t) x2(t) y1(t) y2(t) ys(t) e; x1(t)=exp(-2*t); x2(t)=exp(-5*t); x=x1+x2; ya=x^2; subplot(3,1,1); ezplot(ya); axis([0 3 0 6.2]); y1=x1^2; y2=x2^2; yb=y1+y2; subplot(3,1,2); ezplot(yb); axis([0 3 0 6.2]); e=ya-yb; subplot(3,1,3); ezplot(e); axis([0 3 0 6.2]); Tugas Modul:
Tidak
Program 2.4 Time Variant-Invariant
2.4.1
% Program P2_4_1
clear; clf;
eps=-0.00001;
syms x(t) ya(t) yb(t) ys(t) e; x(t)=exp(-2*t)*heaviside(t); ya(t)=dsolve(ys+diff(ys)==x,ys(eps)==0);%baris ke 7 subplot(3,1,1); ezplot(ya); axis([0 3 0 0.5]); yb(t)=dsolve(ys+diff(ys)==x(t-1),ys(eps)==0); %baris ke 11 subplot(3,1,2); ezplot(yb); axis([0 3 0 0.5]); e(t)=ya(t-1)-yb(t); subplot(3,1,3); ezplot(e); Tugas Modul:
a. Run dan Tampilkan hasil script diatas. Jawab:
b. Dilihat dari nilai, apakah ya dan yb keduanya sama? Jawab: Sama
c. Dilihat dari grafik apakah ya dan yb keduanya sama? Jawab: Tidak, yb adalah ya yang terdelay 1
d. Apakah Sistem Time-Invariant?
Jawab: Iya, karena meski terdelay nilainya tetap
e. Pada baris ke 7 dan 11 apabila kondisi awal ys(0)==0 diganti ys(0)==1, apakah sistem tetap Time-Invariant?
Jawab: Sistem Tidak Time-Invariant, karena state awal dan input tidak sama
2.4.2
clear; clf;
eps=-0.00001;
syms x(t) ya(t) yb(t) ys(t) e tau; x(t)=exp(-2*t)*heaviside(t); ya(t)=int(x(tau)*tau,tau,0,t); subplot(3,1,1); ezplot(ya); axis([0 3 0 0.5]); yb(t)=int(x(tau-1)*tau,tau,0,t); subplot(3,1,2); ezplot(yb); axis([0 3 0 0.5]); e(t)=ya(t-1)-yb(t); subplot(3,1,3); ezplot(e); Tugas Modul:
f. Run dan Tampilkan hasil script diatas, apakah sistem diatas Time-Invariant?
Sistem tidak Time-Invariant.
2.5 Konvolusi
% Program 2_5 % konvolusi
syms x(t) h(t) y(t) tau; eps=0.000001;
x(t)=heaviside(t);
y(t)=int(x(tau)*h(t-tau),tau,-inf,inf); %konvolusi dua fungsi
pretty(y(t));
a. Run dan Tampilkan hasil script diatas.
b. Konvolusikan sinyal x(t)=te−tu(t) dan h(t)=e−2t u(t)
2.6 Representasi sistem dalam bentuk respon impulse
%Program 2_6%respon impulse
syms x(t) h(t) ya(t) yb(t) ys(t) dys(t) ddys(t) tau; eps=-0.00001;
x(t)=heaviside(t);
dys(t)=diff(ys); ddys(t)=diff(dys);
ya(t)=dsolve(ys+5*dys+6*ddys==x,ys(eps)==0,dys(eps)==0);
%mencari nilai output dengan memasukkan input
pretty(ya);
h(t)=dsolve(ys+5*dys+6*ddys==dirac(t),ys(eps)==0,dys(eps)==0 ); %mencari respon impulse
yb(t)=int(x(tau)*h(t-tau),tau,-inf,inf); %konvolusikan respon impulse dengan input
pretty(yb);
Tugas Modul:
b. Dilihat dari nilai ya dan yb apakah keduanya bernilai sama?
c. Tambahkan script ezplot(ya-yb); apakah nilai dari ya dan yb sama?
Simulasi Sistem Waktu Diskrit
Program 2.7
Sistem Linear dan Nonlinear
% Program P2_3% Generate the input sequences
clf; n = 0:40; a = 2;b = -3; x1 = cos(2*pi*0.1*n); x2 = cos(2*pi*0.4*n); x = a*x1 + b*x2; num = [2.2403 2.4908 2.2403]; den = [1 -0.4 0.75];
ic = [0 0]; % Set zero initial conditions
y1 = filter(num,den,x1,ic); % Compute the output y1[n]
y2 = filter(num,den,x2,ic); % Compute the output y2[n]
y = filter(num,den,x,ic); % Compute the output y[n]
yt = a*y1 + b*y2;
d = y - yt; % Compute the difference output d[n] % Plot the outputs and the difference signal
subplot(3,1,1) stem(n,y);
ylabel('Amplitude');
title('Output Due to Weighted Input: a \cdot x_{1}[n] + b \cdot x_{2}[n]');
subplot(3,1,2) stem(n,yt);
ylabel('Amplitude');
title('Weighted Output: a \cdot y_{1}[n] + b \cdot y_{2} [n]');
subplot(3,1,3) stem(n,d);
xlabel('Time index n');ylabel('Amplitude'); title('Difference Signal');
Tugas Modul:
a. Output y[n], diperoleh dengan input berbobot, dan yt[n], diperoleh dengan mengkombinasikan dua output, y1[n] and y2[n] dengan bobot yang sama. Tunjukkan output y[n] beserta perbedaan antara kedua sinyal
Sistem tersebut adalah Linier.
b. Jika program di atas dijalankan dengan kondisi awal tidak 0 (nilai selain 0). Plot yang dibangkitkan adalah
Sistem tersebut adalah Non-Linier
c. Jika program di atas dijalankan dengan kondisi awal tidak 0 dan memiliki konstanta berbobot, a dan b. Plot yang dibangkitkan adalah sebagai berikut
a = 3; b = -5
Sistem tersebut adalah Non-Linier
Program 2.8
Time-invariant and Time-varying Systems
% Program P2_4
% Generate the input sequences
clf;
x = a*cos(2*pi*0.1*n) + b*cos(2*pi*0.4*n); xd = [zeros(1,D) x];
num = [2.2403 2.4908 2.2403]; den = [1 -0.4 0.75];
ic = [0 0]; % Set initial conditions % Compute the output y[n]
y = filter(num,den,x,ic);
% Compute the output yd[n]
yd = filter(num,den,xd,ic);
% Compute the difference output d[n]
d = y - yd(1+D:41+D);
% Plot the outputs
subplot(3,1,1) stem(n,y);
ylabel('Amplitude');
title('Output y[n]'); grid; subplot(3,1,2)
stem(n,yd(1:41)); ylabel('Amplitude');
title(['Output due to Delayed Input x[n Ð', num2str(D),']']); grid;
subplot(3,1,3) stem(n,d);
xlabel('Time index n'); ylabel('Amplitude'); title('Difference Signal'); grid;
Tugas Modul:
a. Output y[n] dan yd[n-10] yang dibangkitkan oleh Program di atas adalah sebagai berikut Keduanya berhubungan sebagai yd merupakan y yang di delay sebesar 10
dan merupakan system Time Invariant
b. Output y[n] dan yd[n-D] dibangkitkan pada nilai delay variabel D sebagai berikut
Keduanya berhubungan sebagai yd merupakan y yang di delay sebesar D dan merupakan system Time Invariant
c. Output y[n] dan yd[n-10] dibangkitkan pada nilai frekuensi input 0.1Hz Sinyal yang dibangkitkan adalah sebagai berikut
Keduanya berhubungan sebagai yd merupakan y yang di delay sebesar D dan merupakan system Time Invariant
d. Output y[n] dan yd[n-10] dibangkitkan pada kondisi awal tidak nol adalah sebagai berikut
dan merupakan system Non-linier
e. Output y[n] dan yd[n-10] dibangkitkan pada kondisi awal tidak nol dan nilai frekeunsi input 0.1Hz adalah sebagai berikut
merupakan system Non-Linier
Program 2.9 Konvolusi % Program P2_7 clf; h = [3 2 1 -2 1 0 -4 0 3]; % impulse response x = [1 -2 3 -4 3 2 1]; % input sequence y = conv(h,x); n = 0:14;
subplot(2,1,1); stem(n,y);
xlabel('Time index n'); ylabel('Amplitude'); title('Output Obtained by Convolution'); grid; x1 = [x zeros(1,8)];
y1 = filter(h,1,x1); subplot(2,1,2);
stem(n,y1);
xlabel('Time index n'); ylabel('Amplitude'); title('Output Generated by Filtering'); grid;
Tugas Modul:
a. Hasil y[n] and y1[n] yang dibangkitkan oleh program diatas adalah
b. Alasan menggunakan x1[n] sebagai input, diperoleh melalui zero-padding x[n], untuk membangkitkan y1[n] adalah agar panjangnya sama
c. Program termodifikasi untuk menjalankan konvolusi h[n] sepanjang 15 baris dengan 10 baris x[n] adalah % Program P2_7 clf; h = [3 2 1 -2 1 0 -4 0 3 9 2 3 4 5 -1]; % impulse response x = [1 -2 3 -4 3 2 1 9 8 7]; % input sequence y = conv(h,x); n = 0:24; subplot(2,1,1); stem(y);
xlabel('Time index n'); ylabel('Amplitude'); title('Output Obtained by Convolution'); grid; x1 = [x zeros(1,14)];
y1 = filter(h,1,x1); subplot(2,1,2); stem(n,y1);
xlabel('Time index n'); ylabel('Amplitude'); title('Output Generated by Filtering'); grid;
Selisih antara y[n] dan y1[n] adalah
Program 2.10 Stabilitas Sistem LTI
% Program P2_8
% Stability test based on the sum of the absolute % values of the impulse response samples
clf;
num = [1 -0.8]; den = [1 1.5 0.9]; N = 200;
parsum = 0;
for k = 1:N+1;
parsum = parsum + abs(h(k));
if abs(h(k)) < 10^(-6), break, end end
% Plot the impulse response
n = 0:N; stem(n,h)
xlabel('Time index n'); ylabel('Amplitude');
% Print the value of abs(h(k))
disp('Value =');disp(abs(h(k)));
Tugas Modul:
a. Fungsi perintah “end”, dan “break” adalah
End untuk mengakhiri for, while, switch, try, if, and parfor statements Break menandakan eksekusi diberhentikan
b. Sistem waktu diskrit program diatas adalah stabil
c. Respon impuls yang dibangkitkan oleh program diatas adalah
Nilai |h(K)| adalah 1.6761e-05
Dari nilai dan bentuk respon impul dapat disimpulkan bahwa system ini stabil
d. Dengan menjalankan program di atas menggunakan nilai N yang lebih besar (2000), nilai baru |h(K)| adalah
9.1752e-07