-
-
Notifications
You must be signed in to change notification settings - Fork 117
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1185 from rolanddenis/pr_RealFFT
Real-data in-place Fast Fourier Transform using FFTW3.
- Loading branch information
Showing
10 changed files
with
1,851 additions
and
10 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
# Try to find the FFTW3 librairies | ||
# FFTW3_FOUND - True if FFTW3 is found for at least one precision. | ||
# FFTW3_FLOAT_FOUND - True if FFTW3 is found for float precision. | ||
# FFTW3_DOUBLE_FOUND - True if FFTW3 is found for double precicion. | ||
# FFTW3_LONG_FOUND - True if FFTW3 is found for long double precision. | ||
# FFTW3_INCLUDE_DIR - The FFTW3 include directory. | ||
# FFTW3_LIBRARIES - FFTW3 libraries. | ||
# FFTW3_DEP_LIBRARIES - Libraries needed by FFTW3. | ||
|
||
if (FFTW3_INCLUDE_DIR AND FFTW3_LIBRARIES) | ||
# Already in cache, be silent | ||
set(FFTW3_FIND_QUIETLY TRUE) | ||
endif (FFTW3_INCLUDE_DIR AND FFTW3_LIBRARIES) | ||
|
||
# Searching for all supported FFT precisions. | ||
find_path (FFTW3_INCLUDE_DIR NAMES fftw3.h ) | ||
find_library (FFTW3_FLOAT_LIBRARIES NAMES fftw3f ) | ||
find_library (FFTW3_FLOAT_THREADS_LIBRARIES NAMES fftw3f_threads ) | ||
find_library (FFTW3_DOUBLE_LIBRARIES NAMES fftw3 ) | ||
find_library (FFTW3_DOUBLE_THREADS_LIBRARIES NAMES fftw3_threads ) | ||
find_library (FFTW3_LONG_LIBRARIES NAMES fftw3l ) | ||
find_library (FFTW3_LONG_THREADS_LIBRARIES NAMES fftw3l_threads ) | ||
|
||
# Gathering FFTW3 libraries | ||
set (FFTW3_LIBRARIES ${FFTW3_FLOAT_LIBRARIES} ${FFTW3_DOUBLE_LIBRARIES} ${FFTW3_LONG_LIBRARIES}) | ||
set (FFTW3_THREADS_LIBRARIES ${FFTW3_FLOAT_THREADS_LIBRARIES} ${FFTW3_DOUBLE_THREADS_LIBRARIES} ${FFTW3_LONG_THREADS_LIBRARIES}) | ||
set (FFTW3_DEP_LIBRARIES m) | ||
|
||
# Telling which FFT precisions are found. | ||
include(FindPackageHandleStandardArgs) | ||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(FFTW3 DEFAULT_MSG FFTW3_INCLUDE_DIR FFTW3_LIBRARIES) | ||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(FFTW3_FLOAT DEFAULT_MSG FFTW3_INCLUDE_DIR FFTW3_FLOAT_LIBRARIES) | ||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(FFTW3_DOUBLE DEFAULT_MSG FFTW3_INCLUDE_DIR FFTW3_DOUBLE_LIBRARIES) | ||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(FFTW3_LONG DEFAULT_MSG FFTW3_INCLUDE_DIR FFTW3_LONG_LIBRARIES) | ||
|
||
# Adding threaded version of FFTW3 | ||
if (FFTW3_THREADS_LIBRARIES) | ||
set (FFTW3_LIBRARIES ${FFTW3_LIBRARIES} ${FFTW3_THREADS_LIBRARIES}) | ||
set (FFTW3_DEP_LIBRARIES ${FFTW3_DEP_LIBRARIES} pthread) | ||
endif (FFTW3_THREADS_LIBRARIES) | ||
|
||
|
||
mark_as_advanced(FFTW3_INCLUDE_DIR FFTW3_LIBRARIES, FFTW3_DEP_LIBRARIES) | ||
mark_as_advanced(FFTW3_FLOAT_LIBRARIES FFTW3_DOUBLE_LIBRARIES FFTW3_LONG_LIBRARIES) | ||
mark_as_advanced(FFTW3_FLOAT_THREADS_LIBRARIES FFTW3_DOUBLE_THREADS_LIBRARIES FFTW3_LONG_THREADS_LIBRARIES) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.