trans_two_sided

Signal Processing 중심의 Octave 학습 예제

ex-recv/03/03_ksg_new/trans_two_sided.m

코드 인덱스로 돌아가기

카테고리

Submission Archive

학습 소스 그룹

코드 길이

19

lines

작성자

-

날짜 정보 없음

패키지

none

pkg load 기준

함수 시그니처

function [two_sided_freq, two_sided_spectrum] = trans_two_sided(Spectrum, freq, Fs)

전체 코드

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

% 2025-04-08 / 김상곤
function [two_sided_freq, two_sided_spectrum] = trans_two_sided(Spectrum,freq,Fs)
    % trans_two_sided - two sided spectrum 변환
    %
    % 입력:
    %   - Spectrum : 주파수 신호 (1 x freq)
    %   - freq : 주파수 배열 (0 ~ Fs)
    %   - Fs : Sampling Frequency
    % 설명:
    % (0 ~ Fs) 까지의 주파수 배열을 (-Fn ~ Fn-1)로 변환
    two_sided_freq = freq - Fs/2;
    % (0 ~ Fn) Hz 까지 스펙트럼
    one_sided_spectrum = Spectrum(1:Fs/2 + 1);
    % DC 성분 제외한 1 ~ Fn 까지 스펙트럼
    mirrored_spectrum = fliplr(conj(one_sided_spectrum(2:end - 1)));
    % two sided spectrum 변환
    two_sided_spectrum = [mirrored_spectrum one_sided_spectrum];
end

코드 해설

목적

Signal Processing 중심의 Octave 학습 예제

입력

  • 파라미터: Spectrum
  • 파라미터: freq
  • 파라미터: Fs

출력

  • 반환값: two_sided_freq
  • 반환값: two_sided_spectrum

실행 흐름

  1. 입력
  2. - Fs : Sampling Frequency

핵심 함수/주제

conjfliplrone_sided_spectrumSpectrum

실습 과제

  • 샘플링 주파수나 입력 주파수를 바꿔 스펙트럼 변화를 비교해보세요.
  • 핵심 함수 conj의 인자를 한 가지 바꿔 결과 변화를 기록해보세요.
  • "입력 -> - Fs : Sampling Frequency" 흐름을 함수 단위로 분리해 리팩터링해보세요.

학습 팁

같은 카테고리의 다른 코드