Segmenting a frequency series: do we need band-pass filtering? I am trying to implement what's called the "second spectrum". Basically, you do this:


Take a time series of length $N$.
Divide it into $m$ segment, each of length $N'=N/m$.
For each segment $m$, do a Fourier Transform. The result is the 'first
spectrum',$S_i^{(1)}(f_1), i=1:m$
Divide each spectrum into $n$ octaves, an octave starts at $f_L=f_0 \times 2^p$ and ends at $f_H=f_0 \times 2^{p+1}$, where $p=0,1,2, etc$, and $f_0$ is the lowest frequency in $S_i^{(1)}(f_1)$. For $f_0 = 1$ Hz, The octaves will be like: 1-2 Hz, 2-4 Hz, 4-8 Hz, 8-16 Hz, etc.
For each octave in each spectrum, sum all spectrum values in that octave.
Construct a time-series for each octave. There will be $n$ time series each of length $m$.
Take the Fourier Transform of these time series. This is the second spectrum, $S_n^{(2)}(f_2)$


I have already implemented this algorithm (in c++), but I have a question:

Q: in step 4, can I simply divide the spectrum signal into octaves "just like that"? I mean, without any kind of band-pass filtering to these octaves? 

EDIT: what I mean by the "just like that" is as if I am passing the spectrum through a rectangular window (in freq. domain).
I haven't heard of the second spectrum before, but yes, you can slice out a region in the frequency domain just like that.  This is equivalent to a maximal-length bandpass filter in the time domain and is in fact the best filter you can implement for a given FFT length.