mirror of
https://github.com/aicodix/dsp.git
synced 2026-04-27 14:30:36 +00:00
simplified loops
This commit is contained in:
parent
a265a71d9c
commit
d4841b2998
1 changed files with 5 additions and 10 deletions
15
fdzp.hh
15
fdzp.hh
|
|
@ -22,19 +22,14 @@ public:
|
|||
void operator ()(CMPLX *output, const CMPLX *input)
|
||||
{
|
||||
fwd(tmp, input);
|
||||
if (BINS&1) {
|
||||
for (int i = 1; i < BINS/2; ++i)
|
||||
tmp[BINS*FACT-BINS/2+i] = tmp[BINS/2+1+i];
|
||||
for (int i = 1; i < BINS/2; ++i)
|
||||
tmp[BINS/2+1+i] = 0;
|
||||
} else {
|
||||
if (!(BINS&1)) {
|
||||
tmp[BINS/2] *= VALUE(0.5);
|
||||
tmp[BINS*FACT-BINS/2] = tmp[BINS/2];
|
||||
for (int i = 1; i < BINS/2; ++i)
|
||||
tmp[BINS*FACT-BINS/2+i] = tmp[BINS/2+i];
|
||||
for (int i = 1; i < BINS/2; ++i)
|
||||
tmp[BINS/2+i] = 0;
|
||||
}
|
||||
for (int i = (BINS+1)/2+1; i < BINS; ++i)
|
||||
tmp[BINS*(FACT-1)+i] = tmp[i];
|
||||
for (int i = (BINS+1)/2+1; i < BINS; ++i)
|
||||
tmp[i] = 0;
|
||||
bwd(output, tmp);
|
||||
for (int i = 0; i < BINS * FACT; ++i)
|
||||
output[i] *= SCALE;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue