I’m not sure if I’m making a mistake, if this is a limit of CINT or if it’s a bug, but I’m having trouble using the GetPoints function in both TVirtualFFT (using r2c) and TFFTRealComplex.
Code:
In CINT, I have a Short_t array with size 4096, named sarr:
TVirtualFFT example:
// sarr previously defined as Short_t[4096]
Int_t N = 4096;
TVirtualFFT *fft = TVirtualFFT::FFT(1, &N, "R2C");
for(Int_t ii = 0; ii < 4096; ii++)
fft->SetPoint(ii, (Double_t)sarr[ii]);
fft->Transform();
Double_t *output;
fft->GetPoints(output);
Then I end up with an error like this:
*** Break *** segmentation violation
Attaching to program: /proc/18217/exe, process 18217
[Thread debugging using libthread_db enabled]
[New Thread 0xb70b5b30 (LWP 18217)]
0xb7f3b410 in __kernel_vsyscall ()
error detected on stdin