From 0737c9df8197806c42eeeba0cfe94f95338648e9 Mon Sep 17 00:00:00 2001
From: Morfouace <pierre.morfouace@cea.fr>
Date: Mon, 29 Aug 2022 17:00:14 -0600
Subject: [PATCH] Updating Vendeta project

---
 Projects/Vendeta/Analysis.cxx                 | 49 +++++++++----------
 .../PhysicsSpectra/ShowIncomingNeutron.C      | 32 ++++++++++++
 .../macro/PhysicsSpectra/ShowNeutronSpectra.C | 26 ++++++++++
 .../macro/RawSpectra/ShowRawFCSpectra.C       | 11 +++++
 4 files changed, 93 insertions(+), 25 deletions(-)
 create mode 100644 Projects/Vendeta/macro/PhysicsSpectra/ShowIncomingNeutron.C
 create mode 100644 Projects/Vendeta/macro/PhysicsSpectra/ShowNeutronSpectra.C

diff --git a/Projects/Vendeta/Analysis.cxx b/Projects/Vendeta/Analysis.cxx
index d2aa2df02..fab1a77f2 100644
--- a/Projects/Vendeta/Analysis.cxx
+++ b/Projects/Vendeta/Analysis.cxx
@@ -151,32 +151,31 @@ void Analysis::TreatEvent(){
 				}
 
 				//Process coincidences signals in VENDETA LG / HG
-
-				/*if(HG_Tof.size() > 0 && LG_Tof.size() > 0 ){
+				if(HG_Tof.size() > 0 && LG_Tof.size() > 0 ){
 						for(int j = 0; j < LG_Tof.size();j++){
-						for(int k = 0; k < HG_Tof.size(); k++){
-						if(abs(HG_Tof[k]-LG_Tof[j]) < 2 && HG_ID[k] == LG_ID[j]){
-						if( HG_Q2[k]>120000){
-				//  HG_ID[k] = 
-				HG_Tof[k] = - 100000;
-				HG_ELab[k] = - 100000;
-				HG_ThetaLab[k] = - 100000;
-				HG_Q1[k] = - 100000;
-				HG_Q2[k] = - 100000;
-				HG_Qmax[k] = - 100000;
-				}  
-				else if( HG_Q2[k]<120000){
-				// HG_ID[k] = 
-				LG_Tof[k] = - 100000;
-				LG_ELab[k] = - 100000;
-				LG_ThetaLab[k] = - 100000;
-				LG_Q1[k] = - 100000;
-				LG_Q2[k] = - 100000;
-
-				}
-				}
-				}
-				}
+								for(int k = 0; k < HG_Tof.size(); k++){
+										if(abs(HG_Tof[k]-LG_Tof[j]) < 2 && HG_ID[k] == LG_ID[j]){
+												if( HG_Q2[k]>120000){
+														//  HG_ID[k] = 
+														HG_Tof[k] = - 100000;
+														HG_ELab[k] = - 100000;
+														HG_ThetaLab[k] = - 100000;
+														HG_Q1[k] = - 100000;
+														HG_Q2[k] = - 100000;
+														HG_Qmax[k] = - 100000;
+												}  
+												else if( HG_Q2[k]<120000){
+														// HG_ID[k] = 
+														LG_Tof[k] = - 100000;
+														LG_ELab[k] = - 100000;
+														LG_ThetaLab[k] = - 100000;
+														LG_Q1[k] = - 100000;
+														LG_Q2[k] = - 100000;
+
+												}
+										}
+								}
+						}
 				} // if LG && HG*/
 
 		}// if FC = 1
