lift #forward == #backward restriction.
This commit is contained in:
parent
b2bb863e9d
commit
ab29dedb77
@ -602,16 +602,6 @@ Bool_t PRunAsymmetry::PrepareData()
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (forwardHistoNo.size() != backwardHistoNo.size()) {
|
|
||||||
std::cerr << std::endl << ">> PRunAsymmetry::PrepareData(): **PANIC ERROR**:";
|
|
||||||
std::cerr << std::endl << ">> # of forward histograms different from # of backward histograms.";
|
|
||||||
std::cerr << std::endl << ">> Will quit :-(";
|
|
||||||
std::cerr << std::endl;
|
|
||||||
// clean up
|
|
||||||
forwardHistoNo.clear();
|
|
||||||
backwardHistoNo.clear();
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
// keep the time resolution in (us)
|
// keep the time resolution in (us)
|
||||||
fTimeResolution = runData->GetTimeResolution()/1.0e3;
|
fTimeResolution = runData->GetTimeResolution()/1.0e3;
|
||||||
@ -626,11 +616,13 @@ Bool_t PRunAsymmetry::PrepareData()
|
|||||||
// keep the histo of each group at this point (addruns handled below)
|
// keep the histo of each group at this point (addruns handled below)
|
||||||
std::vector<PDoubleVector> forward, backward;
|
std::vector<PDoubleVector> forward, backward;
|
||||||
forward.resize(forwardHistoNo.size()); // resize to number of groups
|
forward.resize(forwardHistoNo.size()); // resize to number of groups
|
||||||
backward.resize(backwardHistoNo.size()); // resize to numer of groups
|
|
||||||
for (UInt_t i=0; i<forwardHistoNo.size(); i++) {
|
for (UInt_t i=0; i<forwardHistoNo.size(); i++) {
|
||||||
forward[i].resize(runData->GetDataBin(forwardHistoNo[i])->size());
|
forward[i].resize(runData->GetDataBin(forwardHistoNo[i])->size());
|
||||||
backward[i].resize(runData->GetDataBin(backwardHistoNo[i])->size());
|
|
||||||
forward[i] = *runData->GetDataBin(forwardHistoNo[i]);
|
forward[i] = *runData->GetDataBin(forwardHistoNo[i]);
|
||||||
|
}
|
||||||
|
backward.resize(backwardHistoNo.size()); // resize to number of groups
|
||||||
|
for (UInt_t i=0; i<backwardHistoNo.size(); i++) {
|
||||||
|
backward[i].resize(runData->GetDataBin(backwardHistoNo[i])->size());
|
||||||
backward[i] = *runData->GetDataBin(backwardHistoNo[i]);
|
backward[i] = *runData->GetDataBin(backwardHistoNo[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -676,9 +668,11 @@ Bool_t PRunAsymmetry::PrepareData()
|
|||||||
|
|
||||||
// set forward/backward histo data of the first group
|
// set forward/backward histo data of the first group
|
||||||
fForward.resize(forward[0].size());
|
fForward.resize(forward[0].size());
|
||||||
fBackward.resize(backward[0].size());
|
|
||||||
for (UInt_t i=0; i<fForward.size(); i++) {
|
for (UInt_t i=0; i<fForward.size(); i++) {
|
||||||
fForward[i] = forward[0][i];
|
fForward[i] = forward[0][i];
|
||||||
|
}
|
||||||
|
fBackward.resize(backward[0].size());
|
||||||
|
for (UInt_t i=0; i<fBackward.size(); i++) {
|
||||||
fBackward[i] = backward[0][i];
|
fBackward[i] = backward[0][i];
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1677,7 +1671,7 @@ Bool_t PRunAsymmetry::PrepareRRFViewData(PRawRunData* runData, UInt_t histoNo[2]
|
|||||||
//--------------------------------------------------------------------------
|
//--------------------------------------------------------------------------
|
||||||
/**
|
/**
|
||||||
* <p>Get the proper t0 for the single histogram run.
|
* <p>Get the proper t0 for the single histogram run.
|
||||||
* -# the t0 vector size = number of detectors (grouping) for forward.
|
* -# the t0 vector size = number of detectors (grouping) for forward + backward.
|
||||||
* -# initialize t0's with -1
|
* -# initialize t0's with -1
|
||||||
* -# fill t0's from RUN block
|
* -# fill t0's from RUN block
|
||||||
* -# if t0's are missing (i.e. t0 == -1), try to fill from the GLOBAL block.
|
* -# if t0's are missing (i.e. t0 == -1), try to fill from the GLOBAL block.
|
||||||
@ -1698,7 +1692,11 @@ Bool_t PRunAsymmetry::GetProperT0(PRawRunData* runData, PMsrGlobalBlock *globalB
|
|||||||
// feed all T0's
|
// feed all T0's
|
||||||
// first init T0's, T0's are stored as (forward T0, backward T0, etc.)
|
// first init T0's, T0's are stored as (forward T0, backward T0, etc.)
|
||||||
fT0s.clear();
|
fT0s.clear();
|
||||||
fT0s.resize(2*forwardHistoNo.size());
|
// this strange fT0 size estimate is needed in case #forw histos != #back histos
|
||||||
|
size_t size = 2*forwardHistoNo.size();
|
||||||
|
if (backwardHistoNo.size() > forwardHistoNo.size())
|
||||||
|
size = 2*backwardHistoNo.size();
|
||||||
|
fT0s.resize(size);
|
||||||
for (UInt_t i=0; i<fT0s.size(); i++) {
|
for (UInt_t i=0; i<fT0s.size(); i++) {
|
||||||
fT0s[i] = -1.0;
|
fT0s[i] = -1.0;
|
||||||
}
|
}
|
||||||
@ -1765,6 +1763,8 @@ Bool_t PRunAsymmetry::GetProperT0(PRawRunData* runData, PMsrGlobalBlock *globalB
|
|||||||
std::cerr << std::endl;
|
std::cerr << std::endl;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
for (UInt_t i=0; i<backwardHistoNo.size(); i++) {
|
||||||
if ((fT0s[2*i+1] < 0) || (fT0s[2*i+1] > static_cast<Int_t>(runData->GetDataBin(backwardHistoNo[i])->size()))) {
|
if ((fT0s[2*i+1] < 0) || (fT0s[2*i+1] > static_cast<Int_t>(runData->GetDataBin(backwardHistoNo[i])->size()))) {
|
||||||
std::cerr << std::endl << ">> PRunAsymmetry::PrepareData(): **ERROR** t0 data bin (" << fT0s[2*i+1] << ") doesn't make any sense!";
|
std::cerr << std::endl << ">> PRunAsymmetry::PrepareData(): **ERROR** t0 data bin (" << fT0s[2*i+1] << ") doesn't make any sense!";
|
||||||
std::cerr << std::endl << ">> backwardHistoNo " << backwardHistoNo[i];
|
std::cerr << std::endl << ">> backwardHistoNo " << backwardHistoNo[i];
|
||||||
|
@ -640,6 +640,7 @@ Bool_t PRunAsymmetryBNMR::PrepareData()
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/* //as35
|
||||||
if (forwardHistoNo.size() != backwardHistoNo.size()) {
|
if (forwardHistoNo.size() != backwardHistoNo.size()) {
|
||||||
std::cerr << std::endl << ">> PRunAsymmetryBNMR::PrepareData(): **PANIC ERROR**:";
|
std::cerr << std::endl << ">> PRunAsymmetryBNMR::PrepareData(): **PANIC ERROR**:";
|
||||||
std::cerr << std::endl << ">> # of forward histograms different from # of backward histograms.";
|
std::cerr << std::endl << ">> # of forward histograms different from # of backward histograms.";
|
||||||
@ -650,6 +651,7 @@ Bool_t PRunAsymmetryBNMR::PrepareData()
|
|||||||
backwardHistoNo.clear();
|
backwardHistoNo.clear();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
*/ //as35
|
||||||
|
|
||||||
// keep the time resolution in (s)
|
// keep the time resolution in (s)
|
||||||
fTimeResolution = runData->GetTimeResolution()/1.0e3;
|
fTimeResolution = runData->GetTimeResolution()/1.0e3;
|
||||||
@ -664,11 +666,13 @@ Bool_t PRunAsymmetryBNMR::PrepareData()
|
|||||||
// keep the histo of each group at this point (addruns handled below)
|
// keep the histo of each group at this point (addruns handled below)
|
||||||
std::vector<PDoubleVector> forward, backward;
|
std::vector<PDoubleVector> forward, backward;
|
||||||
forward.resize(forwardHistoNo.size()); // resize to number of groups
|
forward.resize(forwardHistoNo.size()); // resize to number of groups
|
||||||
backward.resize(backwardHistoNo.size()); // resize to numer of groups
|
|
||||||
for (UInt_t i=0; i<forwardHistoNo.size(); i++) {
|
for (UInt_t i=0; i<forwardHistoNo.size(); i++) {
|
||||||
forward[i].resize(runData->GetDataBin(forwardHistoNo[i])->size());
|
forward[i].resize(runData->GetDataBin(forwardHistoNo[i])->size());
|
||||||
backward[i].resize(runData->GetDataBin(backwardHistoNo[i])->size());
|
|
||||||
forward[i] = *runData->GetDataBin(forwardHistoNo[i]);
|
forward[i] = *runData->GetDataBin(forwardHistoNo[i]);
|
||||||
|
}
|
||||||
|
backward.resize(backwardHistoNo.size()); // resize to number of groups
|
||||||
|
for (UInt_t i=0; i<backwardHistoNo.size(); i++) {
|
||||||
|
backward[i].resize(runData->GetDataBin(backwardHistoNo[i])->size());
|
||||||
backward[i] = *runData->GetDataBin(backwardHistoNo[i]);
|
backward[i] = *runData->GetDataBin(backwardHistoNo[i]);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -712,15 +716,18 @@ Bool_t PRunAsymmetryBNMR::PrepareData()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// set forward/backward histo data of the first group
|
// set forward histo data of the first group
|
||||||
fForwardp.resize(forward[0].size());
|
fForwardp.resize(forward[0].size());
|
||||||
fBackwardp.resize(backward[0].size());
|
|
||||||
fForwardm.resize(forward[0].size());
|
fForwardm.resize(forward[0].size());
|
||||||
fBackwardm.resize(backward[0].size());
|
|
||||||
for (UInt_t i=0; i<fForwardp.size(); i++) {
|
for (UInt_t i=0; i<fForwardp.size(); i++) {
|
||||||
fForwardp[i] = forward[0][i];
|
fForwardp[i] = forward[0][i];
|
||||||
fBackwardp[i] = backward[0][i];
|
|
||||||
fForwardm[i] = forward[1][i];
|
fForwardm[i] = forward[1][i];
|
||||||
|
}
|
||||||
|
// set backward histo data of the first group
|
||||||
|
fBackwardp.resize(backward[0].size());
|
||||||
|
fBackwardm.resize(backward[0].size());
|
||||||
|
for (UInt_t i=0; i<fBackwardp.size(); i++) {
|
||||||
|
fBackwardp[i] = backward[0][i];
|
||||||
fBackwardm[i] = backward[1][i];
|
fBackwardm[i] = backward[1][i];
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1529,7 +1536,11 @@ Bool_t PRunAsymmetryBNMR::GetProperT0(PRawRunData* runData, PMsrGlobalBlock *glo
|
|||||||
// feed all T0's
|
// feed all T0's
|
||||||
// first init T0's, T0's are stored as (forward T0, backward T0, etc.)
|
// first init T0's, T0's are stored as (forward T0, backward T0, etc.)
|
||||||
fT0s.clear();
|
fT0s.clear();
|
||||||
fT0s.resize(2*forwardHistoNo.size());
|
// this strange fT0 size estimate is needed in case #forw histos != #back histos
|
||||||
|
size_t size = 2*forwardHistoNo.size();
|
||||||
|
if (backwardHistoNo.size() > forwardHistoNo.size())
|
||||||
|
size = 2*backwardHistoNo.size();
|
||||||
|
fT0s.resize(size);
|
||||||
for (UInt_t i=0; i<fT0s.size(); i++) {
|
for (UInt_t i=0; i<fT0s.size(); i++) {
|
||||||
fT0s[i] = -1.0;
|
fT0s[i] = -1.0;
|
||||||
}
|
}
|
||||||
@ -1596,6 +1607,8 @@ Bool_t PRunAsymmetryBNMR::GetProperT0(PRawRunData* runData, PMsrGlobalBlock *glo
|
|||||||
std::cerr << std::endl;
|
std::cerr << std::endl;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
for (UInt_t i=0; i<backwardHistoNo.size(); i++) {
|
||||||
if ((fT0s[2*i+1] < 0) || (fT0s[2*i+1] > static_cast<Int_t>(runData->GetDataBin(backwardHistoNo[i])->size()))) {
|
if ((fT0s[2*i+1] < 0) || (fT0s[2*i+1] > static_cast<Int_t>(runData->GetDataBin(backwardHistoNo[i])->size()))) {
|
||||||
std::cerr << std::endl << ">> PRunAsymmetryBNMR::PrepareData(): **ERROR** t0 data bin (" << fT0s[2*i+1] << ") doesn't make any sense!";
|
std::cerr << std::endl << ">> PRunAsymmetryBNMR::PrepareData(): **ERROR** t0 data bin (" << fT0s[2*i+1] << ") doesn't make any sense!";
|
||||||
std::cerr << std::endl << ">> backwardHistoNo " << backwardHistoNo[i];
|
std::cerr << std::endl << ">> backwardHistoNo " << backwardHistoNo[i];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user