diff --git a/NPAnalysis/MakePhysicalTree/Analysis.cxx b/NPAnalysis/MakePhysicalTree/Analysis.cxx index b5b590d36b278bf3e9a50b71eb4e2f5fbf08e744..47b3da4f69845162c5351752e4708d883811f796 100644 --- a/NPAnalysis/MakePhysicalTree/Analysis.cxx +++ b/NPAnalysis/MakePhysicalTree/Analysis.cxx @@ -27,8 +27,13 @@ int main(int argc, char** argv) // Instantiate the detector using a file NPA::DetectorManager* myDetector = new DetectorManager(); myDetector->ReadConfigurationFile(detectorfileName); + double EGammaDC[4]; + RootOutput::getInstance()->GetTree()->Branch("EGammaDC", &EGammaDC, "EGammaDC[4]/D"); + float beta=0.17; + // Get the formed Chained Tree and Treat it TChain* Chain = RootInput:: getInstance() -> GetChain(); + TExogamPhysics *Exo = (TExogamPhysics*) myDetector -> GetDetector("EXOGAM") ; // Get number of events to treat cout << endl << "///////// Starting Analysis ///////// "<< endl; @@ -61,6 +66,19 @@ int main(int argc, char** argv) Put your code here ************************************************/ + for(int i=0; i<4; i++) EGammaDC[i]=0; + for(int i=0; i<Exo->TotalEnergy_lab.size(); i++) + { + float mytheta=Exo->GetSegmentAnglePhi(Exo->CloverNumber[i], Exo->CristalNumber[i], Exo->SegmentNumber[i]); + float myphi=Exo->GetSegmentAngleTheta(Exo->CloverNumber[i], Exo->CristalNumber[i], Exo->SegmentNumber[i]); + //myv(Exo->TotalEnergy_lab[i]*sin(mytheta)*sin(myphi),Exo->TotalEnergy_lab[i]*sin(mytheta)*cos(myphi) , Exo->TotalEnergy_lab[i]*cos(mytheta),(Exo->TotalEnergy_lab)[i]); + //cout<<Exo->TotalEnergy_lab[i]<<endl; + EGammaDC[i]=Exo->TotalEnergy_lab[i]*(1-beta*cos(mytheta*TMath::DegToRad()))/sqrt(1-beta*beta); + //TVector3 boost= imp4.BoostVector(); + //myv.Boost(-boost); + //DopplerCorrectedEnergy.push_back(myv.T()); + //h_DopplerCorrectedEnergy->Fill(myv.T()); + } RootOutput::getInstance()->GetTree()->Fill(); } diff --git a/NPAnalysis/MakePhysicalTree/Analysis.h b/NPAnalysis/MakePhysicalTree/Analysis.h index 5a878e0e4cc70264e5739d2c8d875e04788f130d..d5ca8c305a8f3b7d788651234860e30edb569327 100644 --- a/NPAnalysis/MakePhysicalTree/Analysis.h +++ b/NPAnalysis/MakePhysicalTree/Analysis.h @@ -33,6 +33,7 @@ #include "TPlasticData.h" #include "TMust2Data.h" #include "TMust2Physics.h" +#include "TExogamPhysics.h" #include "TSSSDPhysics.h" #include "TPlasticPhysics.h" #include "GaspardTracker.h" diff --git a/NPAnalysis/MakePhysicalTree/RunToTreat.txt b/NPAnalysis/MakePhysicalTree/RunToTreat.txt index a54d65b1c3d4ab602a5d1d27f2fd24d2d1e91082..7d6ccc63fa563562506ec3a1b53d3b257d6ef83b 100644 --- a/NPAnalysis/MakePhysicalTree/RunToTreat.txt +++ b/NPAnalysis/MakePhysicalTree/RunToTreat.txt @@ -1,4 +1,4 @@ TTreeName - S1107Data + AutoTree RootFileName - /Users/adrienmatta/Desktop/S1107/data2251*.root + /data/e628X/e628/acquisition/run_root/run_1070.root diff --git a/NPAnalysis/must2/Analysis.cxx b/NPAnalysis/must2/Analysis.cxx index d0f0260f29679dfcbebaf3650f11313abaec29b9..a17da2e7a4fc6c29757d99cb1297e49bdc9eb3a4 100644 --- a/NPAnalysis/must2/Analysis.cxx +++ b/NPAnalysis/must2/Analysis.cxx @@ -51,7 +51,7 @@ int main(int argc,char** argv) Double_t BeamEnergyNominal = myReaction->GetBeamEnergy() * MeV; cout << "Nominal beam energy (MeV): " << BeamEnergyNominal << endl; // Slow beam at target middle - Double_t BeamEnergy = Fe60TargetCD2.Slow(BeamEnergyNominal, myDetector->GetTargetThickness()/2 * micrometer, 0); + Double_t BeamEnergy = BeamTargetCD2.Slow(BeamEnergyNominal, myDetector->GetTargetThickness()/2 * micrometer, 0); cout << "Middle-target beam energy (MeV): " << BeamEnergy << endl; // Set energy beam at target middle myReaction->SetBeamEnergy(BeamEnergy); diff --git a/NPAnalysis/must2/Analysis.h b/NPAnalysis/must2/Analysis.h index c1ce8ae69dbd58653eaaf01a7954f4c36b13da7d..f95f81f1191e761f2f1520727e3e17b1ac2fcc8b 100644 --- a/NPAnalysis/must2/Analysis.h +++ b/NPAnalysis/must2/Analysis.h @@ -9,7 +9,7 @@ #include "DetectorManager.h" #include "NPOptionManager.h" #include "TMust2Physics.h" - +#include "TExogamPhysics.h" // STL C++ #include <iostream> #include <fstream> @@ -109,7 +109,7 @@ namespace ENERGYLOSS { // Beam Energy Loss - EnergyLoss Fe60TargetCD2 = EnergyLoss ("Fe60[0.0]_CD2.G4table", + EnergyLoss BeamTargetCD2 = EnergyLoss ("O18[0.0]_CD2.G4table", "G4Table" , 1000 ); @@ -169,13 +169,13 @@ namespace ENERGYLOSS 3, 1.008 ); - EnergyLoss protonTargetC = EnergyLoss ("proton_carbone.txt" , + /*EnergyLoss protonTargetC = EnergyLoss ("proton_carbone.txt" , "LISE" , 1000 , 3 , 1.008 ); - /* + EnergyLoss protonTargetCD2 = EnergyLoss ("proton_cd2.txt" , "LISE" , 1000 , diff --git a/NPAnalysis/must2/Calibration.txt b/NPAnalysis/must2/Calibration.txt index 02a94e3a16f3fecbb7608dacbf3c17ad9b7502cc..b72d83cf59c2a1afd15a24cc2d0c6cf4d3b3c7d7 100644 --- a/NPAnalysis/must2/Calibration.txt +++ b/NPAnalysis/must2/Calibration.txt @@ -1,13 +1,19 @@ CalibrationFilePath - calibration/Cal_Str_X_E_MM1.cal - calibration/Cal_Str_X_E_MM2.cal - calibration/Cal_Str_X_E_MM3.cal - calibration/Cal_Str_X_E_MM4.cal - calibration/Cal_Str_Y_E_MM1.cal - calibration/Cal_Str_Y_E_MM2.cal - calibration/Cal_Str_Y_E_MM3.cal - calibration/Cal_Str_Y_E_MM4.cal - calibration/Cal_SSSD_E_1.cal - calibration/Cal_SSSD_E_2.cal - calibration/Cal_SSSD_E_3.cal - calibration/Cal_SSSD_E_4.cal +/home/e628/nptool/NPAnalysis/Exogam/calibration_Exogam_Seg.cal +/home/e628/nptool/NPAnalysis/Exogam/calibration_Exogam_ECC.cal +/home/e628/nptool/NPAnalysis/must2/macro/Calibration/Energy/Calibration/calib_run1007/Test_X_T1_E/Cal_Str_X_E_MM1.cal +/home/e628/nptool/NPAnalysis/must2/macro/Calibration/Energy/Calibration/calib_run1007/Test_X_T2_E/Cal_Str_X_E_MM2.cal +/home/e628/nptool/NPAnalysis/must2/macro/Calibration/Energy/Calibration/calib_run1007/Test_X_T3_E/Cal_Str_X_E_MM3.cal +/home/e628/nptool/NPAnalysis/must2/macro/Calibration/Energy/Calibration/calib_run1007/Test_X_T4_E/Cal_Str_X_E_MM4.cal +/home/e628/nptool/NPAnalysis/must2/macro/Calibration/Energy/Calibration/calib_run1007/Test_Y_T1_E/Cal_Str_Y_E_MM1.cal +/home/e628/nptool/NPAnalysis/must2/macro/Calibration/Energy/Calibration/calib_run1007/Test_Y_T2_E/Cal_Str_Y_E_MM2.cal +/home/e628/nptool/NPAnalysis/must2/macro/Calibration/Energy/Calibration/calib_run1007/Test_Y_T3_E/Cal_Str_Y_E_MM3.cal +/home/e628/nptool/NPAnalysis/must2/macro/Calibration/Energy/Calibration/calib_run1007/Test_Y_T4_E/Cal_Str_Y_E_MM4.cal +/home/e628/nptool/NPAnalysis/must2/macro/Calibration/Time/Coeff/Cal_Str_X_T_MM1.cal +/home/e628/nptool/NPAnalysis/must2/macro/Calibration/Time/Coeff/Cal_Str_X_T_MM2.cal +/home/e628/nptool/NPAnalysis/must2/macro/Calibration/Time/Coeff/Cal_Str_X_T_MM3.cal +/home/e628/nptool/NPAnalysis/must2/macro/Calibration/Time/Coeff/Cal_Str_X_T_MM4.cal +/home/e628/nptool/NPAnalysis/must2/macro/Calibration/Time/Coeff/Cal_Str_Y_T_MM1.cal +/home/e628/nptool/NPAnalysis/must2/macro/Calibration/Time/Coeff/Cal_Str_Y_T_MM2.cal +/home/e628/nptool/NPAnalysis/must2/macro/Calibration/Time/Coeff/Cal_Str_Y_T_MM3.cal +/home/e628/nptool/NPAnalysis/must2/macro/Calibration/Time/Coeff/Cal_Str_Y_T_MM4.cal diff --git a/NPAnalysis/must2/macro/Calibration/Energy/EnergyCalibrator.h b/NPAnalysis/must2/macro/Calibration/Energy/EnergyCalibrator.h index 0bac1e687b1a79fe234193f87f3f74fb8f60ed5f..178d091223373b1b746418c5eb0f66e6a065fb96 100644 --- a/NPAnalysis/must2/macro/Calibration/Energy/EnergyCalibrator.h +++ b/NPAnalysis/must2/macro/Calibration/Energy/EnergyCalibrator.h @@ -37,14 +37,14 @@ EnergyLoss EL_Al("./EnergyLossTable/alpha_Al.G4table" , "G4Table", 100) ; EnergyLoss EL_Si("./EnergyLossTable/alpha_Si.G4table" , "G4Table", 100) ; // Information about the calibration condition (use Latex marks-up) -const TString xy = "X" ; +const TString xy = "Y" ; -const TString Experiment = "RRC66"; -const TString Run_Period = "june 2010, Riken RIPS, Run 13-22"; -const TString Operator = "Adrien MATTA"; +const TString Experiment = "Test"; +const TString Run_Period = "december 2013"; +const TString Operator = "e628 e644 e657 teams"; const TString Source = "3 alpha peaks $^{239}$Pu, $^{241}$Am, $^{244}$Cm"; const TString Comment = "Source at 0$^{\\circ}$ facing Telescope 1,2,3,4"; -const char* frun = "RC66_run_13-22"; +const char* frun = "run_1007"; //const TString Experiment = "RIBF57"; //const TString Run_Period = "April 2010, Riken BigRIPS, Run 3"; diff --git a/NPAnalysis/must2/macro/Calibration/Energy/ExtractRawHisto_E.C b/NPAnalysis/must2/macro/Calibration/Energy/ExtractRawHisto_E.C index 738fb2854037c97447ef31f60a5062b0c957b053..930af010e94fa5b6385d27c7cb4c4a8ef658df92 100755 --- a/NPAnalysis/must2/macro/Calibration/Energy/ExtractRawHisto_E.C +++ b/NPAnalysis/must2/macro/Calibration/Energy/ExtractRawHisto_E.C @@ -16,14 +16,14 @@ #include "TBranch.h" #include "TH1F.h" -#include "../NPLib/include/TMust2Data.h" -#include "../NPLib/include/RootInput.h" +#include "/home/e628/nptool/NPLib/include/TMust2Data.h" +#include "/home/e628/nptool/NPLib/include/RootInput.h" -#define NBTELESCOPE 8 +#define NBTELESCOPE 4 #define NBSTRIPS 128 #define NBSILI 16 -void ExtractMust2Histos(const char* fname = "run_13-22") +void ExtractMust2Histos(const char* fname = "run_1007") { RootInput* Input = RootInput::getInstance("RunToTreat.txt"); @@ -36,7 +36,7 @@ void ExtractMust2Histos(const char* fname = "run_13-22") Chain->SetBranchAddress("MUST2",&rawMust2); // open the output ROOT file - TString outFileName = "./Histograms/"; + TString outFileName = "/data/e628X/e628/acquisition/spectre/Histograms/"; outFileName += fname; outFileName += "_RawMust2Histos.root"; cout<< outFileName<< endl; diff --git a/NPAnalysis/must2/macro/Calibration/Energy/RunToTreat.txt b/NPAnalysis/must2/macro/Calibration/Energy/RunToTreat.txt index 98012e554b562d0a90c3bdda515465a440a15b37..525fef7a6a04db5366119f1f8b4eabf098261b6e 100755 --- a/NPAnalysis/must2/macro/Calibration/Energy/RunToTreat.txt +++ b/NPAnalysis/must2/macro/Calibration/Energy/RunToTreat.txt @@ -1,13 +1,16 @@ TTreeName AutoTree RootFileName - /media/51abf4be-f48e-4407-85ae-a4b8e0c480c3/NPTool/NPTool.dev/Outputs/Converted/run_0013.root - /media/51abf4be-f48e-4407-85ae-a4b8e0c480c3/NPTool/NPTool.dev/Outputs/Converted/run_0014.root - /media/51abf4be-f48e-4407-85ae-a4b8e0c480c3/NPTool/NPTool.dev/Outputs/Converted/run_0015.root - /media/51abf4be-f48e-4407-85ae-a4b8e0c480c3/NPTool/NPTool.dev/Outputs/Converted/run_0016.root - /media/51abf4be-f48e-4407-85ae-a4b8e0c480c3/NPTool/NPTool.dev/Outputs/Converted/run_0017.root - /media/51abf4be-f48e-4407-85ae-a4b8e0c480c3/NPTool/NPTool.dev/Outputs/Converted/run_0018.root - /media/51abf4be-f48e-4407-85ae-a4b8e0c480c3/NPTool/NPTool.dev/Outputs/Converted/run_0019.root - /media/51abf4be-f48e-4407-85ae-a4b8e0c480c3/NPTool/NPTool.dev/Outputs/Converted/run_0020.root - /media/51abf4be-f48e-4407-85ae-a4b8e0c480c3/NPTool/NPTool.dev/Outputs/Converted/run_0021.root - /media/51abf4be-f48e-4407-85ae-a4b8e0c480c3/NPTool/NPTool.dev/Outputs/Converted/run_0022.root +%/data/e628X/e628/acquisition/run_root/run_1007_1.root +%/data/e628X/e628/acquisition/run_root/run_1007_2.root +%/data/e628X/e628/acquisition/run_root/run_1007_3.root +%/data/e628X/e628/acquisition/run_root/run_1007_4.root +%/data/e628X/e628/acquisition/run_root/run_1007_5.root +%/data/e628X/e628/acquisition/run_root/run_1007_6.root +%/data/e628X/e628/acquisition/run_root/run_1007_7.root +%/data/e628X/e628/acquisition/run_root/run_1007_8.root +%/data/e628X/e628/acquisition/run_root/run_1007_9.root +%/data/e628X/e628/acquisition/run_root/run_1007_10.root +%/data/e628X/e628/acquisition/run_root/run_1007_11.root +%/data/e628X/e628/acquisition/run_root/run_1007_12.root + diff --git a/NPAnalysis/must2/macro/Calibration/Time/ExtractRawHisto_T.C b/NPAnalysis/must2/macro/Calibration/Time/ExtractRawHisto_T.C index e7f794f1a8bd103a296a59a79ab7dd9f5555c48f..71211e0c70bf4896f80d484cb1952717f0468253 100755 --- a/NPAnalysis/must2/macro/Calibration/Time/ExtractRawHisto_T.C +++ b/NPAnalysis/must2/macro/Calibration/Time/ExtractRawHisto_T.C @@ -16,18 +16,25 @@ #include "TBranch.h" #include "TH1F.h" +//#include "TMust2Data.h" +//#include "/home/e628/nptool/NPLib/include/TMust2Data.h"/// +//#include "/home/e628/nptool/NPLib/include/RootInput.h"//// #include "TMust2Data.h" +#include "RootInput.h" -#define NBTELESCOPE 8 +#define NBTELESCOPE 4 #define NBSTRIPS 128 #define NBSILI 16 -void ExtractMust2Histos(const char* fname = "run_0040") +void ExtractMust2Histos(const char* fname = "run_033") { // open the ROOT file to process - TString path = gSystem->Getenv("RUN_NPT_ROOT"); - path+="/runGRU/"; + //TString path = gSystem->Getenv("RUN_NPT_ROOT");// + // path+="/data/e644X/e644/acquisition/run_root/"; + // path+="/runGRU/";// + + TString path = "/data/e644X/e644/acquisition/run_root/"; TString inFileName = fname; inFileName += ".root"; TFile *inFile = new TFile(path + inFileName); diff --git a/NPAnalysis/must2/macro/Calibration/Time/TimeCalibrator.C b/NPAnalysis/must2/macro/Calibration/Time/TimeCalibrator.C index 8f24c80acf8057f36b378594ad6f8f99f2354b84..d24001beffdc7bcebd1412fb7392e26c4bcfe0f8 100755 --- a/NPAnalysis/must2/macro/Calibration/Time/TimeCalibrator.C +++ b/NPAnalysis/must2/macro/Calibration/Time/TimeCalibrator.C @@ -14,7 +14,7 @@ #include "TF1.h" using namespace std; -#define TELESCOPE_START 1 +#define TELESCOPE_START 4 #define TELESCOPE_END 4 #define STRIP_START 1 #define STRIP_END 128 @@ -31,8 +31,8 @@ Double_t pol2 (Double_t *,Double_t *); ofstream peaks_file, calib_file, dispersion_file,calib_online_file; -void TimeCalibrator(const char* frun = "run_0042", TString xy = "Y",Int_t -npeak= 49) +void TimeCalibrator(const char* frun = "run_033", TString xy = "Y",Int_t +npeak= 30)//49 { // open the ROOT file to process TString path = "./Histograms/"; diff --git a/NPLib/CATS/TCATSPhysics.cxx b/NPLib/CATS/TCATSPhysics.cxx index 08f30e86a3b8f241e8f10f2f46e8c742bd4cfeb9..c42b0e231193516cb9914a8bf9d47670f7f2a5f9 100644 --- a/NPLib/CATS/TCATSPhysics.cxx +++ b/NPLib/CATS/TCATSPhysics.cxx @@ -485,7 +485,6 @@ void TCATSPhysics::AddCATS(TVector3 C_X1_Y1, TVector3 C_X28_Y1, TVector3 C_X1_Y2 // Moving StripCenter to 1.1 corner (strip center!) : Strip_1_1 = C_X1_Y1 + (U+V) * (StripPitch/2) ; - for( int i = 0 ; i < 28 ; i++ ) { lineX.clear() ; diff --git a/NPLib/CATS/TCATSSpectra.cxx b/NPLib/CATS/TCATSSpectra.cxx index 404cf49693366498685958d8b70a61a4b7ee71b7..0aaad144e5c44985b9fb9b459ec66610d99a7799 100644 --- a/NPLib/CATS/TCATSSpectra.cxx +++ b/NPLib/CATS/TCATSSpectra.cxx @@ -143,11 +143,11 @@ void TCATSSpectra::InitPhysicsSpectra(){ family = "CATS/PHY/POS"; for (unsigned int i = 0; i < fNumberOfCats; ++i) { // loop on number of cats name = Form("CATS%d_POS", i+1); - AddHisto2D(name, name,100,-50,50,100,-50,50,family); + AddHisto2D(name, name,500,-50,50,500,-50,50,family); } name = "TARGET_POS"; - AddHisto2D(name, name,100,-50,50,100,-50,50,family); + AddHisto2D(name, name,500,-50,50,500,-50,50,family); name = "TRAJECTORY_XZ"; AddHisto2D(name, name,100,-50,50,100,-50,50,family); diff --git a/NPLib/Exogam/TExogamPhysics.cxx b/NPLib/Exogam/TExogamPhysics.cxx index 890c16acee1cb3fc70a0bffb0637940e39ba9001..cb09dc2a75ebf0a28ae39bf9685ffd83798aebb6 100644 --- a/NPLib/Exogam/TExogamPhysics.cxx +++ b/NPLib/Exogam/TExogamPhysics.cxx @@ -7,8 +7,8 @@ /***************************************************************************** * Original Author: Sandra GIRON contact address: giron@ipno.in2p3.fr * - * * - * Creation Date : july 2010 * + * Benjamin LE CROM lecrom@ipno.in2p3.fr * + * Creation Date : march 2014 * * Last update : * *---------------------------------------------------------------------------* * Decription: * @@ -397,10 +397,15 @@ void TExogamPhysics::BuildPhysicalEvent() double TExogamPhysics::DopplerCorrection(double E, double Theta) { double Pi = 3.141592654 ; + TString filename = "configs/beta.txt"; + ifstream file; + //cout << filename << endl; + file.open(filename); + if(!file) cout << filename << " was not opened" << endl; double E_corr = 0; - //double beta = 0.197; // baptiste value - double beta = 0.17; //beta for 18O@15MeV/u + double beta = 0.; + file>>beta; double gamma = 1./ sqrt(1-beta*beta); E_corr = gamma * E * ( 1. - beta * cos(Theta*Pi/180.)); @@ -552,7 +557,12 @@ void TExogamPhysics::ClearSpectra(){ } /////////////////////////////////////////////////////////////////////////// map< vector<TString> , TH1*> TExogamPhysics::GetSpectra() { -return m_Spectra->GetMapHisto(); + if(m_Spectra) + return m_Spectra->GetMapHisto(); + else{ + map< vector<TString> , TH1*> empty; + return empty; + } } void TExogamPhysics::AddClover(string AngleFile) @@ -562,7 +572,7 @@ void TExogamPhysics::AddClover(string AngleFile) // TString filename = Form("posz42_simu50mm/angles_exogam_clover%d.txt",NumberOfClover); // TString filename = Form("posz42_exp_stat_demiring/angles_exogam_clover%d.txt",NumberOfClover); - string path = "posz42_exp_stat_demiring/"; + string path = "configs/"; TString filename = path + AngleFile; cout << filename << endl; @@ -653,7 +663,37 @@ void TExogamPhysics::InitializeRootInputRaw() outputList->Add(cristal_mult); */ } - + +///////////////////////////////////////////////////////////////////// +// Activated associated Branches and link it to the private member DetectorPhysics address +// In this method mother Branches (Detector) AND daughter leaf (parameter) have to be activated +void TExogamPhysics::InitializeRootInputPhysics() { + TChain* inputChain = RootInput::getInstance()->GetChain(); + inputChain->SetBranchStatus( "EventMultiplicty" , true ); + inputChain->SetBranchStatus( "ECC_Multiplicity" , true ); + inputChain->SetBranchStatus( "GOCCE_Multiplicity" , true ); + inputChain->SetBranchStatus( "ECC_CloverNumber" , true ); + inputChain->SetBranchStatus( "ECC_CristalNumber" , true ); + inputChain->SetBranchStatus( "GOCCE_CloverNumber" , true ); + inputChain->SetBranchStatus( "GOCCE_CristalNumber" , true ); + inputChain->SetBranchStatus( "GOCCE_SegmentNumber" , true ); + inputChain->SetBranchStatus( "ECC_E" , true ); + inputChain->SetBranchStatus( "ECC_T" , true ); + inputChain->SetBranchStatus( "GOCCE_E" , true ); + inputChain->SetBranchStatus( "CristalNumber" , true ); + inputChain->SetBranchStatus( "SegmentNumber" , true ); + inputChain->SetBranchStatus( "CloverNumber" , true ); + inputChain->SetBranchStatus( "CloverMult" , true ); + inputChain->SetBranchStatus( "TotalEnergy_lab" , true ); + inputChain->SetBranchStatus( "Time" , true ); + inputChain->SetBranchStatus( "DopplerCorrectedEnergy" , true ); + inputChain->SetBranchStatus( "Position" , true ); + inputChain->SetBranchStatus( "Theta" , true ); + inputChain->SetBranchAddress( "EXOGAM" , &EventPhysics ); + +} + +///////////////////////////////////////////////////////////////////// // Create associated branches and associated private member DetectorPhysics address void TExogamPhysics::InitializeRootOutput() diff --git a/NPLib/Exogam/TExogamPhysics.h b/NPLib/Exogam/TExogamPhysics.h index e722350cecfc235877521ab034584269392a64c2..e41b8fcccad445880f4ae12f1788a60a50494917 100644 --- a/NPLib/Exogam/TExogamPhysics.h +++ b/NPLib/Exogam/TExogamPhysics.h @@ -9,8 +9,8 @@ /***************************************************************************** * Original Author: S. Giron contact address: giron@ipno.in2p3.fr * - * * - * Creation Date : febuary 2009 * + * B. Le Crom lecrom@ipno.in2p3.fr * + * Creation Date : march 2014 * * Last update : * *---------------------------------------------------------------------------* * Decription: * @@ -108,6 +108,9 @@ class TExogamPhysics : public TObject, public NPA::VDetector // In this method mother Branches (Detector) AND daughter leaf (fDetector_parameter) have to be activated void InitializeRootInputRaw() ; + // Activated associated Branches and link it to the private member DetectorPhysics address + // In this method mother Branches (Detector) AND daughter leaf (parameter) have to be activated + void InitializeRootInputPhysics() ;///////////////////////////////////////////////////////////////////////// // Create associated branches and associated private member DetectorPhysics address void InitializeRootOutput() ; @@ -126,12 +129,6 @@ class TExogamPhysics : public TObject, public NPA::VDetector double DopplerCorrection(double Energy, double Theta); - // Give and external TMustData object to TMust2Physics. Needed for online analysis for example. - void SetRawDataPointer(TExogamData* rawDataPointer) {EventData = rawDataPointer;} - // Retrieve raw and pre-treated data - TExogamData* GetRawData() const {return EventData;} - TExogamData* GetPreTreatedData() const {return PreTreatedData;} - // Those two method all to clear the Event Physics or Data void ClearEventPhysics() {Clear();} void ClearEventData() {EventData->Clear();} @@ -165,7 +162,14 @@ class TExogamPhysics : public TObject, public NPA::VDetector Double_t GetSegmentAnglePhi(int Clover, int Cristal, int Segment) {return(Clover_Angles_Theta_Phi[Clover][Cristal][Segment][1]);}; Double_t GetSegmentAngleTheta(int Clover, int Cristal, int Segment) {return(Clover_Angles_Theta_Phi[Clover][Cristal][Segment][0]);}; - + + // Give and external TMustData object to TExogamPhysics. Needed for online analysis for example. + void SetRawDataPointer(TExogamData* rawDataPointer) {EventData = rawDataPointer;} + // Retrieve raw and pre-treated data + TExogamData* GetRawData() const {return EventData;} + TExogamData* GetPreTreatedData() const {return PreTreatedData;} + + private: // Spectra Class TExogamSpectra* m_Spectra;//! diff --git a/NPLib/MUST2/TMust2Spectra.cxx b/NPLib/MUST2/TMust2Spectra.cxx index 526ad883eaceb32beb80abe84f077b338742acd3..8000eb4e60731a12642b062ed773d21ef3152c84 100644 --- a/NPLib/MUST2/TMust2Spectra.cxx +++ b/NPLib/MUST2/TMust2Spectra.cxx @@ -99,7 +99,7 @@ void TMust2Spectra::InitRawSpectra(){ // CSI_E_RAW name = Form("MM%d_CSI_E_RAW", i+1); - AddHisto2D(name, name, fCrystalCsI, 1, fCrystalCsI+1, 512, 0, 8192, "MUST2/RAW/CSIE"); + AddHisto2D(name, name, fCrystalCsI, 1, fCrystalCsI+1, 512, 0, 16384, "MUST2/RAW/CSIE"); // CSI_T_RAW name = Form("MM%d_CSI_T_RAW", i+1); @@ -154,7 +154,7 @@ void TMust2Spectra::InitPreTreatedSpectra() // CSI_E_CAL name = Form("MM%d_CSI_E_CAL", i+1); - AddHisto2D(name, name, fCrystalCsI, 1, fCrystalCsI+1, 500, 0, 50, "MUST2/CAL/CSIE"); + AddHisto2D(name, name, fCrystalCsI, 1, fCrystalCsI+1, 500, 0, 500, "MUST2/CAL/CSIE"); // CSI_T_CAL name = Form("MM%d_CSI_T_CAL", i+1); diff --git a/NPLib/Misc/TTacData.cxx b/NPLib/Misc/TTacData.cxx index 202455319aa96ec95cc1ee0bcf51e151c345de17..95e1bb8895df5a36279bcbfec389daf047ede463 100644 --- a/NPLib/Misc/TTacData.cxx +++ b/NPLib/Misc/TTacData.cxx @@ -6,7 +6,7 @@ *****************************************************************************/ /***************************************************************************** - * Original Author: contact address: * + * Original Author: Benjamin Le Crom contact address: lecrom@ipno.in2p3.fr * * * * Creation Date : * * Last update : * @@ -40,24 +40,25 @@ TTacData::~TTacData() void TTacData::Clear() { // (TAC) - fTAC_MM_CATS1 = -1; - fTAC_MM_CATS2 = -1; - fTAC_PL_CATS1 = -1; - fTAC_PL_CATS2 = -1; - fTAC_CATS12 = -1; - fTAC_PL_GAL = -1; - fTAC_CATS1_HF = -1; - fTAC_CATS2_HF = -1; - fTAC_MM_HF = -1; - fTAC_MM1_HF = -1; - fTAC_MM2_HF = -1; - fTAC_MM3_HF = -1; - fTAC_MM4_HF = -1; - fTAC_MM5_HF = -1; - fTAC_MM6_HF = -1; - fTAC_MM7_HF = -1; - fTAC_MM8_HF = -1; + fTAC_MM_CATS1 = -1; + fTAC_CATS12 = -1; + fTAC_CATS1_PLD4 = -1; + fTAC_CATS1_HF = -1; + fTAC_CATS1_EXO = -1; + fTAC_MM_HF = -1; fTAC_MM_HF_DetectorNbr.clear(); + fTAC_MM_EXO = -1; + fTAC_BARREL_EXO = -1; + fTAC_BARREL_CATS1FAG = -1; + fTAC_HYB_EXO = -1; + fTAC_HYB_CATS1FAG = -1; + fTAC_CHAR_EXO = -1; + fTAC_CHAR_CATS1FAG = -1; + fTAC_CHAR_PLD4 = -1; + fTAC_CHAR_GALOTTE = -1; + fTAC_CATS1_CATS2 = -1; + fTAC_CATS1_GALOTTE = -1; + fTAC_FAG_CATS2 = -1; } void TTacData::Dump() const @@ -65,22 +66,24 @@ void TTacData::Dump() const cout << "XXXXXXXXXXXXXXXXXXXXXXXX New Event XXXXXXXXXXXXXXXXX" << endl; // (TAC) cout << "fTAC_MM_CATS1 : " << fTAC_MM_CATS1 << endl; - cout << "fTAC_MM_CATS2 : " << fTAC_MM_CATS2 << endl; - cout << "fTAC_PL_CATS1 : " << fTAC_PL_CATS1 << endl; - cout << "fTAC_PL_CATS2 : " << fTAC_PL_CATS2 << endl; - cout << "fTAC_CATS12 : " << fTAC_CATS12 << endl; - cout << "fTAC_PL_GAL : " << fTAC_PL_GAL << endl; + cout << "fTAC_CATS12 : " << fTAC_CATS12 << endl; + cout << "fTAC_CATS1_PLD4 : " << fTAC_CATS1_PLD4 << endl; cout << "fTAC_CATS1_HF : " << fTAC_CATS1_HF << endl; - cout << "fTAC_CATS2_HF : " << fTAC_CATS2_HF << endl; - cout << "fTAC_MM_HF : " << fTAC_MM_HF << endl; - cout << "fTAC_MM1_HF : " << fTAC_MM1_HF << endl; - cout << "fTAC_MM2_HF : " << fTAC_MM2_HF << endl; - cout << "fTAC_MM3_HF : " << fTAC_MM3_HF << endl; - cout << "fTAC_MM4_HF : " << fTAC_MM4_HF << endl; - cout << "fTAC_MM5_HF : " << fTAC_MM5_HF << endl; - cout << "fTAC_MM6_HF : " << fTAC_MM6_HF << endl; - cout << "fTAC_MM7_HF : " << fTAC_MM7_HF << endl; - cout << "fTAC_MM8_HF : " << fTAC_MM8_HF << endl; + cout << "fTAC_CATS1_EXO : " << fTAC_CATS1_EXO << endl; + cout << "fTAC_MM_HF : " << fTAC_MM_HF << endl; + cout << "fTAC_MM_EXO : " << fTAC_MM_EXO << endl; + cout << "fTAC_BARREL_EXO : " << fTAC_BARREL_EXO << endl; + cout << "fTAC_BARREL_CATS1FAG : " << fTAC_BARREL_CATS1FAG << endl; + cout << "fTAC_HYB_EXO : " << fTAC_HYB_EXO << endl; + cout << "fTAC_HYB_CATS1FAG : " << fTAC_HYB_CATS1FAG << endl; + cout << "fTAC_CHAR_EXO : " << fTAC_CHAR_EXO << endl; + cout << "fTAC_CHAR_CATS1FAG : " << fTAC_CHAR_CATS1FAG << endl; + cout << "fTAC_CHAR_PLD4 : " << fTAC_CHAR_PLD4 << endl; + cout << "fTAC_CHAR_GALOTTE : " << fTAC_CHAR_GALOTTE << endl; + cout << "fTAC_CATS1_CATS2 : " << fTAC_CATS1_CATS2 << endl; + cout << "fTAC_CATS1_GALOTTE : " << fTAC_CATS1_GALOTTE << endl; + cout << "fTAC_FAG_CATS2 : " << fTAC_FAG_CATS2 << endl; + cout << "TAC_MM_HF_DetectorNbr = " << fTAC_MM_HF_DetectorNbr.size() << endl; for (UShort_t i = 0; i < fTAC_MM_HF_DetectorNbr.size(); i++) diff --git a/NPLib/Misc/TTacData.h b/NPLib/Misc/TTacData.h index e15c86a7eefa24de2b3536309f4e52c80dcae505..fc24623e16ecc608297c6269c006315da2f369d4 100644 --- a/NPLib/Misc/TTacData.h +++ b/NPLib/Misc/TTacData.h @@ -8,7 +8,7 @@ *****************************************************************************/ /***************************************************************************** - * Original Author: contact address: * + * Original Author: Benjamin Le Crom contact address: lecrom@ipno.in2p3.fr * * * * Creation Date : * * Last update : * @@ -29,23 +29,26 @@ class TTacData : public TObject { private: // TAC UShort_t fTAC_MM_CATS1; - UShort_t fTAC_MM_CATS2; - UShort_t fTAC_PL_CATS1; - UShort_t fTAC_PL_CATS2; UShort_t fTAC_CATS12; - UShort_t fTAC_PL_GAL; + UShort_t fTAC_CATS1_PLD4; UShort_t fTAC_CATS1_HF; - UShort_t fTAC_CATS2_HF; + UShort_t fTAC_CATS1_EXO; UShort_t fTAC_MM_HF; - UShort_t fTAC_MM1_HF; - UShort_t fTAC_MM2_HF; - UShort_t fTAC_MM3_HF; - UShort_t fTAC_MM4_HF; - UShort_t fTAC_MM5_HF; - UShort_t fTAC_MM6_HF; - UShort_t fTAC_MM7_HF; - UShort_t fTAC_MM8_HF; vector<UShort_t> fTAC_MM_HF_DetectorNbr; + UShort_t fTAC_MM_EXO; + UShort_t fTAC_BARREL_EXO; + UShort_t fTAC_BARREL_CATS1FAG; + UShort_t fTAC_HYB_EXO; + UShort_t fTAC_HYB_CATS1FAG; + UShort_t fTAC_CHAR_EXO; + UShort_t fTAC_CHAR_CATS1FAG; + UShort_t fTAC_CHAR_PLD4; + UShort_t fTAC_CHAR_GALOTTE; + UShort_t fTAC_CATS1_CATS2; + UShort_t fTAC_CATS1_GALOTTE; + UShort_t fTAC_FAG_CATS2; + + public: TTacData(); @@ -57,45 +60,47 @@ class TTacData : public TObject { ///////////////////// GETTERS //////////////////////// // (TAC) - UShort_t GetTAC_MM_CATS1() {return fTAC_MM_CATS1;} - UShort_t GetTAC_MM_CATS2() {return fTAC_MM_CATS2;} - UShort_t GetTAC_PL_CATS1() {return fTAC_PL_CATS1;} - UShort_t GetTAC_PL_CATS2() {return fTAC_PL_CATS2;} - UShort_t GetTAC_CATS12() {return fTAC_CATS12;} - UShort_t GetTAC_PL_GAL() {return fTAC_PL_GAL;} - UShort_t GetTAC_CATS1_HF() {return fTAC_CATS1_HF;} - UShort_t GetTAC_CATS2_HF() {return fTAC_CATS2_HF;} - UShort_t GetTAC_MM_HF() {return fTAC_MM_HF;} - Double_t GetTAC_MM1_HF() {return fTAC_MM1_HF;} - Double_t GetTAC_MM2_HF() {return fTAC_MM2_HF;} - Double_t GetTAC_MM3_HF() {return fTAC_MM3_HF;} - Double_t GetTAC_MM4_HF() {return fTAC_MM4_HF;} - Double_t GetTAC_MM5_HF() {return fTAC_MM5_HF;} - Double_t GetTAC_MM6_HF() {return fTAC_MM6_HF;} - Double_t GetTAC_MM7_HF() {return fTAC_MM7_HF;} - Double_t GetTAC_MM8_HF() {return fTAC_MM8_HF;} + UShort_t GetTAC_MM_CATS1() {return fTAC_MM_CATS1;} + UShort_t GetTAC_CATS12() {return fTAC_CATS12;} + UShort_t GetTAC_CATS1_PLD4() {return fTAC_CATS1_PLD4;} + UShort_t GetTAC_CATS1_HF() {return fTAC_CATS1_HF;} + UShort_t GetTAC_CATS1_EXO() {return fTAC_CATS1_EXO;} + UShort_t GetTAC_MM_HF() {return fTAC_MM_HF;} Double_t GetTAC_MM_HF_DetectorNbr(const Int_t i) const {return fTAC_MM_HF_DetectorNbr[i];} + Double_t GetTAC_MM_EXO() {return fTAC_MM_EXO;} + Double_t GetTAC_BARREL_EXO() {return fTAC_BARREL_EXO;} + Double_t GetTAC_BARREL_CATS1FAG() {return fTAC_BARREL_CATS1FAG;} + Double_t GetTAC_HYB_EXO() {return fTAC_HYB_EXO;} + Double_t GetTAC_HYB_CATS1FAG() {return fTAC_HYB_CATS1FAG;} + Double_t GetTAC_CHAR_EXO() {return fTAC_CHAR_EXO;} + Double_t GetTAC_CHAR_CATS1FAG() {return fTAC_CHAR_CATS1FAG;} + Double_t GetTAC_CHAR_PLD4() {return fTAC_CHAR_PLD4;} + Double_t GetTAC_CHAR_GALOTTE() {return fTAC_CHAR_GALOTTE;} + Double_t GetTAC_CATS1_CATS2() {return fTAC_CATS1_CATS2;} + Double_t GetTAC_CATS1_GALOTTE() {return fTAC_CATS1_GALOTTE;} + Double_t GetTAC_FAG_CATS2() {return fTAC_FAG_CATS2;} ///////////////////// SETTERS //////////////////////// // (TAC) void SetTAC_MM_CATS1(UShort_t T) {fTAC_MM_CATS1 = T;} - void SetTAC_MM_CATS2(UShort_t T) {fTAC_MM_CATS2 = T;} - void SetTAC_PL_CATS1(UShort_t T) {fTAC_PL_CATS1 = T;} - void SetTAC_PL_CATS2(UShort_t T) {fTAC_PL_CATS2 = T;} - void SetTAC_CATS12(UShort_t T) {fTAC_CATS12 = T;} - void SetTAC_PL_GAL(UShort_t T) {fTAC_PL_GAL = T;} + void SetTAC_CATS12(UShort_t T) {fTAC_CATS12 = T;} + void SetTAC_CATS1_PLD4(UShort_t T) {fTAC_CATS1_PLD4 = T;} void SetTAC_CATS1_HF(UShort_t T) {fTAC_CATS1_HF = T;} - void SetTAC_CATS2_HF(UShort_t T) {fTAC_CATS2_HF = T;} - void SetTAC_MM_HF(UShort_t T) {fTAC_MM_HF = T;} - void SetTAC_MM1_HF(UShort_t T) {fTAC_MM1_HF = T;} - void SetTAC_MM2_HF(UShort_t T) {fTAC_MM2_HF = T;} - void SetTAC_MM3_HF(UShort_t T) {fTAC_MM3_HF = T;} - void SetTAC_MM4_HF(UShort_t T) {fTAC_MM4_HF = T;} - void SetTAC_MM5_HF(UShort_t T) {fTAC_MM5_HF = T;} - void SetTAC_MM6_HF(UShort_t T) {fTAC_MM6_HF = T;} - void SetTAC_MM7_HF(UShort_t T) {fTAC_MM7_HF = T;} - void SetTAC_MM8_HF(UShort_t T) {fTAC_MM8_HF = T;} - void SetTAC_MM_HF_DetectorNbr(const UShort_t DetNbr) {fTAC_MM_HF_DetectorNbr.push_back(DetNbr);} + void SetTAC_CATS1_EXO(UShort_t T) {fTAC_CATS1_EXO = T;} + void SetTAC_MM_HF(UShort_t T) {fTAC_MM_HF = T;} + void SetTAC_MM_HF_DetectorNbr(const UShort_t DetNbr) {fTAC_MM_HF_DetectorNbr.push_back(DetNbr);} + void SetTAC_MM_EXO(UShort_t T) {fTAC_MM_EXO = T;} + void SetTAC_BARREL_EXO(UShort_t T) {fTAC_BARREL_EXO = T;} + void SetTAC_BARREL_CATS1FAG(UShort_t T) {fTAC_BARREL_CATS1FAG = T;} + void SetTAC_HYB_EXO(UShort_t T) {fTAC_HYB_EXO = T;} + void SetTAC_HYB_CATS1FAG(UShort_t T) {fTAC_HYB_CATS1FAG = T;} + void SetTAC_CHAR_EXO(UShort_t T) {fTAC_CHAR_EXO = T;} + void SetTAC_CHAR_CATS1FAG(UShort_t T) {fTAC_CHAR_CATS1FAG = T;} + void SetTAC_CHAR_PLD4(UShort_t T) {fTAC_CHAR_PLD4 = T;} + void SetTAC_CHAR_GALOTTE(UShort_t T) {fTAC_CHAR_GALOTTE = T;} + void SetTAC_CATS1_CATS2(UShort_t T) {fTAC_CATS1_CATS2 = T;} + void SetTAC_CATS1_GALOTTE(UShort_t T) {fTAC_CATS1_GALOTTE = T;} + void SetTAC_FAG_CATS2(UShort_t T) {fTAC_FAG_CATS2 = T;} ClassDef(TTacData,2) // TacData structure diff --git a/NPLib/Misc/TTacPhysics.cxx b/NPLib/Misc/TTacPhysics.cxx index 8cc3c362784395d9364504c5d475837d954f2882..251cf6e332730921be1510b8b824c463ac39434f 100644 --- a/NPLib/Misc/TTacPhysics.cxx +++ b/NPLib/Misc/TTacPhysics.cxx @@ -64,10 +64,7 @@ void TTacPhysics::Clear() Time_TAC_2 =0; Time_TAC_3 =0; Time_TAC_4 =0; - Time_TAC_5 =0; - Time_TAC_6 =0; - Time_TAC_7 =0; - Time_TAC_8 =0; + } /////////////////////////////////////////////////////////////////////////// @@ -105,10 +102,7 @@ void TTacPhysics::InitializeRootInputPhysics() inputChain->SetBranchStatus ( "Time_TAC_2", true ); inputChain->SetBranchStatus ( "Time_TAC_3", true ); inputChain->SetBranchStatus ( "Time_TAC_4", true ); - inputChain->SetBranchStatus ( "Time_TAC_5", true ); - inputChain->SetBranchStatus ( "Time_TAC_6", true ); - inputChain->SetBranchStatus ( "Time_TAC_7", true ); - inputChain->SetBranchStatus ( "Time_TAC_8", true ); + inputChain->SetBranchAddress( "Tac", &EventPhysics ); } /////////////////////////////////////////////////////////////////////////// @@ -135,9 +129,6 @@ void TTacPhysics::BuildSimplePhysicalEvent() Time_TAC_2=CalibrationManager::getInstance()->ApplyCalibration("TAC/_T" + itoa( EventData->GetTAC_MM_HF_DetectorNbr(1) ),EventData->GetTAC_MM2_HF() ); Time_TAC_3=CalibrationManager::getInstance()->ApplyCalibration("TAC/_T" + itoa( EventData->GetTAC_MM_HF_DetectorNbr(2) ),EventData->GetTAC_MM3_HF() ); Time_TAC_4=CalibrationManager::getInstance()->ApplyCalibration("TAC/_T" + itoa( EventData->GetTAC_MM_HF_DetectorNbr(3) ),EventData->GetTAC_MM4_HF() ); - Time_TAC_5=CalibrationManager::getInstance()->ApplyCalibration("TAC/_T" + itoa( EventData->GetTAC_MM_HF_DetectorNbr(4) ),EventData->GetTAC_MM5_HF() ); - Time_TAC_6=CalibrationManager::getInstance()->ApplyCalibration("TAC/_T" + itoa( EventData->GetTAC_MM_HF_DetectorNbr(5) ),EventData->GetTAC_MM6_HF() ); - Time_TAC_7=CalibrationManager::getInstance()->ApplyCalibration("TAC/_T" + itoa( EventData->GetTAC_MM_HF_DetectorNbr(6) ),EventData->GetTAC_MM7_HF() ); - Time_TAC_8=CalibrationManager::getInstance()->ApplyCalibration("TAC/_T" + itoa( EventData->GetTAC_MM_HF_DetectorNbr(7) ),EventData->GetTAC_MM8_HF() ); + } diff --git a/NPLib/Misc/TTacPhysics.h b/NPLib/Misc/TTacPhysics.h index 966f190152452589f9bf463b960561e0fae79810..0edaca5f1a0367f1331e2aff102d5bae9e181d06 100644 --- a/NPLib/Misc/TTacPhysics.h +++ b/NPLib/Misc/TTacPhysics.h @@ -49,10 +49,6 @@ class TTacPhysics : public TObject, public NPA::VDetector Double_t Time_TAC_2 ; Double_t Time_TAC_3 ; Double_t Time_TAC_4 ; - Double_t Time_TAC_5 ; - Double_t Time_TAC_6 ; - Double_t Time_TAC_7 ; - Double_t Time_TAC_8 ; vector<UShort_t> TacNumber; public: // inherrited from VDetector diff --git a/NPLib/Tiara/TTiaraHyballPhysics.cxx b/NPLib/Tiara/TTiaraHyballPhysics.cxx index 42e165b9c62e431ff5265696964ba22cfe2b3b79..51b67a680c43ffe9539a4947728eb9802c0f0337 100644 --- a/NPLib/Tiara/TTiaraHyballPhysics.cxx +++ b/NPLib/Tiara/TTiaraHyballPhysics.cxx @@ -58,10 +58,10 @@ ClassImp(TTiaraHyballPhysics) // Threshold m_StripRing_E_RAW_Threshold = 0 ; - m_StripRing_E_Threshold = 0 ; + m_StripRing_E_Threshold = 0.4 ; m_StripSector_E_RAW_Threshold = 0 ; - m_StripSector_E_Threshold = 0 ; + m_StripSector_E_Threshold = 0.4 ; m_Take_E_Ring=false; m_Take_T_Sector=true; @@ -527,11 +527,14 @@ void TTiaraHyballPhysics::AddParameterToCalibrationManager(){ for(int i = 0 ; i < m_NumberOfDetector ; ++i){ for( int j = 0 ; j < 24 ; ++j){ Cal->AddParameter("TIARAHYBALL", "D"+itoa(i+1)+"_STRIP_RING"+itoa(j+1)+"_E","TIARAHYBALL_D"+itoa(i+1)+"_STRIP_RING"+itoa(j+1)+"_E") ; + Cal->AddParameter("TIARAHYBALL", "D"+itoa(i+1)+"_STRIP_RING"+itoa(j+1)+"_MATCHSTICK","TIARAHYBALL_D"+itoa(i+1)+"_STRIP_RING"+itoa(j+1)+"_MATCHSTICK") ; + Cal->AddParameter("TIARAHYBALL", "D"+itoa(i+1)+"_STRIP_RING"+itoa(j+1)+"_T","TIARAHYBALL_D"+itoa(i+1)+"_STRIP_RING"+itoa(j+1)+"_T") ; } for( int j = 0 ; j < 48 ; ++j){ Cal->AddParameter("TIARAHYBALL", "D"+itoa(i+1)+"_STRIP_SECTOR"+itoa(j+1)+"_E","TIARAHYBALL_D"+itoa(i+1)+"_STRIP_SECTOR"+itoa(j+1)+"_E") ; + Cal->AddParameter("TIARAHYBALL", "D"+itoa(i+1)+"_STRIP_SECTOR"+itoa(j+1)+"_MATCHSTICK","TIARAHYBALL_D"+itoa(i+1)+"_STRIP_SECTOR"+itoa(j+1)+"_MATCHSTICK") ; Cal->AddParameter("TIARAHYBALL", "D"+itoa(i+1)+"_STRIP_SECTOR"+itoa(j+1)+"_T","TIARAHYBALL_D"+itoa(i+1)+"_STRIP_SECTOR"+itoa(j+1)+"_T") ; } } @@ -675,6 +678,10 @@ namespace TiaraHyball_LOCAL{ return CalibrationManager::getInstance()->ApplyCalibration( "TIARAHYBALL/D" + itoa( m_EventData->GetRingEDetectorNbr(i) ) + "_STRIP_RING" + itoa( m_EventData->GetRingEStripNbr(i) ) + "_E", m_EventData->GetRingEEnergy(i) ); } + double fStrip_Ring_Matchstick(const TTiaraHyballData* m_EventData , const int i){ + return CalibrationManager::getInstance()->ApplyCalibration( "TIARAHYBALL/D" + itoa( m_EventData->GetRingEDetectorNbr(i) ) + "_STRIP_RING" + itoa( m_EventData->GetRingEStripNbr(i) ) + "_MATCHSTICK", + m_EventData->GetRingEEnergy(i) ); + } double fStrip_Ring_T(const TTiaraHyballData* m_EventData , const int i){ return CalibrationManager::getInstance()->ApplyCalibration( "TIARAHYBALL/D" + itoa( m_EventData->GetRingTDetectorNbr(i) ) + "_STRIP_RING" + itoa( m_EventData->GetRingTStripNbr(i) ) +"_T", @@ -687,6 +694,11 @@ namespace TiaraHyball_LOCAL{ m_EventData->GetSectorEEnergy(i) ); } + double fStrip_Sector_Matchstick(const TTiaraHyballData* m_EventData , const int i){ + return CalibrationManager::getInstance()->ApplyCalibration( "TIARAHYBALL/D" + itoa( m_EventData->GetSectorTDetectorNbr(i) ) + "_STRIP_SECTOR" + itoa( m_EventData->GetSectorTStripNbr(i) ) +"_MATCHSTICK", + m_EventData->GetSectorEEnergy(i) ); + } + double fStrip_Sector_T(const TTiaraHyballData* m_EventData , const int i){ return CalibrationManager::getInstance()->ApplyCalibration( "TIARAHYBALL/D" + itoa( m_EventData->GetSectorTDetectorNbr(i) ) + "_STRIP_SECTOR" + itoa( m_EventData->GetSectorTStripNbr(i) ) +"_T", m_EventData->GetRingTTime(i) ); diff --git a/NPLib/Tiara/TTiaraHyballPhysics.h b/NPLib/Tiara/TTiaraHyballPhysics.h index 7d79861eac74afca2bcd5296da9c06e5bc8eea3f..0a6022fb5c5f6105445212f0b54bada56ff813e3 100644 --- a/NPLib/Tiara/TTiaraHyballPhysics.h +++ b/NPLib/Tiara/TTiaraHyballPhysics.h @@ -206,10 +206,12 @@ namespace TiaraHyball_LOCAL{ // DSSD // Ring double fStrip_Ring_E(const TTiaraHyballData* Data, const int i); + double fStrip_Ring_Matchstick(const TTiaraHyballData* Data, const int i); double fStrip_Ring_T(const TTiaraHyballData* Data, const int i); // Sector double fStrip_Sector_E(const TTiaraHyballData* Data, const int i); + double fStrip_Sector_MatchStick(const TTiaraHyballData* Data, const int i); double fStrip_Sector_T(const TTiaraHyballData* Data, const int i); }