BePureEvent.h 4.14 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
/*
 * BePureEvent.h
 *
 *  Created on: 6.6.2011
 *      Author: vratik
 */

#ifndef BEPUREEVENT_H_
#define BEPUREEVENT_H_

#pragma once
#include <TObject.h>
#include <TLorentzVector.h>

#include "BeEvent.h"

#define NOESEC 16	//number of sectors carrying full dE-E information
#define NOSELHITS 6	//maximal number of hits									//navrhuji 8 nebo 3 (zapisujeme pouze udalosti s Be)
#define NOTEL 2		//number of telescopes

class BePureEvent {
public:
//	Int_t fTrigger;
//	Int_t	fn[NOESEC];					//doubtful

//	Double_t	fCalCorr[NOESEC];		//doubtful


	//time information from Tx2
	Double_t	fTau[NOTEL][NOESEC];	//doubtful		//time in ns

	//hits
	Int_t	fNOHits[NOTEL];				//general number of hits searched by energy with dE-E, phi and theta information
	Int_t	fNOaHits[NOTEL];			//hits searched by energy
	Int_t	fNOpHits[NOTEL];			//hits searched by energy
	Int_t	fNOtHits[NOTEL];			//hits searched by time

	Int_t		fSN[NOTEL][NOSELHITS];			//doubtful
	Int_t		fTauSN[NOTEL][NOSELHITS];		//doubtful
	Int_t		fRN[NOTEL][NOSELHITS];			//doubtful
	Double_t	fE1Sec[NOTEL][NOSELHITS];		//hit energy in 1st layer (sectors) of particular telescope
	Double_t	fE1Ring[NOTEL][NOSELHITS];		//hit energy in 1st layer (rings) of particular telescope
	Double_t	fE2Sec[NOTEL][NOSELHITS];		//hit energy in 2nd layer of particular telescope
	Double_t	fE3Sec[NOTEL][NOSELHITS];		//hit energy in 3rd layer of particular telescope
	Double_t	fTheta[NOTEL][NOSELHITS];
	Double_t	fPhi[NOTEL][NOSELHITS];
	Double_t	fhTau[NOTEL][NOSELHITS];		//hit time
	Double_t	fT[NOTEL][NOSELHITS];			//hit energy
	Double_t	fP[NOTEL][NOSELHITS];			//hit impulse
	Int_t		fID[NOTEL][NOSELHITS];			//particle identificator = ZA; proton==11, alpha==24
	Int_t		fPM[2*NOSELHITS];				//particle markers

//	//6Be information

	Int_t	fNOA;	//number of detected alphas related to triple coincidence Be decay
	Int_t	fNOP;	//number of detected protons related to triple coincidence Be decay

		//laboratory system
	//6Be
	TLorentzVector	fBeLab;
	Double_t		fBeThetaLab;	//Theta_lab in rad
	Double_t		fBePhiLab;		//Phi_lab in rad
	Double_t	 	fBePcLab;		//abs(pc) in MeV
	Double_t		fBeIM;			//invariant mass in MeV
	//neutron
	TLorentzVector	fNLab;
	Double_t		fNThetaLab;		//Theta_lab in rad
	Double_t		fNPhiLab;		//Phi_lab in rad
	Double_t		fNPcLab;		//invariant mass in MeV
	//proton1
	TLorentzVector	fP1Lab;
	Double_t		fP1ThetaLab;	//Theta_lab in rad
	Double_t		fP1PhiLab;		//Phi_lab in rad
	Double_t		fP1PcLab;		//invariant mass in MeV
	//proton2
	TLorentzVector	fP2Lab;
	Double_t		fP2ThetaLab;	//Theta_lab in rad
	Double_t		fP2PhiLab;		//Phi_lab in rad
	Double_t		fP2PcLab;		//invariant mass in MeV
	//alpha
	TLorentzVector	fALab;
	Double_t		fAThetaLab;	//Theta_lab in rad
	Double_t		fAPhiLab;		//Phi_lab in rad
	Double_t		fAPcLab;		//invariant mass in MeV
	//protons relative kinetic energy
	Double_t		fPPTrel;

		//CM system 6Li-p
	//6Be
	TLorentzVector	fBeCM1;
	Double_t		fBeThetaCM1;	//Theta_cm in rad
	Double_t		fBePhiCM1;		//Phi_lab in rad
	Double_t 		fBePcCM1;		//abs(pc) in MeV

		//CM system 6Be
	//6Be
	TLorentzVector	fBeCM;
	Double_t		fBeThetaCM;	//Theta_cm in rad
	Double_t		fBePhiCM;		//Phi_lab in rad
	Double_t 		fBePcCM;		//abs(pc) in MeV
	//neutron
	TLorentzVector	fNCM;
	Double_t		fNThetaCM;		//Theta_cm in rad
	Double_t		fNPhiCM;		//Phi_lab in rad
	Double_t 		fNPcCM;			//abs(pc) in MeV
	//proton1
	TLorentzVector	fP1CM;
	Double_t		fP1ThetaCM;		//Theta_cm in rad
	Double_t		fP1PhiCM;		//Phi_lab in rad
	Double_t 		fP1PcCM;		//abs(pc) in MeV
	//proton2
	TLorentzVector	fP2CM;
	Double_t		fP2ThetaCM;		//Theta_cm in rad
	Double_t		fP2PhiCM;		//Phi_lab in rad
	Double_t 		fP2PcCM;		//abs(pc) in MeV
	//alpha
	TLorentzVector	fACM;
	Double_t		fAThetaCM;		//Theta_cm in rad
	Double_t		fAPhiCM;		//Phi_lab in rad
	Double_t 		fAPcCM;			//abs(pc) in MeV


		//general information
	Double_t	fQLiP;			//Q of the reaction 6Li+p-->6Be+n
	Double_t	fTpp;			//"T" system
	Double_t	fTapp;			//"T" system
	Double_t	fCosThetaTk;	//"T" system
	Double_t	fTap;			//"Y" system
	Double_t	fTpap;			//"Y" system
	Double_t	fCosThetaYk;	//"Y" system

	BePureEvent();
	virtual ~BePureEvent();
	ClassDef(BePureEvent, 1);

	void	FillEvent(BeEvent *expevent);
	void	Reset();


};

#endif /* BEPUREEVENT_H_ */