projects
/
ctsim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
wx2.8 compatibility changes
[ctsim.git]
/
libctsim
/
fourier.cpp
diff --git
a/libctsim/fourier.cpp
b/libctsim/fourier.cpp
index a3a62d984ef80966bfa847445be2597ecc78be9f..d85bfbe5b97d8c332a582ed94eea94469aaca171 100644
(file)
--- a/
libctsim/fourier.cpp
+++ b/
libctsim/fourier.cpp
@@
-7,9
+7,7
@@
** Date Started: Dec 2000
**
** This is part of the CTSim program
** Date Started: Dec 2000
**
** This is part of the CTSim program
-** Copyright (c) 1983-2001 Kevin Rosenberg
-**
-** $Id$
+** Copyright (c) 1983-2009 Kevin Rosenberg
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License (version 2) as
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License (version 2) as
@@
-100,14
+98,14
@@
Fourier::shuffleNaturalToFourierOrder (ImageFile& im)
}
#ifdef HAVE_FFTW
}
#ifdef HAVE_FFTW
-void Fourier::shuffleNaturalToFourierOrder (fftw_complex* pVector, const int n)
+void Fourier::shuffleNaturalToFourierOrder (fftw_complex* pVector, const int n)
{
fftw_complex* pTemp = static_cast<fftw_complex*>(fftw_malloc(sizeof(fftw_complex) * n));
int i;
{
fftw_complex* pTemp = static_cast<fftw_complex*>(fftw_malloc(sizeof(fftw_complex) * n));
int i;
-
+
if (isOdd(n)) { // Odd
int iHalfN = (n - 1) / 2;
if (isOdd(n)) { // Odd
int iHalfN = (n - 1) / 2;
-
+
pTemp[0][0] = pVector[iHalfN][0];
pTemp[0][1] = pVector[iHalfN][1];
for (i = 0; i < iHalfN; i++) {
pTemp[0][0] = pVector[iHalfN][0];
pTemp[0][1] = pVector[iHalfN][1];
for (i = 0; i < iHalfN; i++) {
@@
-131,7
+129,7
@@
void Fourier::shuffleNaturalToFourierOrder (fftw_complex* pVector, const int n)
pTemp[i + iHalfN][1] = pVector[i][1];
}
}
pTemp[i + iHalfN][1] = pVector[i][1];
}
}
-
+
for (i = 0; i < n; i++) {
pVector[i][0] = pTemp[i][0];
pVector[i][1] = pTemp[i][1];
for (i = 0; i < n; i++) {
pVector[i][0] = pTemp[i][0];
pVector[i][1] = pTemp[i][1];
@@
-145,7
+143,7
@@
void Fourier::shuffleFourierToNaturalOrder (fftw_complex* pVector, const int n)
int i;
if (isOdd(n)) { // Odd
int iHalfN = (n - 1) / 2;
int i;
if (isOdd(n)) { // Odd
int iHalfN = (n - 1) / 2;
-
+
pTemp[iHalfN][0] = pVector[0][0];
pTemp[iHalfN][1] = pVector[0][1];
for (i = 0; i < iHalfN; i++) {
pTemp[iHalfN][0] = pVector[0][0];
pTemp[iHalfN][1] = pVector[0][1];
for (i = 0; i < iHalfN; i++) {
@@
-169,12
+167,12
@@
void Fourier::shuffleFourierToNaturalOrder (fftw_complex* pVector, const int n)
pTemp[i + iHalfN + 1][1] = pVector[i+1][1];
}
}
pTemp[i + iHalfN + 1][1] = pVector[i+1][1];
}
}
-
+
for (i = 0; i < n; i++) {
pVector[i][0] = pTemp[i][0];
pVector[i][1] = pTemp[i][1];
}
for (i = 0; i < n; i++) {
pVector[i][0] = pTemp[i][0];
pVector[i][1] = pTemp[i][1];
}
-
+
fftw_free(pTemp);
}
#endif
fftw_free(pTemp);
}
#endif