From 822a0bf0b73423beeadaf5bd5e3c4e47f99a130e Mon Sep 17 00:00:00 2001 From: nemu Date: Mon, 11 Jul 2011 18:42:47 +0000 Subject: [PATCH] in case first good bin (fgb) is not given, it is now fgb=t0+(10ns/time resolution) (MUSR-190) --- ChangeLog | 1 + src/classes/PRunAsymmetry.cpp | 20 ++++++++++++-------- src/classes/PRunSingleHisto.cpp | 11 +++++++---- 3 files changed, 20 insertions(+), 12 deletions(-) diff --git a/ChangeLog b/ChangeLog index bec8ba22a..3ed3adb12 100644 --- a/ChangeLog +++ b/ChangeLog @@ -24,6 +24,7 @@ FIXED bug reported in MUSR-183: missing background for 2nd histo in asymmetry fi FIXED Makefiles so that the NeXus support will not be built if it has not been enabled during the configure stage FIXED ASCII export from musrview in case of a Fourier-Power- or Fourier-Phase-difference plot FIXED bug in asymmetry fit with fixed background +CHANGED in case first good bin (fgb) is not given, it is now fgb=t0+(10ns/time resolution) (MUSR-190) CHANGED improved handling of 'old' ROOT LEM data files (2006 and earlier) for any2many (MUSR-178) CHANGED improved handling of WKM/ASCII in PRunDataHandler for any2many (MUSR-172) CHANGED the data-file-name handling (MUSR-195). diff --git a/src/classes/PRunAsymmetry.cpp b/src/classes/PRunAsymmetry.cpp index f3ccfc74c..b5651c85d 100644 --- a/src/classes/PRunAsymmetry.cpp +++ b/src/classes/PRunAsymmetry.cpp @@ -839,16 +839,18 @@ Bool_t PRunAsymmetry::PrepareFitData(PRawRunData* runData, UInt_t histoNo[2]) Int_t start[2] = {fRunInfo->GetDataRange(0), fRunInfo->GetDataRange(2)}; Int_t end[2] = {fRunInfo->GetDataRange(1), fRunInfo->GetDataRange(3)}; Double_t t0[2] = {fT0s[0], fT0s[1]}; + Int_t offset = (Int_t)(10.0e-3/fTimeResolution); // needed in case first good bin is not given, default = 10ns + // check if data range has been provided, and if not try to estimate them if (start[0] < 0) { - start[0] = (Int_t)t0[0]+5; - cerr << endl << ">> PRunAsymmetry::PrepareData(): **WARNING** data range (forward) was not provided, will try data range start = t0+5 = " << start[0] << "."; + start[0] = (Int_t)t0[0]+offset; + cerr << endl << ">> PRunAsymmetry::PrepareData(): **WARNING** data range (forward) was not provided, will try data range start = t0+" << offset << "(=10ns) = " << start[0] << "."; cerr << endl << ">> NO WARRANTY THAT THIS DOES MAKE ANY SENSE."; cerr << endl; } if (start[1] < 0) { - start[1] = (Int_t)t0[1]+5; - cerr << endl << ">> PRunAsymmetry::PrepareData(): **WARNING** data range (backward) was not provided, will try data range start = t0+5 = " << start[1] << "."; + start[1] = (Int_t)t0[1]+offset; + cerr << endl << ">> PRunAsymmetry::PrepareData(): **WARNING** data range (backward) was not provided, will try data range start = t0+" << offset << "(=10ns) = " << start[1] << "."; cerr << endl << ">> NO WARRANTY THAT THIS DOES MAKE ANY SENSE."; cerr << endl; } @@ -1052,14 +1054,15 @@ Bool_t PRunAsymmetry::PrepareViewData(PRawRunData* runData, UInt_t histoNo[2]) Int_t start[2] = {0, 0}; Int_t end[2] = {0, 0}; Double_t t0[2] = {fT0s[0], fT0s[1]}; + Int_t offset = (Int_t)(10.0e-3/fTimeResolution); // needed in case first good bin is not given, default = 10ns // check if data range has been provided, and if not try to estimate them if (fRunInfo->GetDataRange(0) < 0) { - start[0] = (static_cast(t0[0])+5) - ((static_cast(t0[0])+5)/packing)*packing; + start[0] = (static_cast(t0[0])+offset) - ((static_cast(t0[0])+offset)/packing)*packing; cerr << endl << ">> PRunAsymmetry::PrepareViewData(): **WARNING** data range (forward) was not provided, will try data range start = " << start[0] << "."; cerr << endl << ">> NO WARRANTY THAT THIS DOES MAKE ANY SENSE."; cerr << endl; } else if (fRunInfo->GetDataRange(2) < 0) { - start[1] = (static_cast(t0[1])+5) - ((static_cast(t0[1])+5)/packing)*packing; + start[1] = (static_cast(t0[1])+offset) - ((static_cast(t0[1])+offset)/packing)*packing; cerr << endl << ">> PRunAsymmetry::PrepareViewData(): **WARNING** data range (backward) was not provided, will try data range start = " << start[1] << "."; cerr << endl << ">> NO WARRANTY THAT THIS DOES MAKE ANY SENSE."; cerr << endl; @@ -1306,14 +1309,15 @@ Bool_t PRunAsymmetry::PrepareRRFViewData(PRawRunData* runData, UInt_t histoNo[2] Int_t end[2] = {0, 0}; Double_t t0[2] = {fT0s[0], fT0s[1]}; UInt_t packing = fMsrInfo->GetMsrPlotList()->at(0).fRRFPacking; + Int_t offset = (Int_t)(10.0e-3/fTimeResolution); // needed in case first good bin is not given, default = 10ns // check if data range has been provided, and if not try to estimate them if (fRunInfo->GetDataRange(0) < 0) { - start[0] = static_cast(t0[0])+5; + start[0] = static_cast(t0[0])+offset; cerr << endl << ">> PRunAsymmetry::PrepareRRFViewData(): **WARNING** data range (forward) was not provided, will try data range start = " << start[0] << "."; cerr << endl << ">> NO WARRANTY THAT THIS DOES MAKE ANY SENSE."; cerr << endl; } else if (fRunInfo->GetDataRange(2) < 0) { - start[1] = static_cast(t0[1])+5; + start[1] = static_cast(t0[1])+offset; cerr << endl << ">> PRunAsymmetry::PrepareRRFViewData(): **WARNING** data range (backward) was not provided, will try data range start = " << start[1] << "."; cerr << endl << ">> NO WARRANTY THAT THIS DOES MAKE ANY SENSE."; cerr << endl; diff --git a/src/classes/PRunSingleHisto.cpp b/src/classes/PRunSingleHisto.cpp index b41487a4c..00939e796 100644 --- a/src/classes/PRunSingleHisto.cpp +++ b/src/classes/PRunSingleHisto.cpp @@ -719,8 +719,9 @@ Bool_t PRunSingleHisto::PrepareFitData(PRawRunData* runData, const UInt_t histoN end = fRunInfo->GetDataRange(1); // check if data range has been provided, and if not try to estimate them if (start < 0) { - start = fT0s[0]+5; - cerr << endl << ">> PRunSingleHisto::PrepareData(): **WARNING** data range was not provided, will try data range start = t0+5 = " << start << "."; + Int_t offset = (Int_t)(10.0e-3/fTimeResolution); + start = fT0s[0]+offset; + cerr << endl << ">> PRunSingleHisto::PrepareData(): **WARNING** data range was not provided, will try data range start = t0+" << offset << "(=10ns) = " << start << "."; cerr << endl << ">> NO WARRANTY THAT THIS DOES MAKE ANY SENSE."; cerr << endl; } @@ -858,7 +859,8 @@ Bool_t PRunSingleHisto::PrepareRawViewData(PRawRunData* runData, const UInt_t hi Int_t end = start + ((runData->GetDataBin(histoNo)->size()-start)/packing)*packing; // check if data range has been provided, and if not try to estimate them if (start < 0) { - start = (fT0s[0]+5) - ((fT0s[0]+5)/packing)*packing; + Int_t offset = (Int_t)(10.0e-3/fTimeResolution); + start = (fT0s[0]+offset) - ((fT0s[0]+offset)/packing)*packing; end = start + ((runData->GetDataBin(histoNo)->size()-start)/packing)*packing; cerr << endl << ">> PRunSingleHisto::PrepareData(): **WARNING** data range was not provided, will try data range start = " << start << "."; cerr << endl << ">> NO WARRANTY THAT THIS DOES MAKE ANY SENSE."; @@ -1057,7 +1059,8 @@ Bool_t PRunSingleHisto::PrepareViewData(PRawRunData* runData, const UInt_t histo // check if data range has been provided, and if not try to estimate them if (start < 0) { - start = (fT0s[0]+5) - ((fT0s[0]+5)/packing)*packing; + Int_t offset = (Int_t)(10.0e-3/fTimeResolution); + start = (fT0s[0]+offset) - ((fT0s[0]+offset)/packing)*packing; end = start + ((runData->GetDataBin(histoNo)->size()-start)/packing)*packing; cerr << endl << ">> PRunSingleHisto::PrepareData(): **WARNING** data range was not provided, will try data range start = " << start << "."; cerr << endl << ">> NO WARRANTY THAT THIS DOES MAKE ANY SENSE.";