Octave Atelier

코드와 해설을 함께 읽는 학습 문서

Code Detail

calc_hanning

Signal Processing + Visualization 중심의 Octave 학습 예제

ex-recv/03/03_mjy/calc_hanning.m

목록으로

코드를 복사해 Octave에서 바로 실행할 수 있습니다.

카테고리

Submission Archive

submission

코드 길이

15

lines

작성자

-

날짜 정보 없음

패키지

none

pkg load

함수 시그니처

function calc_hanning(amplitude, frequency, fs, T, phases)

전체 코드

15 lines

% hanning 윈도우를 적용하고 직전 과정을 반복
% 입력: 진폭, 주파수, 샘플링 주파수, 신호 시간, 위상
% 출력: hanning 윈도우를 적용하여 2-5번 다시 계산

function calc_hanning(amplitude,frequency,fs,T,phases)

  [t, x] = get_sinusoidal(amplitude,frequency,fs,T,phases);
  x_hann = x .* hanning(length(x))';
  plot_time(t, x_hann,'b','시간 신호 그래프','Time (s)','Acceleration');
  plot_power_two_side(x_hann, fs);
  calc_power_sum_time(x_hann);
  calc_power_sum_freq(x_hann, fs); % 보정 시, calc_power_sum_freq * sqrt(2) 필요요

end

코드 해설

목적

  • Signal Processing + Visualization 중심의 Octave 학습 예제

입력

  • 파라미터: amplitude
  • 파라미터: frequency
  • 파라미터: fs
  • 파라미터: T
  • 파라미터: phases

출력

  • 연산 결과 변수 또는 화면 출력 결과를 확인합니다.

실행 흐름

  1. 입력: 진폭, 주파수, 샘플링 주파수, 신호 시간, 위상
  2. 출력: hanning 윈도우를 적용하여 2-5번 다시 계산

핵심 함수

  • calc_power_sum_freq
  • calc_power_sum_time
  • get_sinusoidal
  • hanning
  • length
  • plot_power_two_side
  • plot_time
  • sqrt

실습 과제

  • 샘플링 주파수나 입력 주파수를 바꿔 스펙트럼 변화를 비교해보세요.
  • 축 범위와 라벨을 바꿔 그래프 해석성이 어떻게 달라지는지 확인해보세요.
  • 핵심 함수 calc_power_sum_freq의 인자를 한 가지 바꿔 결과 변화를 기록해보세요.

같은 카테고리 코드

이전 코드 plot_time 다음 코드 calc_power_sum_freq