Newer
Older
#ifndef Analysis_h
#define Analysis_h
/*****************************************************************************
* Copyright (C) 2009-2016 this file is part of the NPTool Project *
* *
* For the licensing terms see $NPTOOL/Licence/NPTool_Licence *
* For the list of contributors see $NPTOOL/Licence/Contributors *
*****************************************************************************/
/*****************************************************************************
* Original Author: XAUTHORX contact address: XMAILX *
* *
* Creation Date : XMONTHX XYEARX *
* Last update : *
*---------------------------------------------------------------------------*
* Decription: *
* This class describe PISTA analysis project *
* *
*---------------------------------------------------------------------------*
* Comment: *
* *
*****************************************************************************/
#include "NPVAnalysis.h"
#include "TPISTAPhysics.h"
#include "TFPMWPhysics.h"
#include "TICPhysics.h"
#include "TVamosReconstruction.h"
#include "TInitialConditions.h"
#include "TReactionConditions.h"
#include "TInteractionCoordinates.h"
#include "NPEnergyLoss.h"
#include "NPReaction.h"
#include "TRandom3.h"
#include "TSpline.h"
#include "TChain.h"
class Analysis: public NPL::VAnalysis{
public:
Analysis();
~Analysis();
public:
void Init();
void TreatEvent();
void End();
void InitOutputBranch();
void InitInputBranch();
void ReInitValue();
void LoadCalibParameter();
void PistaAnalysis();
void VamosAnalysis();
private:
double m_XTarget_offset;
double m_YTarget_offset;
double m_ZTarget_offset;
double m_Beam_ThetaX;
double m_Beam_ThetaY;
double m_BeamEnergy;
double m_Brho_ref;
double m_Vamos_Angle;
private:
double BeamEnergy;
double Xcalc;
double Ycalc;
double Zcalc;
double XTarget;
double YTarget;
double ZTarget;
double Elab;
int Telescope;
int strip_DE;
int strip_E;
double Time_E;
double Pista_Time_Target;
double Vamos_Time_Target;
double DeltaE;
double DeltaEcorr;
double Eres;
double ThetaLab;
double PhiLab;
double ThetaCM;
double Ex240Pu;
double Ex236U;
double Ex238U;
double PID;
ULong64_t fVAMOS_TS_sec;
ULong64_t fPISTA_TS_sec;
double VAMOS_TS_hour;
double PISTA_TS_hour;
double FF_DE;
double FF_Eres;
double FF_Z;
double FF_D13;
double FF_T13;
double FF_V13;
double FF_AoQ13;
double FF_Beta13;
double FF_Gamma13;
double FF_Q13;
double FF_M113;
double FF_Mass13;
double FF_Etot13;
double FF_D14;
double FF_T14;
double FF_V14;
double FF_Q14;
double FF_M114;
double FF_AoQ14;
double FF_Mass14;
double FF_D23;
double FF_T23;
double FF_V23;
double FF_Q23;
double FF_M123;
double FF_AoQ23;
double FF_Mass23;
double FF_D24;
double FF_T24;
double FF_V24;
double FF_Q24;
double FF_M124;
double FF_AoQ24;
double FF_Mass24;
double Exo_cosa;
double Exo_E;
double Exo_EDC_vamos;
double Exo_EDC_pista;
double Exo_Theta;
double Exo_Phi;
int m_2alpha;
vector<double> Elab1;
vector<double> Elab2;
NPL::Reaction* Transfer14C;
NPL::Reaction* Elastic;
NPL::Particle* C12;
NPL::Particle* Be10;
TRandom3 Rand;
double ThetaNormalTarget;
double ThetaDetectorSurface;
double TargetThickness;
NPL::EnergyLoss C12C;
TGraph *geloss_C12C;
TGraph *geloss_C12Al;
TGraph *geloss_Be10C;
TGraph *geloss_Be10Al;
private:
double Xmean;
double Ymean;
double Xmean_iter;
double Ymean_iter;
int iteration;
double m_T13_Offset[20];
double m_T14_Offset[20];
private:
TPISTAPhysics* PISTA;
TFPMWPhysics* FPMW;
TICPhysics* IC;
TVamosReconstruction* Tracking;
TChain* chain;
};
#endif