DIAdem에서 FFT에 Zero-Pad를 할 수 있습니까?



주요한 소프트웨어:
주요한 소프트웨어 버전: 10.0
문제가 해결된 소프트웨어 버전: N/A
부차적인 소프트웨어: N/A

문제점: DIAdem에서 Zero-padded FFT기능을 수행할 수 있습니까?

솔루션:

DIAdem 10.0 이전 버전에서는 Fast Fourier Transform (FFT)를 수행하려면 무조건 2의 지수 개수의 샘플이 필요했습니다. 예를 들어 1000개의 데이터 샘플이 존재하더라도, DIAdem은 512개의 FFT만 수행하였습니다.

게다가 이른바 Zero-padding을 수행하려면 2의 지수 개수의 샘플을 만들기 위하여 나머지 빈공간을 0으로 채우는 작업이 필요했습니다. (FFT에 모든 유효한 데이터 샘플을 적용할 수 있습니다.) 이 작업을 하려면 채널 설정 후 VB Script를 이용하여 프로그램적으로 0을 전부 채워줄 수 있습니다. 아래의 코드는 해당 작업에 대한 간단히 예제를 보여줍니다.

ChNum = 1 'Channel Number to modify
Length = ChnLength(ChNum)
PadNum = 10 'Number of zeros to insert
Call ChnReAlloc(ChNum, Length + PadNum)
Call ChnAreaInsert0(ChNum, Length+1, 10)

채널설정이 이미 완료된 상태에서 이 작업을 수행할 수 있다는 것을 잊지 마시기 바랍니다. 참고로 이 코드를 Chnalloc함수를 사용하여 새로운 채널을 만들고 0을 채워넣는 식으로 수정이 가능합니다.

Note : 이 부분은 DIAdem 10.1 이후 버전에서는 수정되었고 부가적인 사항은 Discrete FFT를 사용함으로 구현이 가능합니다.

 



관련 링크:

첨부:





리포트 날짜: 12/05/2006
마지막 업데이트: 12/08/2014
문서 번호: 444963GJ