Issues:
Katydid fails to create the output file. Instead there was this file at the location where I ran katydid:
7e3f-af33-819b-1ee4.root
The file is 1.7GB big and does contain spectrograms. When I opened it with ROOT, I got warnings that the file is broken but the spectrograms could be recovered:
Info in <TFile::Recover>: 7e3f-af33-819b-1ee4.root, recovered key TH2D:FSFFTWSpectrogram_523_0 at address 1728812965
The time axis of the spectrograms is not correct. Every acquisition has the same x axis starting at the start time in run of the first acquisition in the file.
Elise forwarded me a fix from Yu-Hao:
I at least got sequential mode working. If you find the source file KTROOTSpectrogramWriter.cc in source files under IO, around line 170-180 there is an if statement
if (isNewAcq && dataBundle.fSpectrograms.size() != 0)
Change it into something like
if (isNewAcq && 1== 0)
So that the part below never run.
I believe that is the most substantial change that made it working.
With this workaround katydid now creates a "healthy" root file. However now all the spectrograms are of the same length and the time axis is still the same for all of them. It seems that the acquisitions now get stitched together (which makes sense as the writer is no longer treating new acquisitions) and split once the TH2D reaches a certain size.
The file size with the workaround is 3.8GB. And changing n-time-bins in the configuration has no effect on the file size and content.
using ROOTSpectrogramWriter with this configuration:
Issues: Katydid fails to create the output file. Instead there was this file at the location where I ran katydid: 7e3f-af33-819b-1ee4.root The file is 1.7GB big and does contain spectrograms. When I opened it with ROOT, I got warnings that the file is broken but the spectrograms could be recovered:
The time axis of the spectrograms is not correct. Every acquisition has the same x axis starting at the start time in run of the first acquisition in the file.
Elise forwarded me a fix from Yu-Hao:
I at least got sequential mode working. If you find the source file KTROOTSpectrogramWriter.cc in source files under IO, around line 170-180 there is an if statement
if (isNewAcq && dataBundle.fSpectrograms.size() != 0)
Change it into something like
if (isNewAcq && 1== 0)
So that the part below never run. I believe that is the most substantial change that made it working.
With this workaround katydid now creates a "healthy" root file. However now all the spectrograms are of the same length and the time axis is still the same for all of them. It seems that the acquisitions now get stitched together (which makes sense as the writer is no longer treating new acquisitions) and split once the TH2D reaches a certain size.
The file size with the workaround is 3.8GB. And changing
n-time-bins
in the configuration has no effect on the file size and content.