close all;                                    % 모든 생성된 창을 닫음 
clear all;                                    % 열려있는 작업영역(workspace)을 모두 비움 
clc;                                          % 명령(command) 창을 비움

a=[1.6 -0.64];b=[0 0 0.04];                   % 차분 방정식의 계수 값 설정 
n=0:30;                                       % 차분 방정식 계산 범위 설정
x=[0 0 ones(1,length(n))];                    % 입력 데이터 생성(n=-2 ∼ 30) 
y0=[1 0.8];                                   % y[n]의 초기 조건 설정(n=-2,-1)
y1=difference_eq_1(0,30,a,b,y0,x);            % 차분 방정식의 완전해 계산
y01=[0 0];                                    % x와 y의 초기상태 설정(n=-2, -1)
y2=difference_eq_1(0,30,a,b,y01,x);           % 차분 방정식의 영상태 응답 계산
x=[0 0 zeros(1,length(n))];                   % 모든 입력을 0으로 둠 
y3=difference_eq_1(0,30,a,b,y0,x);            % 차분 방정식의 영입력 응답 계산
y4=y2+y3;                                     % 완전해=영입력 응답+영상태 응답 계산

subplot(2,2,1); grid on;                      % 2행 2열 분할 그림창의 1번 창, 그리드 표시 
stem(n,y1);                                   % 차분 방정식의 완전해 그림
title('\bf{완전해}');                         % 그림 제목 
subplot(2,2,2); grid on;                      % 2행 2열 분할 그림창의 2번 창, 그리드 표시  
stem(n,y2);                                   % 차분 방정식의 영상태 응답 그림
title('\bf{영상태 응답}');                     % 그림 제목 
subplot(2,2,4); grid on;                      % 2행 2열 분할 그림창의 4번 창, 그리드 표시  
stem(n,y3);                                   % 차분 방정식의 영입력 응답 그림
title('\bf{영입력 응답}');                     % 그림 제목 
xlabel('n');                                  % x축 라벨 표시
subplot(2,2,3); grid on;                      % 2행 2열 분할 그림창의 3번 창, 그리드 표시 
stem(n,y4);                                   % 완전해= 영입력 응답+영상태 응답 그림
title('\bf{영입력응답+영상태응답}');           % 그림 제목        
xlabel('n');                                  % x축 라벨 표시