Hey Steve,
Thanks again, I have been doing some reading and realized I mistook what you meant by performing a transform. I'm so used to seeing FFT as an acronym in the literature and code that I forgot it was the main transform. Doh! I will eventually remember definitions of all this jargon...I understand what you meant by not low-pass filtering out any of the HF data from the clicks- I should not filter until it has been transformed from the time domain to the frequency domain. I was getting confused by phrasing in the literature when discussing how people corrected for their frequency response curves of hydrophones. I kept reading that authors 'applied the inverse of the system transfer function to correct the received levels according to the sensitivity of the recording system.' Please correct me if I am wrong but I think they are referring to applying the inverse of the FFT in order to revert back to the time domain in order to use the corrected waveform of their clicks.
As I was starting this forum, I asked a scientist via email about how she corrected for her frequency response curve. (She had a similar design set-up as my study.) She was provided the frequency response curve from the hydrophone manufacturer and advised that I should try to create my own curve via calibration of the SoundTrap since it did not come with one. Her reply:
"You should correct your signal after calculating the FFT of your waveform. Make sure that your spectrum is in dB scale so you just add the correction factors. After that you will have your spectrum levels calibrated. You should ask the SoundTrap team for the frequency response curve below 150 kHz, and if they don't have it, ideally you should measure it by calibrating your hydrophone. Once you have that done, you can calibrate your spectral parameters and if you want to measure RLp-p or RLrms you should apply the inverse FFT to get the corrected waveform. Regarding your code, you will need to modify it so that after calculating the FFT of your input signal, the code adds the frequency response curve"
So let me get this straight- I can avoid all of this by equalizing my .wav files for the 6 dB roll-off above 150 kHz using the FFT filter setting that I sent a screenshot of previously (0-5.6 dB increase from 150kHz -300 kHz)? If I filter each .wav file in its entirety with the FFT filter setting to correct for the 6dB roll-off, then I can proceed with my analysis of clicks taken from the new modified .wav files to calculate my spectral parameters? I plan to apply a 512 point FFT, rectangular window, with a bandpass filter between 25 kHz and 275 kHz to avoid LF noise and aliasing. Please let me know your thoughts.
Thanks as always!
Morgan
It's perfectly possible to equalise a file of this nature in the time domain first - if you have a correction curve. And unfortunately, SoundTrap don't seem to have produced one of those that's anything like definitive. All they've done is to provide a pistonphone calibration which will give you an accurate amplitude calibration at the repetition rate of the piston, but without a correction curve it's going to be impossible to apply any correction correctly.
And in the absence of that, the only thing you can do is go with the generalised correction that they've indicated above 150kHz, which I think you've already correctly arrived at. The effect that will have on any transform is affect the levels of the higher frequency components of the signal - this is quite a normal EQ process. What your correspondent has suggested when she says "You should correct your signal after calculating the FFT of your waveform" is an interesting way of going about it - she seems to be suggesting that by defining what she thinks the levels of the upper components should be, you can go back and correct the original file so that this is what the FFT result is. Now, whilst that's technically possible, it's going to be rather a hit-and miss process, to say the very least; normally a correction chart would give you corrected values at different frequencies, and you'd set up a correction filter that provided a smooth curve between them. Alternatively, it would be in the form of a response curve on a graph, and you'd set up a filter that was the inverse of it.
The thing is though that unless you're absolutely sure of the nature of the stimulus (and I don't see how you can be), you can't apply any correction based upon it. Calibrating the response of a hydrophone for yourself requires a pile of specialised equipment from B&K, and even though I know how to do this, it's not something I'd undertake lightly, and it would be expensive; you have to hire all the kit, and then create the correct environment.
Bottom line: unless you can get an accurate correction graph or data from SoundTrap, the approach you've suggested in your last paragraph is the only one you can use - and pretty much, if it's a long-distance signal, then the variable sea conditions will be what you are analysing, not the source...