Octave Atelier

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

Code Detail

calc_power_sum_freq

Signal Processing + Control & Dynamics 중심의 Octave 학습 예제

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

목록으로

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

카테고리

Submission Archive

submission

코드 길이

17

lines

작성자

-

날짜 정보 없음

패키지

none

pkg load

함수 시그니처

function p_sum_freq = calc_power_sum_freq(x, fs)

전체 코드

17 lines

% 주파수 도메인에서 power sum
% 입력: 신호
% 출력: 주파수 도메인에서 power sum

function p_sum_freq = calc_power_sum_freq(x, fs)

  N = length(x);
  x_fft = fft(x);
  power = abs(x_fft).^2 / N;

  power_oneside = power(1:floor(N/2));
  power_oneside(2:end) = 2 * power_oneside(2:end);
  p_sum_freq = sum(power_oneside) / length(power_oneside);
  fprintf("주파수 도메인에서 power sum: %f\n", p_sum_freq);

end

코드 해설

목적

  • Signal Processing + Control & Dynamics 중심의 Octave 학습 예제

입력

  • 파라미터: x
  • 파라미터: fs

출력

  • 반환값: p_sum_freq

실행 흐름

  1. 입력: 신호
  2. 출력: 주파수 도메인에서 power sum

핵심 함수

  • length
  • power_oneside
  • abs
  • fft
  • floor
  • fprintf
  • power
  • sum

실습 과제

  • 샘플링 주파수나 입력 주파수를 바꿔 스펙트럼 변화를 비교해보세요.
  • 질량/감쇠/강성 또는 전달함수 계수를 바꿔 응답 변화를 확인해보세요.
  • 핵심 함수 length의 인자를 한 가지 바꿔 결과 변화를 기록해보세요.

학습 팁

  • FFT 결과는 샘플링 주파수(fs)와 길이(nn) 설정에 민감하므로 먼저 축 정의를 확인하세요.

같은 카테고리 코드

이전 코드 calc_hanning 다음 코드 calc_power_sum_time