Hanning Window를 수동으로 수행하려고했지만 작동하지 않았습니다. “작동하지 않아, 내가 뭘 잘못하고 있니?

t=[0:.1:10]; x=.5-.5*cos(2*pi*t/102); plot(x); 

여기에 이미지 설명 입력

전체 해닝 기간을 얻을 수없는 이유를 모르겠습니다.

댓글

  • 이 작업을 수행했습니다. w=hann(100); 제대로 작동하지만 수동으로해야합니다.

답변

변경해야합니다. ” 102 “~”10 “.

x=.5-.5*cos(2*pi*t/10); 

댓글

  • 감사합니다. 🙂 샘플 수
  • @ Pulse9 윈도우가 0에서 시작하고 0에서 끝나기를 원하므로 cos는 1-에서 시작하고 끝나야합니다. 즉, 정확히 한주기를 거쳐야합니다.
  • li>

답변

기상학자가있었습니다 (그리고 Hann window- 제작자 ) 이름이

Julius von Hann , Hanning은 학대입니다 (Hamming과 유사 함). hann.m 또는 window.m 함수를 호출하는 코드를 더 잘 제어 할 수 있습니다.

nSample = 101; t = linspace(0,10,nSample); % w = hann(nSample); w = window(@hann,nSample); % w = .5-.5*cos(2*pi*t/10); plot(t,w) 

수동으로 구현할 때 시리즈와 코사인을 계산하지 않기를 바랍니다.

댓글

  • 빌드를 호출하는 이유 기능이 더 나아질까요? 내부적으로는 수동 방법과 똑같이 작동하며 더 많은 검사 및 구문 분석 계층이있어 속도가 느려집니다. 내장 함수는 특별히 " w = 0.5-0.5 * cos (2 * pi * x); "
  • 를 사용합니다. li> @Hilmar " 더 나은 코드 제어 "를 작성했습니다. 구현되는 함수 (창)가 호출에서 명시 적이므로 코멘트를하지 않고. 3 개월 후 다른 사람이나 프로그래머는 그것이 무엇을하는지 쉽게 이해하고 추측 할 필요없이 바로 변경하고 개선 할 수 있습니다. 또한 길이 (nSample) 또는 창 이름을 변수로 지정하면 가독성이 향상됩니다.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다