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

T=2;                                                 % 신호의 주기 설정
N=1024;                                              % 데이터 개수 설정
Ts=T/N;                                              % 샘플링 주기 설정   
t=Ts*[0:(N-1)];                                      % 시간축을 설정함
xt=stepfun(t,0)-stepfun(t,0.5)+stepfun(t,1.5);       % 사각 펄스 주기 신호 생성
Xf=(1/N)*fft(xt);                                    % fft로 스펙트럼 계산 
k=0:30;                                              % 주파수축(고조파의 차수) 설정 

subplot(2,1,1);                                      % 2행 1열 분할 그림 창의 1번 창
stem(k,abs(Xf(1:length(k))));                         % 진폭 스펙트럼을 그림
title('\bf{진폭 스펙트럼}');                          % 그림 제목
xlabel('\bf{k}'); grid on;                           % x축 라벨 및 그리드 표시 
subplot(2,1,2);                                      % 2행 1열 분할 그림 창의 2번 창
stem(k,angle(Xf(1:length(k))));                       % 위상 스펙트럼을 그림
title('\bf{위상 스펙트럼}');                          % 그림 제목
xlabel('\bf{k}'); grid on;                           % x축 라벨 및 그리드 표시