added missing DKS selector in GetPhaseOptRealFourier

This commit is contained in:
suter_a 2016-04-14 16:33:19 +02:00
parent f95a4c9078
commit 27eb664686
2 changed files with 25 additions and 6 deletions

View File

@ -6,6 +6,7 @@ changes since 0.17.0
=================================== ===================================
NEW 2016-03-08 added a theory translator for DKS NEW 2016-03-08 added a theory translator for DKS
NEW 2016-02-23 It is now possible to export the averaged data/Fourier NEW 2016-02-23 It is now possible to export the averaged data/Fourier
FIXED 2016-04-14 added missing DKS selector in GetPhaseOptRealFourier.
changes since 0.16.0 changes since 0.16.0
=================================== ===================================

View File

@ -425,10 +425,19 @@ TH1F* PFourier::GetPhaseOptRealFourier(Double_t &phase, const Double_t scale, co
// copy the real/imag Fourier from min to max // copy the real/imag Fourier from min to max
vector<Double_t> realF, imagF; vector<Double_t> realF, imagF;
if (fUseFFTW) {
for (UInt_t i=minBin; i<=maxBin; i++) { for (UInt_t i=minBin; i<=maxBin; i++) {
realF.push_back(fOut[i][0]); realF.push_back(fOut[i][0]);
imagF.push_back(fOut[i][1]); imagF.push_back(fOut[i][1]);
} }
} else {
for (UInt_t i=minBin; i<=maxBin; i++) {
#ifdef HAVE_DKS
realF.push_back(fOutDKS[i].real());
imagF.push_back(fOutDKS[i].imag());
#endif
}
}
// rotate trough real/imag Fourier through 360° with a 1/2° resolution and keep the integral // rotate trough real/imag Fourier through 360° with a 1/2° resolution and keep the integral
Double_t rotRealIntegral[720]; Double_t rotRealIntegral[720];
@ -473,10 +482,19 @@ TH1F* PFourier::GetPhaseOptRealFourier(Double_t &phase, const Double_t scale, co
} }
// fill realFourier vector // fill realFourier vector
if (fUseFFTW) {
for (UInt_t i=0; i<noOfFourierBins; i++) { for (UInt_t i=0; i<noOfFourierBins; i++) {
realPhaseOptFourier->SetBinContent(i+1, scale*(fOut[i][0]*cos(phase) + fOut[i][1]*sin(phase))); realPhaseOptFourier->SetBinContent(i+1, scale*(fOut[i][0]*cos(phase) + fOut[i][1]*sin(phase)));
realPhaseOptFourier->SetBinError(i+1, 0.0); realPhaseOptFourier->SetBinError(i+1, 0.0);
} }
} else {
#ifdef HAVE_DKS
for (UInt_t i=0; i<noOfFourierBins; i++) {
realPhaseOptFourier->SetBinContent(i+1, scale*(fOutDKS[i].real()*cos(phase) + fOutDKS[i].imag()*sin(phase)));
realPhaseOptFourier->SetBinError(i+1, 0.0);
}
#endif
}
return realPhaseOptFourier; return realPhaseOptFourier;
} }