Page MenuHomeHEPForge

No OneTemporary

diff --git a/src/BNL/BNL_CC1npip_Evt_1DQ2_nu.cxx b/src/BNL/BNL_CC1npip_Evt_1DQ2_nu.cxx
index 68957bb..df844bb 100644
--- a/src/BNL/BNL_CC1npip_Evt_1DQ2_nu.cxx
+++ b/src/BNL/BNL_CC1npip_Evt_1DQ2_nu.cxx
@@ -1,83 +1,93 @@
// Copyright 2016 L. Pickering, P Stowell, R. Terri, C. Wilkinson, C. Wret
/*******************************************************************************
* This file is part of NUISANCE.
*
* NUISANCE is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NUISANCE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NUISANCE. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
#include "BNL_CC1npip_Evt_1DQ2_nu.h"
+// T. Kitagaki et al. "Charged-current exclusive pion production in neutrino-deuterium interactions"
+// Physical Review D, Volume 34, Number 9, 1 Nov 1986
+// Figure 3
+//
+// Also see
+// N. J. Baker et al. "Study of the isospin structure of single-pion production in charged-current neutrino interactions"
+// Physical Review D, Volume 23, Number 11, 1 June 1981
+//
+// K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
+// KEK Preprint 2003-48, RCNS-03-01, September 2003
//********************************************************************
BNL_CC1npip_Evt_1DQ2_nu::BNL_CC1npip_Evt_1DQ2_nu(nuiskey samplekey) {
//********************************************************************
// Sample overview ---------------------------------------------------
std::string descrip = "BNL_CC1npip_Evt_1DQ2_nu sample. \n" \
"Target: D2 \n" \
"Flux: \n" \
"Signal: \n";
// Setup common settings
fSettings = LoadSampleSettings(samplekey);
fSettings.SetDescription(descrip);
fSettings.SetXTitle("Q^{2}_{CC#pi} (GeV^{2})");
fSettings.SetYTitle("Number of events");
fSettings.SetAllowedTypes("EVT/SHAPE/DIAG", "EVT/SHAPE/DIAG");
fSettings.SetEnuRange(0.0, 3.0);
fSettings.DefineAllowedTargets("D,H");
// CCQELike plot information
fSettings.SetTitle("BNL_CC1npip_Evt_1DQ2_nu");
fSettings.SetDataInput( FitPar::GetDataBase() + "/BNL/CC1pip_on_n/BNL_CC1pip_on_n_noEvents_q2_noWcut_HighQ2Gone.txt" );
fSettings.DefineAllowedSpecies("numu");
FinaliseSampleSettings();
// Scaling Setup ---------------------------------------------------
// ScaleFactor automatically setup for DiffXSec/cm2/Nucleon
fScaleFactor =GetEventHistogram()->Integral("width")/(fNEvents+0.)*2./1.;
// Plot Setup -------------------------------------------------------
SetDataFromTextFile( fSettings.GetDataInput() );
SetPoissonErrors();
SetCovarFromDiagonal();
// Final setup ---------------------------------------------------
FinaliseMeasurement();
};
void BNL_CC1npip_Evt_1DQ2_nu::FillEventVariables(FitEvent *event) {
if (event->NumFSParticle(13) == 0) return;
TLorentzVector Pnu = event->GetNeutrinoIn()->fP;
TLorentzVector Pmu = event->GetHMFSParticle(13)->fP;
// No hadronic mass constraint in BNL CC1n1pi+
// This Q2 is Q2 true
double q2CCpip = -1*(Pnu-Pmu).Mag2()/1.E6;
fXVar = q2CCpip;
return;
};
bool BNL_CC1npip_Evt_1DQ2_nu::isSignal(FitEvent *event) {
return SignalDef::isCC1pi3Prong(event, 14, 211, 2112, EnuMin, EnuMax);
}
diff --git a/src/BNL/BNL_CC1npip_Evt_1DQ2_nu.h b/src/BNL/BNL_CC1npip_Evt_1DQ2_nu.h
index 0c985cd..4a85f6a 100644
--- a/src/BNL/BNL_CC1npip_Evt_1DQ2_nu.h
+++ b/src/BNL/BNL_CC1npip_Evt_1DQ2_nu.h
@@ -1,36 +1,47 @@
// Copyright 2016 L. Pickering, P Stowell, R. Terri, C. Wilkinson, C. Wret
/*******************************************************************************
* This file is part of NUISANCE.
*
* NUISANCE is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NUISANCE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NUISANCE. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
#ifndef BNL_CC1NPIP_EVT_1DQ2_NU_H_SEEN
#define BNL_CC1NPIP_EVT_1DQ2_NU_H_SEEN
#include "Measurement1D.h"
+// T. Kitagaki et al. "Charged-current exclusive pion production in neutrino-deuterium interactions"
+// Physical Review D, Volume 34, Number 9, 1 Nov 1986
+// Figure 3
+//
+// Also see
+// N. J. Baker et al. "Study of the isospin structure of single-pion production in charged-current neutrino interactions"
+// Physical Review D, Volume 23, Number 11, 1 June 1981
+//
+// K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
+// KEK Preprint 2003-48, RCNS-03-01, September 2003
+
class BNL_CC1npip_Evt_1DQ2_nu : public Measurement1D {
public:
BNL_CC1npip_Evt_1DQ2_nu(nuiskey samplekey);
virtual ~BNL_CC1npip_Evt_1DQ2_nu() {};
void FillEventVariables(FitEvent *event);
bool isSignal(FitEvent *event);
private:
};
#endif
diff --git a/src/BNL/BNL_CC1npip_XSec_1DEnu_nu.cxx b/src/BNL/BNL_CC1npip_XSec_1DEnu_nu.cxx
index 5a67861..a2f8080 100644
--- a/src/BNL/BNL_CC1npip_XSec_1DEnu_nu.cxx
+++ b/src/BNL/BNL_CC1npip_XSec_1DEnu_nu.cxx
@@ -1,104 +1,114 @@
// Copyright 2016 L. Pickering, P Stowell, R. Terri, C. Wilkinson, C. Wret
/*******************************************************************************
* This file is part of NUISANCE.
*
* NUISANCE is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NUISANCE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NUISANCE. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
#include "BNL_CC1npip_XSec_1DEnu_nu.h"
+// T. Kitagaki et al. "Charged-current exclusive pion production in neutrino-deuterium interactions"
+// Physical Review D, Volume 34, Number 9, 1 Nov 1986
+// Figure 7
+//
+// Also see
+// N. J. Baker et al. "Study of the isospin structure of single-pion production in charged-current neutrino interactions"
+// Physical Review D, Volume 23, Number 11, 1 June 1981
+//
+// K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
+// KEK Preprint 2003-48, RCNS-03-01, September 2003
//********************************************************************
BNL_CC1npip_XSec_1DEnu_nu::BNL_CC1npip_XSec_1DEnu_nu(nuiskey samplekey) {
//********************************************************************
// Sample overview ---------------------------------------------------
std::string descrip = "BNL_CC1npip_XSec_1DEnu_nu sample. \n" \
"Target: D2 \n" \
"Flux: \n" \
"Signal: \n";
// Setup common settings
fSettings = LoadSampleSettings(samplekey);
fSettings.SetDescription(descrip);
fSettings.SetXTitle("E_{#nu} (GeV)");
fSettings.SetYTitle("#sigma (cm^{2}/neutron)");
fSettings.SetAllowedTypes("FIX/DIAG", "FIX,FREE,SHAPE/DIAG");
fSettings.SetEnuRange(0.0, 3.0);
fSettings.SetS("norm_error", "0.15");
fSettings.DefineAllowedTargets("D,H");
// plot information
fSettings.SetTitle("BNL_CC1npip_XSec_1DEnu_nu");
fSettings.DefineAllowedSpecies("numu");
// User can specifiy to use uncorrected data
UseCorrectedData = !fSettings.Found("name", "Uncorr");
// Now read in different data depending on what the user has specified
std::string DataLocation = GeneralUtils::GetTopLevelDir() + "/data/BNL/CC1pip_on_n/";
// If we're using corrected data
if (UseCorrectedData) {
DataLocation += "BNL_CC1pip_on_n_1986_corr.txt";
// If we're using raw uncorrected data
} else {
DataLocation += "BNL_CC1pip_on_n_1986.txt";
}
fSettings.SetDataInput(DataLocation);
FinaliseSampleSettings();
// Scaling Setup ---------------------------------------------------
// ScaleFactor automatically setup for DiffXSec/cm2/proton
fScaleFactor = (GetEventHistogram()->Integral("width") * 1E-38) / ((fNEvents + 0.)) * 2. / 1.;
// Plot Setup -------------------------------------------------------
SetDataFromTextFile( fSettings.GetDataInput() );
SetCovarFromDiagonal();
// Final setup ---------------------------------------------------
FinaliseMeasurement();
};
void BNL_CC1npip_XSec_1DEnu_nu::FillEventVariables(FitEvent *event) {
TLorentzVector Pnu = event->GetNeutrinoIn()->fP;
// No W cut for BNL CC1pi+ on neutron (I'm happy if you can find it!!!)
double Enu = Pnu.E()/1000.;
fXVar = Enu;
return;
};
bool BNL_CC1npip_XSec_1DEnu_nu::isSignal(FitEvent *event) {
// BNL has somewhat tricky signal definition for the selection:
// P_visible = visible 4-momentum, so the three tracks total momentum
// P_visible > 150 MeV/c2
// Theta_Pvis_nu (angle between visible momentum and neutrino direction) < 50 degrees
// At least one negative track leaves chamber without interacting or stops consistent with muon
// THESE ARE NOT IMPLEMENTED BUT SHOULD BE KNOWN BY ANYONE WHO FITS THIS DATA! (see Kitagaki et al. 2556)
//
// The only actual restriction seems to be the final state particles. There's no mention of E_nu restrictions either (events span to 10GeV in fig 2, Kitagaki)
// There's a mention of uncertainity in the neutrino flux for Enu > 6.0 GeV
return SignalDef::isCC1pi3Prong(event, 14, 211, 2112, EnuMin, EnuMax);
}
diff --git a/src/BNL/BNL_CC1npip_XSec_1DEnu_nu.h b/src/BNL/BNL_CC1npip_XSec_1DEnu_nu.h
index 5cdab22..0770b35 100644
--- a/src/BNL/BNL_CC1npip_XSec_1DEnu_nu.h
+++ b/src/BNL/BNL_CC1npip_XSec_1DEnu_nu.h
@@ -1,38 +1,48 @@
// Copyright 2016 L. Pickering, P Stowell, R. Terri, C. Wilkinson, C. Wret
/*******************************************************************************
* This file is part of NUISANCE.
*
* NUISANCE is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NUISANCE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NUISANCE. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
#ifndef BNL_CC1NPIP_XSEC_1DENU_NU_H_SEEN
#define BNL_CC1NPIP_XSEC_1DENU_NU_H_SEEN
#include "Measurement1D.h"
+// T. Kitagaki et al. "Charged-current exclusive pion production in neutrino-deuterium interactions"
+// Physical Review D, Volume 34, Number 9, 1 Nov 1986
+// Figure 7
+//
+// Also see
+// N. J. Baker et al. "Study of the isospin structure of single-pion production in charged-current neutrino interactions"
+// Physical Review D, Volume 23, Number 11, 1 June 1981
+//
+// K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
+// KEK Preprint 2003-48, RCNS-03-01, September 2003
class BNL_CC1npip_XSec_1DEnu_nu : public Measurement1D {
public:
BNL_CC1npip_XSec_1DEnu_nu(nuiskey samplekey);
virtual ~BNL_CC1npip_XSec_1DEnu_nu() {};
void FillEventVariables(FitEvent *event);
bool isSignal(FitEvent *event);
private:
bool UseCorrectedData;
};
#endif
diff --git a/src/BNL/BNL_CC1pi0_Evt_1DQ2_nu.cxx b/src/BNL/BNL_CC1pi0_Evt_1DQ2_nu.cxx
index 5ce9ba0..11ff3c4 100644
--- a/src/BNL/BNL_CC1pi0_Evt_1DQ2_nu.cxx
+++ b/src/BNL/BNL_CC1pi0_Evt_1DQ2_nu.cxx
@@ -1,85 +1,95 @@
// Copyright 2016 L. Pickering, P Stowell, R. Terri, C. Wilkinson, C. Wret
/*******************************************************************************
* This file is part of NUISANCE.
*
* NUISANCE is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NUISANCE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NUISANCE. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
#include "BNL_CC1pi0_Evt_1DQ2_nu.h"
+// T. Kitagaki et al. "Charged-current exclusive pion production in neutrino-deuterium interactions"
+// Physical Review D, Volume 34, Number 9, 1 Nov 1986
+// Figure 3
+//
+// Also see
+// N. J. Baker et al. "Study of the isospin structure of single-pion production in charged-current neutrino interactions"
+// Physical Review D, Volume 23, Number 11, 1 June 1981
+//
+// K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
+// KEK Preprint 2003-48, RCNS-03-01, September 2003
//********************************************************************
BNL_CC1pi0_Evt_1DQ2_nu::BNL_CC1pi0_Evt_1DQ2_nu(nuiskey samplekey) {
//********************************************************************
// Sample overview ---------------------------------------------------
std::string descrip = "BNL_CC1pi0_Evt_1DQ2_nu sample. \n" \
"Target: D2 \n" \
"Flux: \n" \
"Signal: \n";
// Setup common settings
fSettings = LoadSampleSettings(samplekey);
fSettings.SetDescription(descrip);
fSettings.SetXTitle("Q^{2}_{CC#pi} (GeV^{2})");
fSettings.SetYTitle("Number of events");
fSettings.SetAllowedTypes("EVT/SHAPE/DIAG", "EVT/SHAPE/DIAG");
fSettings.SetEnuRange(0.0, 6.0);
fSettings.DefineAllowedTargets("D,H");
// CCQELike plot information
fSettings.SetTitle("BNL_CC1pi0_Evt_1DQ2_nu");
fSettings.SetDataInput( FitPar::GetDataBase() + "/BNL/CC1pi0_on_n/BNL_CC1pi0_on_n_noEvents_q2_noWcut_HighQ2Gone.txt" );
fSettings.DefineAllowedSpecies("numu");
FinaliseSampleSettings();
// Scaling Setup ---------------------------------------------------
// ScaleFactor automatically setup for DiffXSec/cm2/Nucleon
fScaleFactor = GetEventHistogram()->Integral("width")/(fNEvents+0.);
// Plot Setup -------------------------------------------------------
SetDataFromTextFile( fSettings.GetDataInput() );
SetPoissonErrors();
SetCovarFromDiagonal();
// Final setup ---------------------------------------------------
FinaliseMeasurement();
};
void BNL_CC1pi0_Evt_1DQ2_nu::FillEventVariables(FitEvent *event) {
if (event->NumFSParticle(13) == 0) return;
TLorentzVector Pnu = event->GetNeutrinoIn()->fP;
TLorentzVector Pmu = event->GetHMFSParticle(13)->fP;
// No W cut on BNL CC1pi0
// Want true Q2
double q2CCpi0 = -1*(Pnu-Pmu).Mag2()/1.E6;
fXVar = q2CCpi0;
return;
};
bool BNL_CC1pi0_Evt_1DQ2_nu::isSignal(FitEvent *event) {
return SignalDef::isCC1pi3Prong(event, 14, 111, 2212, EnuMin, EnuMax);
}
diff --git a/src/BNL/BNL_CC1pi0_Evt_1DQ2_nu.h b/src/BNL/BNL_CC1pi0_Evt_1DQ2_nu.h
index 7ae08e2..87d137a 100644
--- a/src/BNL/BNL_CC1pi0_Evt_1DQ2_nu.h
+++ b/src/BNL/BNL_CC1pi0_Evt_1DQ2_nu.h
@@ -1,37 +1,47 @@
// Copyright 2016 L. Pickering, P Stowell, R. Terri, C. Wilkinson, C. Wret
/*******************************************************************************
* This file is part of NUISANCE.
*
* NUISANCE is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NUISANCE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NUISANCE. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
#ifndef BNL_CC1PI0_EVT_1DQ2_NU_H_SEEN
#define BNL_CC1PI0_EVT_1DQ2_NU_H_SEEN
#include "Measurement1D.h"
+// T. Kitagaki et al. "Charged-current exclusive pion production in neutrino-deuterium interactions"
+// Physical Review D, Volume 34, Number 9, 1 Nov 1986
+// Figure 3
+//
+// Also see
+// N. J. Baker et al. "Study of the isospin structure of single-pion production in charged-current neutrino interactions"
+// Physical Review D, Volume 23, Number 11, 1 June 1981
+//
+// K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
+// KEK Preprint 2003-48, RCNS-03-01, September 2003
class BNL_CC1pi0_Evt_1DQ2_nu : public Measurement1D {
public:
BNL_CC1pi0_Evt_1DQ2_nu(nuiskey samplekey);
virtual ~BNL_CC1pi0_Evt_1DQ2_nu() {};
void FillEventVariables(FitEvent *event);
bool isSignal(FitEvent *event);
private:
};
#endif
diff --git a/src/BNL/BNL_CC1pi0_XSec_1DEnu_nu.cxx b/src/BNL/BNL_CC1pi0_XSec_1DEnu_nu.cxx
index 13c0251..30330cf 100644
--- a/src/BNL/BNL_CC1pi0_XSec_1DEnu_nu.cxx
+++ b/src/BNL/BNL_CC1pi0_XSec_1DEnu_nu.cxx
@@ -1,97 +1,107 @@
// Copyright 2016 L. Pickering, P Stowell, R. Terri, C. Wilkinson, C. Wret
/*******************************************************************************
* This file is part of NUISANCE.
*
* NUISANCE is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NUISANCE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NUISANCE. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
#include "BNL_CC1pi0_XSec_1DEnu_nu.h"
+// T. Kitagaki et al. "Charged-current exclusive pion production in neutrino-deuterium interactions"
+// Physical Review D, Volume 34, Number 9, 1 Nov 1986
+// Figure 7
+//
+// Also see
+// N. J. Baker et al. "Study of the isospin structure of single-pion production in charged-current neutrino interactions"
+// Physical Review D, Volume 23, Number 11, 1 June 1981
+//
+// K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
+// KEK Preprint 2003-48, RCNS-03-01, September 2003
//********************************************************************
BNL_CC1pi0_XSec_1DEnu_nu::BNL_CC1pi0_XSec_1DEnu_nu(nuiskey samplekey) {
//********************************************************************
// Sample overview ---------------------------------------------------
std::string descrip = "BNL_CC1pi0_XSec_1DEnu_nu sample. \n" \
"Target: D2 \n" \
"Flux: \n" \
"Signal: \n";
// Setup common settings
fSettings = LoadSampleSettings(samplekey);
fSettings.SetDescription(descrip);
fSettings.SetXTitle("E_{#nu} (GeV)");
fSettings.SetYTitle("#sigma (cm^{2}/neutron)");
fSettings.SetAllowedTypes("FIX/DIAG", "FIX,FREE,SHAPE/DIAG");
fSettings.SetEnuRange(0.0, 6.0);
fSettings.SetS("norm_error", "0.15");
fSettings.DefineAllowedTargets("D,H");
// plot information
fSettings.SetTitle("BNL_CC1pi0_XSec_1DEnu_nu");
fSettings.DefineAllowedSpecies("numu");
// User can specifiy to use uncorrected data
UseCorrectedData = !fSettings.Found("name", "Uncorr");
// Now read in different data depending on what the user has specified
std::string DataLocation = GeneralUtils::GetTopLevelDir() + "/data/BNL/CC1pi0_on_n/";
// If we're using corrected data
if (UseCorrectedData) {
DataLocation += "BNL_CC1pi0_on_n_1986_corr.txt";
// If we're using raw uncorrected data
} else {
DataLocation += "BNL_CC1pi0_on_n_1986.txt";
}
fSettings.SetDataInput(DataLocation);
FinaliseSampleSettings();
// Scaling Setup ---------------------------------------------------
// ScaleFactor automatically setup for DiffXSec/cm2/proton
fScaleFactor = (GetEventHistogram()->Integral("width") * 1E-38) / (fNEvents + 0.) * 2. / 1.;
// Plot Setup -------------------------------------------------------
SetDataFromTextFile( fSettings.GetDataInput() );
SetCovarFromDiagonal();
// Final setup ---------------------------------------------------
FinaliseMeasurement();
};
void BNL_CC1pi0_XSec_1DEnu_nu::FillEventVariables(FitEvent *event) {
TLorentzVector Pnu = event->GetNeutrinoIn()->fP;
//BNL doesn't have a W cut for CC1pi0 sadly (I'm super happy if you can find it!)
double Enu = Pnu.E() / 1000.;
fXVar = Enu;
return;
}
bool BNL_CC1pi0_XSec_1DEnu_nu::isSignal(FitEvent *event) {
return SignalDef::isCC1pi3Prong(event, 14, 111, 2212, EnuMin, EnuMax);
}
diff --git a/src/BNL/BNL_CC1pi0_XSec_1DEnu_nu.h b/src/BNL/BNL_CC1pi0_XSec_1DEnu_nu.h
index 688acab..ede614d 100644
--- a/src/BNL/BNL_CC1pi0_XSec_1DEnu_nu.h
+++ b/src/BNL/BNL_CC1pi0_XSec_1DEnu_nu.h
@@ -1,37 +1,47 @@
// Copyright 2016 L. Pickering, P Stowell, R. Terri, C. Wilkinson, C. Wret
/*******************************************************************************
* This file is part of NUISANCE.
*
* NUISANCE is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NUISANCE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NUISANCE. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
#ifndef BNL_CC1PI0_XSEC_1DENU_NU_H_SEEN
#define BNL_CC1PI0_XSEC_1DENU_NU_H_SEEN
#include "Measurement1D.h"
+// T. Kitagaki et al. "Charged-current exclusive pion production in neutrino-deuterium interactions"
+// Physical Review D, Volume 34, Number 9, 1 Nov 1986
+// Figure 7
+//
+// Also see
+// N. J. Baker et al. "Study of the isospin structure of single-pion production in charged-current neutrino interactions"
+// Physical Review D, Volume 23, Number 11, 1 June 1981
+//
+// K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
+// KEK Preprint 2003-48, RCNS-03-01, September 2003
class BNL_CC1pi0_XSec_1DEnu_nu : public Measurement1D {
public:
BNL_CC1pi0_XSec_1DEnu_nu(nuiskey samplekey);
virtual ~BNL_CC1pi0_XSec_1DEnu_nu() {};
void FillEventVariables(FitEvent *event);
bool isSignal(FitEvent *event);
private:
bool UseCorrectedData;
};
#endif
diff --git a/src/BNL/BNL_CC1ppip_Evt_1DQ2_nu.cxx b/src/BNL/BNL_CC1ppip_Evt_1DQ2_nu.cxx
index c1f4573..b303d44 100644
--- a/src/BNL/BNL_CC1ppip_Evt_1DQ2_nu.cxx
+++ b/src/BNL/BNL_CC1ppip_Evt_1DQ2_nu.cxx
@@ -1,110 +1,114 @@
// Copyright 2016 L. Pickering, P Stowell, R. Terri, C. Wilkinson, C. Wret
/*******************************************************************************
* This file is part of NUISANCE.
*
* NUISANCE is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NUISANCE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NUISANCE. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
-/**
- * Kitagaki et al. Phys Rev D, Volume 34, Number 9, 1 November 1986, p2254-2565
- * K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
- * KEK Preprint 2003-48, RCNS-03-01, September 2003
-*/
+// T. Kitagaki et al. "Charged-current exclusive pion production in neutrino-deuterium interactions"
+// Physical Review D, Volume 34, Number 9, 1 Nov 1986
+// Figure 3
+//
+// K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
+// KEK Preprint 2003-48, RCNS-03-01, September 2003
+// Figure 8
+//
+// Also see
+// N. J. Baker et al. "Study of the isospin structure of single-pion production in charged-current neutrino interactions"
+// Physical Review D, Volume 23, Number 11, 1 June 1981
#include "BNL_CC1ppip_Evt_1DQ2_nu.h"
-
-
//********************************************************************
BNL_CC1ppip_Evt_1DQ2_nu::BNL_CC1ppip_Evt_1DQ2_nu(nuiskey samplekey) {
//********************************************************************
// Sample overview ---------------------------------------------------
std::string descrip = "BNL_CC1ppip_Evt_1DQ2_nu sample. \n" \
"Target: D2 \n" \
"Flux: \n" \
"Signal: \n";
// Setup common settings
fSettings = LoadSampleSettings(samplekey);
fSettings.SetDescription(descrip);
fSettings.SetXTitle("Q^{2}_{CC#pi} (GeV^{2})");
fSettings.SetYTitle("Number of events");
fSettings.SetAllowedTypes("EVT/SHAPE/DIAG", "EVT/SHAPE/DIAG");
fSettings.SetEnuRange(0.5, 6.0);
fSettings.DefineAllowedTargets("D,H");
// plot information
fSettings.SetTitle("BNL #nu_mu CC1n#pi^{+}");
fSettings.DefineAllowedSpecies("numu");
// Hadronic Cut Info
HadCut = fSettings.Found("name", "W14Cut") ? 1.4 : 10.0;
if (HadCut == 1.4) {
fSettings.SetDataInput( FitPar::GetDataBase()
+ "/BNL/CC1pip_on_p/BNL_CC1pip_on_p_noEvents_q2_w14_enu05to6_firstQ2rem.txt" );
} else {
fSettings.SetDataInput( FitPar::GetDataBase()
+ "/BNL/CC1pip_on_p/BNL_CC1pip_on_p_noEvents_q2_noWcut_HighQ2Gone.txt");
fSettings.SetEnuRange(0.0, 10.0);
}
FinaliseSampleSettings();
// Scaling Setup ---------------------------------------------------
// ScaleFactor automatically setup for DiffXSec/cm2/Nucleon
fScaleFactor = GetEventHistogram()->Integral("width") / (fNEvents + 0.);
// Plot Setup -------------------------------------------------------
SetDataFromTextFile( fSettings.GetDataInput() );
SetPoissonErrors();
SetCovarFromDiagonal();
// Final setup ---------------------------------------------------
FinaliseMeasurement();
};
void BNL_CC1ppip_Evt_1DQ2_nu::FillEventVariables(FitEvent *event) {
if (event->NumFSParticle(2212) == 0 || event->NumFSParticle(211) == 0 || event->NumFSParticle(13) == 0) {
return;
}
TLorentzVector Pnu = event->GetNeutrinoIn()->fP;
TLorentzVector Pp = event->GetHMFSParticle(2212)->fP;
TLorentzVector Ppip = event->GetHMFSParticle(211)->fP;
TLorentzVector Pmu = event->GetHMFSParticle(13)->fP;
double hadMass = FitUtils::MpPi(Pp, Ppip);
double q2CCpip = -1.0;
// BNL has a M(pi, p) < 1.4 GeV cut and no W cut.
// This should be specified by user in "type" field
// Reverts to 10 GeV (essentially no W cut!)
if (hadMass < HadCut * 1000.) {
q2CCpip = -1 * (Pnu - Pmu).Mag2() / 1.E6;
}
fXVar = q2CCpip;
return;
};
bool BNL_CC1ppip_Evt_1DQ2_nu::isSignal(FitEvent *event) {
return SignalDef::isCC1pi3Prong(event, 14, 211, 2212, EnuMin, EnuMax);
}
diff --git a/src/BNL/BNL_CC1ppip_Evt_1DQ2_nu.h b/src/BNL/BNL_CC1ppip_Evt_1DQ2_nu.h
index 9c58c22..d8d435e 100644
--- a/src/BNL/BNL_CC1ppip_Evt_1DQ2_nu.h
+++ b/src/BNL/BNL_CC1ppip_Evt_1DQ2_nu.h
@@ -1,37 +1,48 @@
// Copyright 2016 L. Pickering, P Stowell, R. Terri, C. Wilkinson, C. Wret
/*******************************************************************************
* This file is part of NUISANCE.
*
* NUISANCE is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NUISANCE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NUISANCE. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
#ifndef BNL_CC1PPIP_EVT_1DQ2_NU_H_SEEN
#define BNL_CC1PPIP_EVT_1DQ2_NU_H_SEEN
#include "Measurement1D.h"
+// T. Kitagaki et al. "Charged-current exclusive pion production in neutrino-deuterium interactions"
+// Physical Review D, Volume 34, Number 9, 1 Nov 1986
+// Figure 3
+//
+// K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
+// KEK Preprint 2003-48, RCNS-03-01, September 2003
+// Figure 8
+//
+// Also see
+// N. J. Baker et al. "Study of the isospin structure of single-pion production in charged-current neutrino interactions"
+// Physical Review D, Volume 23, Number 11, 1 June 1981
class BNL_CC1ppip_Evt_1DQ2_nu : public Measurement1D {
public:
BNL_CC1ppip_Evt_1DQ2_nu(nuiskey samplekey);
virtual ~BNL_CC1ppip_Evt_1DQ2_nu() {};
void FillEventVariables(FitEvent *event);
bool isSignal(FitEvent *event);
private:
double HadCut; // Hadronic mass cut, specified by user (W < 1.4 or no W cut)
};
#endif
diff --git a/src/BNL/BNL_CC1ppip_Evt_1DcosthAdler_nu.cxx b/src/BNL/BNL_CC1ppip_Evt_1DcosthAdler_nu.cxx
index 306cc6a..7ae0582 100644
--- a/src/BNL/BNL_CC1ppip_Evt_1DcosthAdler_nu.cxx
+++ b/src/BNL/BNL_CC1ppip_Evt_1DcosthAdler_nu.cxx
@@ -1,90 +1,100 @@
// Copyright 2016 L. Pickering, P Stowell, R. Terri, C. Wilkinson, C. Wret
/*******************************************************************************
* This file is part of NUISANCE.
*
* NUISANCE is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NUISANCE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NUISANCE. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
#include "BNL_CC1ppip_Evt_1DcosthAdler_nu.h"
+// T. Kitagaki et al. "Charged-current exclusive pion production in neutrino-deuterium interactions"
+// Physical Review D, Volume 34, Number 9, 1 Nov 1986
+// Figure 12 and related
+//
+// Also see
+// N. J. Baker et al. "Study of the isospin structure of single-pion production in charged-current neutrino interactions"
+// Physical Review D, Volume 23, Number 11, 1 June 1981
+//
+// K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
+// KEK Preprint 2003-48, RCNS-03-01, September 2003
//********************************************************************
BNL_CC1ppip_Evt_1DcosthAdler_nu::BNL_CC1ppip_Evt_1DcosthAdler_nu(nuiskey samplekey) {
//********************************************************************
// Sample overview ---------------------------------------------------
std::string descrip = "BNL_CC1ppip_Evt_1DcosthAdler_nu sample. \n" \
"Target: D2 \n" \
"Flux: \n" \
"Signal: \n";
// Setup common settings
fSettings = LoadSampleSettings(samplekey);
fSettings.SetDescription(descrip);
fSettings.SetXTitle("cos#theta_{Adler}");
fSettings.SetYTitle("Number of events");
fSettings.SetAllowedTypes("EVT/SHAPE/DIAG", "EVT/SHAPE/DIAG");
fSettings.SetEnuRange(0.5, 6.0);
fSettings.DefineAllowedTargets("D,H");
// CCQELike plot information
fSettings.SetTitle("BNL_CC1ppip_Evt_1DcosthAdler_nu");
fSettings.SetDataInput( FitPar::GetDataBase() + "/BNL/CC1pip_on_p/BNL_CC1ppip_W14_cosThAdler.csv" );
fSettings.DefineAllowedSpecies("numu");
FinaliseSampleSettings();
// Scaling Setup ---------------------------------------------------
// ScaleFactor automatically setup for DiffXSec/cm2/Nucleon
fScaleFactor =GetEventHistogram()->Integral("width")/(fNEvents+0.)*2./1.;
// Plot Setup -------------------------------------------------------
SetDataFromTextFile( fSettings.GetDataInput() );
SetPoissonErrors();
SetCovarFromDiagonal();
// Final setup ---------------------------------------------------
FinaliseMeasurement();
};
void BNL_CC1ppip_Evt_1DcosthAdler_nu::FillEventVariables(FitEvent *event) {
fXVar = -999.99;
if (event->NumFSParticle(2212) == 0 ||
event->NumFSParticle(211) == 0 ||
event->NumFSParticle(13) == 0)
return;
TLorentzVector Pnu = event->GetNeutrinoIn()->fP;
TLorentzVector Pp = event->GetHMFSParticle(2212)->fP;
TLorentzVector Ppip = event->GetHMFSParticle(211)->fP;
TLorentzVector Pmu = event->GetHMFSParticle(13)->fP;
// Get the hadronic mass
double hadMass = FitUtils::MpPi(Pp, Ppip);
if (hadMass > 1400) return;
// Get Adler cos theta
double cosThAdler = FitUtils::CosThAdler(Pnu, Pmu, Ppip, Pp);
fXVar = cosThAdler;
};
bool BNL_CC1ppip_Evt_1DcosthAdler_nu::isSignal(FitEvent *event) {
return SignalDef::isCC1pi3Prong(event, 14, 211, 2212,EnuMin,EnuMax);
}
diff --git a/src/BNL/BNL_CC1ppip_Evt_1DcosthAdler_nu.h b/src/BNL/BNL_CC1ppip_Evt_1DcosthAdler_nu.h
index a60c714..8db8ed7 100644
--- a/src/BNL/BNL_CC1ppip_Evt_1DcosthAdler_nu.h
+++ b/src/BNL/BNL_CC1ppip_Evt_1DcosthAdler_nu.h
@@ -1,38 +1,48 @@
// Copyright 2016 L. Pickering, P Stowell, R. Terri, C. Wilkinson, C. Wret
/*******************************************************************************
* This file is part of NUISANCE.
*
* NUISANCE is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NUISANCE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NUISANCE. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
#ifndef BNL_CC1PPIP_EVT_1DCOSTHADLER_NU_H_SEEN
#define BNL_CC1PPIP_EVT_1DCOSTHADLER_NU_H_SEEN
#include "Measurement1D.h"
+// T. Kitagaki et al. "Charged-current exclusive pion production in neutrino-deuterium interactions"
+// Physical Review D, Volume 34, Number 9, 1 Nov 1986
+// Figure 12 and related
+//
+// Also see
+// N. J. Baker et al. "Study of the isospin structure of single-pion production in charged-current neutrino interactions"
+// Physical Review D, Volume 23, Number 11, 1 June 1981
+//
+// K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
+// KEK Preprint 2003-48, RCNS-03-01, September 2003
class BNL_CC1ppip_Evt_1DcosthAdler_nu : public Measurement1D {
public:
BNL_CC1ppip_Evt_1DcosthAdler_nu(nuiskey samplekey);
virtual ~BNL_CC1ppip_Evt_1DcosthAdler_nu() {};
void FillEventVariables(FitEvent *event);
bool isSignal(FitEvent *event);
private:
};
#endif
diff --git a/src/BNL/BNL_CC1ppip_Evt_1Dphi_nu.cxx b/src/BNL/BNL_CC1ppip_Evt_1Dphi_nu.cxx
index 03b4826..dd39272 100644
--- a/src/BNL/BNL_CC1ppip_Evt_1Dphi_nu.cxx
+++ b/src/BNL/BNL_CC1ppip_Evt_1Dphi_nu.cxx
@@ -1,113 +1,123 @@
// Copyright 2016 L. Pickering, P Stowell, R. Terri, C. Wilkinson, C. Wret
/*******************************************************************************
* This file is part of NUISANCE.
*
* NUISANCE is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NUISANCE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NUISANCE. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
#include "BNL_CC1ppip_Evt_1Dphi_nu.h"
+// T. Kitagaki et al. "Charged-current exclusive pion production in neutrino-deuterium interactions"
+// Physical Review D, Volume 34, Number 9, 1 Nov 1986
+// Figure 12 and related
+//
+// Also see
+// N. J. Baker et al. "Study of the isospin structure of single-pion production in charged-current neutrino interactions"
+// Physical Review D, Volume 23, Number 11, 1 June 1981
+//
+// K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
+// KEK Preprint 2003-48, RCNS-03-01, September 2003
//********************************************************************
BNL_CC1ppip_Evt_1Dphi_nu::BNL_CC1ppip_Evt_1Dphi_nu(nuiskey samplekey) {
//********************************************************************
// Sample overview ---------------------------------------------------
std::string descrip = "BNL_CC1ppip_Evt_1Dphi_nu sample. \n" \
"Target: D2 \n" \
"Flux: \n" \
"Signal: \n";
// Setup common settings
fSettings = LoadSampleSettings(samplekey);
fSettings.SetDescription(descrip);
fSettings.SetXTitle("#phi_{Adler}");
fSettings.SetYTitle("Number of events");
fSettings.SetAllowedTypes("EVT/SHAPE/DIAG", "EVT/SHAPE/DIAG");
fSettings.SetEnuRange(0.0, 6.0);
fSettings.DefineAllowedTargets("D,H");
// CCQELike plot information
fSettings.SetTitle("BNL_CC1ppip_Evt_1Dphi_nu");
fSettings.SetDataInput( FitPar::GetDataBase() + "/BNL/CC1pip_on_p/BNL_CC1ppip_W14_phiAdler.csv" );
fSettings.DefineAllowedSpecies("numu");
FinaliseSampleSettings();
// Scaling Setup ---------------------------------------------------
// ScaleFactor automatically setup for DiffXSec/cm2/Nucleon
fScaleFactor =GetEventHistogram()->Integral("width")/(fNEvents+0.)*2./1.;
// Plot Setup -------------------------------------------------------
SetDataFromTextFile( fSettings.GetDataInput() );
SetPoissonErrors();
SetCovarFromDiagonal();
// Final setup ---------------------------------------------------
FinaliseMeasurement();
};
void BNL_CC1ppip_Evt_1Dphi_nu::FillEventVariables(FitEvent *event) {
fXVar = -999.99;
if (event->NumFSParticle(2212) == 0 ||
event->NumFSParticle(211) == 0 ||
event->NumFSParticle(13) == 0)
return;
TLorentzVector Pnu = event->GetNeutrinoIn()->fP;
TLorentzVector Pp = event->GetHMFSParticle(2212)->fP;
TLorentzVector Ppip = event->GetHMFSParticle(211)->fP;
TLorentzVector Pmu = event->GetHMFSParticle(13)->fP;
// Get the hadronic mass
double hadMass = FitUtils::MpPi(Pp, Ppip);
if (hadMass > 1400) return;
// Get phi Adler
double phi = FitUtils::PhiAdler(Pnu, Pmu, Ppip, Pp);
fXVar = phi;
};
bool BNL_CC1ppip_Evt_1Dphi_nu::isSignal(FitEvent *event) {
return SignalDef::isCC1pi3Prong(event, 14, 211, 2212,EnuMin,EnuMax);
}
/*
void BNL_CC1ppip_Evt_1Dphi_nu::FillHistograms() {
if (makeHadronicMassHist) {
hadMassHist->Fill(hadMass);
}
Measurement1D::FillHistograms();
}
void BNL_CC1ppip_Evt_1Dphi_nu::ScaleEvents() {
PlotUtils::FluxUnfoldedScaling(fMCHist, GetFluxHistogram());
PlotUtils::FluxUnfoldedScaling(fMCFine, GetFluxHistogram());
fMCHist->Scale(fScaleFactor);
fMCFine->Scale(fScaleFactor);
return;
}
*/
diff --git a/src/BNL/BNL_CC1ppip_Evt_1Dphi_nu.h b/src/BNL/BNL_CC1ppip_Evt_1Dphi_nu.h
index 867c0a7..d9b077f 100644
--- a/src/BNL/BNL_CC1ppip_Evt_1Dphi_nu.h
+++ b/src/BNL/BNL_CC1ppip_Evt_1Dphi_nu.h
@@ -1,39 +1,49 @@
// Copyright 2016 L. Pickering, P Stowell, R. Terri, C. Wilkinson, C. Wret
/*******************************************************************************
* This file is part of NUISANCE.
*
* NUISANCE is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NUISANCE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NUISANCE. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
#ifndef BNL_CC1PPIP_EVT_1DPHI_NU_H_SEEN
#define BNL_CC1PPIP_EVT_1DPHI_NU_H_SEEN
#include "Measurement1D.h"
+// T. Kitagaki et al. "Charged-current exclusive pion production in neutrino-deuterium interactions"
+// Physical Review D, Volume 34, Number 9, 1 Nov 1986
+// Figure 12 and related
+//
+// Also see
+// N. J. Baker et al. "Study of the isospin structure of single-pion production in charged-current neutrino interactions"
+// Physical Review D, Volume 23, Number 11, 1 June 1981
+//
+// K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
+// KEK Preprint 2003-48, RCNS-03-01, September 2003
class BNL_CC1ppip_Evt_1Dphi_nu : public Measurement1D {
public:
BNL_CC1ppip_Evt_1Dphi_nu(nuiskey samplekey);
virtual ~BNL_CC1ppip_Evt_1Dphi_nu() {};
void FillEventVariables(FitEvent *event);
bool isSignal(FitEvent *event);
private:
TRandom3 rand;
};
#endif
diff --git a/src/BNL/BNL_CC1ppip_XSec_1DEnu_nu.cxx b/src/BNL/BNL_CC1ppip_XSec_1DEnu_nu.cxx
index e4a9675..cf78d78 100644
--- a/src/BNL/BNL_CC1ppip_XSec_1DEnu_nu.cxx
+++ b/src/BNL/BNL_CC1ppip_XSec_1DEnu_nu.cxx
@@ -1,117 +1,128 @@
// Copyright 2016 L. Pickering, P Stowell, R. Terri, C. Wilkinson, C. Wret
/*******************************************************************************
* This file is part of NUISANCE.
*
* NUISANCE is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NUISANCE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NUISANCE. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
#include "BNL_CC1ppip_XSec_1DEnu_nu.h"
+// T. Kitagaki et al. "Charged-current exclusive pion production in neutrino-deuterium interactions"
+// Physical Review D, Volume 34, Number 9, 1 Nov 1986
+// Figure 7
+//
+// Also see
+// N. J. Baker et al. "Study of the isospin structure of single-pion production in charged-current neutrino interactions"
+// Physical Review D, Volume 23, Number 11, 1 June 1981
+//
+// K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
+// KEK Preprint 2003-48, RCNS-03-01, September 2003
+
//********************************************************************
BNL_CC1ppip_XSec_1DEnu_nu::BNL_CC1ppip_XSec_1DEnu_nu(nuiskey samplekey) {
//********************************************************************
// Sample overview ---------------------------------------------------
std::string descrip = "BNL_CC1ppip_XSec_1DEnu_nu sample. \n" \
"Target: D2 \n" \
"Flux: \n" \
"Signal: \n";
// Setup common settings
fSettings = LoadSampleSettings(samplekey);
fSettings.SetDescription(descrip);
fSettings.SetXTitle("E_{#nu} (GeV)");
fSettings.SetYTitle("#sigma (cm^{2}/proton)");
fSettings.SetAllowedTypes("FIX/DIAG", "FIX,FREE,SHAPE/DIAG");
fSettings.SetEnuRange(0.0, 6.0);
fSettings.SetS("norm_error", "0.15");
fSettings.DefineAllowedTargets("D,H");
// plot information
fSettings.SetTitle("BNL_CC1ppip_XSec_1DEnu_nu");
fSettings.DefineAllowedSpecies("numu");
// User can specifiy to use uncorrected data
UseCorrectedData = !fSettings.Found("name", "Uncorr");
// User can specify 1.4 or no W cut
if (fSettings.Found("name", "W14Cut")) wTrueCut = 1.4;
else wTrueCut = 10.0;
// Now read in different data depending on what the user has specified
std::string DataLocation = GeneralUtils::GetTopLevelDir() + "/data/BNL/CC1pip_on_p/";
// If we're using corrected data
if (UseCorrectedData) {
if (wTrueCut == 1.4) {
DataLocation += "BNL_CC1pip_on_p_W14_1986_corr.txt";
fSettings.SetEnuRange(0.5, 3.0);
} else {
DataLocation += "BNL_CC1pip_on_p_1986_corr.txt";
fSettings.SetEnuRange(0.4, 4.0);
}
// If we're using raw uncorrected data
} else {
if (wTrueCut == 1.4) {
DataLocation += "BNL_CC1pip_on_p_W14_1986.txt";
fSettings.SetEnuRange(0.6, 3.0);
} else {
DataLocation += "BNL_CC1pip_on_p_1986.txt";
fSettings.SetEnuRange(0.5, 14.0);
}
}
fSettings.SetDataInput(DataLocation);
FinaliseSampleSettings();
// Scaling Setup ---------------------------------------------------
// ScaleFactor automatically setup for DiffXSec/cm2/proton
fScaleFactor = (GetEventHistogram()->Integral("width") * 1E-38) / ((fNEvents + 0.)) * 2. / 1.;
// Plot Setup -------------------------------------------------------
SetDataFromTextFile( fSettings.GetDataInput() );
SetCovarFromDiagonal();
// Final setup ---------------------------------------------------
FinaliseMeasurement();
};
void BNL_CC1ppip_XSec_1DEnu_nu::FillEventVariables(FitEvent *event) {
if (event->NumFSParticle(2212) == 0 || event->NumFSParticle(211) == 0 || event->NumFSParticle(13) == 0) return;
TLorentzVector Pnu = event->GetNeutrinoIn()->fP;
TLorentzVector Pp = event->GetHMFSParticle(2212)->fP;
TLorentzVector Ppip = event->GetHMFSParticle(211)->fP;
TLorentzVector Pmu = event->GetHMFSParticle(13)->fP;
double hadMass = FitUtils::MpPi(Pp, Ppip);
double Enu = -1.0;
if (hadMass/1000. < wTrueCut) {
Enu = Pnu.E() / 1000.;
}
fXVar = Enu;
return;
};
bool BNL_CC1ppip_XSec_1DEnu_nu::isSignal(FitEvent *event) {
return SignalDef::isCC1pi3Prong(event, 14, 211, 2212, EnuMin, EnuMax);
}
diff --git a/src/BNL/BNL_CC1ppip_XSec_1DEnu_nu.h b/src/BNL/BNL_CC1ppip_XSec_1DEnu_nu.h
index 61592da..a69c357 100644
--- a/src/BNL/BNL_CC1ppip_XSec_1DEnu_nu.h
+++ b/src/BNL/BNL_CC1ppip_XSec_1DEnu_nu.h
@@ -1,38 +1,48 @@
// Copyright 2016 L. Pickering, P Stowell, R. Terri, C. Wilkinson, C. Wret
/*******************************************************************************
* This file is part of NUISANCE.
*
* NUISANCE is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* NUISANCE is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with NUISANCE. If not, see <http://www.gnu.org/licenses/>.
*******************************************************************************/
#ifndef BNL_CC1PPIP_XSEC_1DENU_NU_H_SEEN
#define BNL_CC1PPIP_XSEC_1DENU_NU_H_SEEN
#include "Measurement1D.h"
+// T. Kitagaki et al. "Charged-current exclusive pion production in neutrino-deuterium interactions"
+// Physical Review D, Volume 34, Number 9, 1 Nov 1986
+// Figure 7
+//
+// Also see
+// N. J. Baker et al. "Study of the isospin structure of single-pion production in charged-current neutrino interactions"
+// Physical Review D, Volume 23, Number 11, 1 June 1981
+//
+// K. Furuno et al. NuInt02 proceedings, (supposedly published in Nucl. Phys. B but I never found it), Retreieved from KEK preprints.
+// KEK Preprint 2003-48, RCNS-03-01, September 2003
class BNL_CC1ppip_XSec_1DEnu_nu : public Measurement1D {
public:
BNL_CC1ppip_XSec_1DEnu_nu(nuiskey samplekey);
virtual ~BNL_CC1ppip_XSec_1DEnu_nu() {};
void FillEventVariables(FitEvent *event);
bool isSignal(FitEvent *event);
private:
double wTrueCut;
bool UseCorrectedData;
};
#endif

File Metadata

Mime Type
text/x-diff
Expires
Tue, Nov 19, 8:14 PM (1 d, 7 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3805991
Default Alt Text
(51 KB)

Event Timeline