diff --git a/Projects/Vendeta/macro/PhysicsSpectra/ShowIncomingNeutron.C b/Projects/Vendeta/macro/PhysicsSpectra/ShowIncomingNeutron.C
new file mode 100644
index 000000000..792a28974
--- /dev/null
+++ b/Projects/Vendeta/macro/PhysicsSpectra/ShowIncomingNeutron.C
@@ -0,0 +1,32 @@
+TChain* chain;
+
+int NumberOfAnodes=11;
+//////////////////////////////////////////////
+void OpenRootFile(){
+		chain = new TChain("PhysicsTree");
+		chain->Add("/home/faster/nptool/Outputs/Analysis/test.root");
+}
+
+//////////////////////////////////////////////
+void ShowIncomingNeutron(){
+		OpenRootFile();
+
+		TCanvas* cToF = new TCanvas("cToF","cToF",1800,1800);
+		TCanvas* cE = new TCanvas("cE","cE",1800,1800);
+
+		cToF->Divide(3,4);
+		cE->Divide(3,4);
+
+		for(int i=0; i<NumberOfAnodes; i++){
+				TString condition = Form("LG_Anode_ID==%i",i+1);
+				TString to_draw;
+
+				cToF->cd(i+1);
+				to_draw = Form("inToF>>hToF_Anode%i(5400,0,1800)",i+1);
+				chain->Draw(to_draw,condition);
+
+				cE->cd(i+1);
+				to_draw = Form("inEnergy>>hE_Anode%i(1000,0,700)",i+1);
+				chain->Draw(to_draw,condition);
+		}
+}
diff --git a/Projects/Vendeta/macro/PhysicsSpectra/ShowNeutronSpectra.C b/Projects/Vendeta/macro/PhysicsSpectra/ShowNeutronSpectra.C
new file mode 100644
index 000000000..a0054608d
--- /dev/null
+++ b/Projects/Vendeta/macro/PhysicsSpectra/ShowNeutronSpectra.C
@@ -0,0 +1,26 @@
+TCutG* cutn_LG=NULL;
+TCutG* cutn_HG=NULL;
+TCutG* cut_light_LG=NULL;
+TCutG* cut_light_HG=NULL;
+
+TChain* chain=NULL ;
+
+///////////////////////////////////////////
+void LoadCuts(){
+    TFile* File_cutn_LG = new TFile("cuts/cutn_LG.root","READ");
+    cutn_LG = (TCutG*) File_cutn_LG->FindObjectAny("cutn_LG");
+}
+
+///////////////////////////////////////////
+void LoadChain(){
+    chain = new TChain("PhysicsTree");
+    chain->Add("/home/faster/nptool/Outputs/Analysis/test.root");
+}
+
+///////////////////////////////////////////
+void ShowNeutronSpectra(){
+    LoadChain();
+    //LoadCuts();
+
+
+}
diff --git a/Projects/Vendeta/macro/RawSpectra/ShowRawFCSpectra.C b/Projects/Vendeta/macro/RawSpectra/ShowRawFCSpectra.C
index a021f666f..f85f8422b 100644
--- a/Projects/Vendeta/macro/RawSpectra/ShowRawFCSpectra.C
+++ b/Projects/Vendeta/macro/RawSpectra/ShowRawFCSpectra.C
@@ -24,6 +24,7 @@ void ShowRawFCSpectra(string Nucleus="Cf"){
 		TCanvas* c3   = new TCanvas("Charge Qmax","Charge Qmax",1800,1800);
 		TCanvas* c4   = new TCanvas("Q2 vs Q1","Q2 vs Q1",1800,1800);
 		TCanvas* c5   = new TCanvas("Qmax vs Q1","Qmax vs Q1",1800,1800);
+		TCanvas* c6   = new TCanvas("Anode Distribution","Anode Distribution",1200,1200);
 
 		if(Nucleus=="U" || Nucleus=="238U"){
 				c1->Divide(3,4);
@@ -32,6 +33,7 @@ void ShowRawFCSpectra(string Nucleus="Cf"){
 				c4->Divide(3,4);
 				c5->Divide(3,4);
 		}
+		c6->Divide(1,2);
 
 		for(int i=0; i<NumberOfAnodes; i++){
 				// Draw //
@@ -68,5 +70,14 @@ void ShowRawFCSpectra(string Nucleus="Cf"){
 				if(Nucleus=="U") c5->cd(i+1)->SetLogz();
 				else c5->cd()->SetLogz();
 				chain->Draw(draw_QmaxvsQ1,condition,"colz",NumberOfEvents);
+
+				c6->cd(1);
+				chain->Draw("fFC_AnodeNbr>>hAnodeDist(12,0,12)","","",NumberOfEvents);
+				c6->cd(2);
+				chain->Draw("fFC_AnodeNbr@.size():fFC_AnodeNbr>>hAnodeMult(12,0,12,11,0,11)","","colz",NumberOfEvents);
+				TH2F* hAnodeMult = (TH2F*)gDirectory->FindObjectAny("hAnodeMult");
+				hAnodeMult->GetXaxis()->SetTitle("Anode Number");
+				hAnodeMult->GetYaxis()->SetTitle("Anode Mult");
+
 		}
 }
-- 
GitLab