Skip to content
Snippets Groups Projects
Commit 801efaff authored by Adrien Matta's avatar Adrien Matta :skull_crossbones:
Browse files

* Initial commit of SuperX3 based on file provided by Hari Pai (ELI-NP)

parent e1e3759e
No related branches found
No related tags found
No related merge requests found
......@@ -12,6 +12,7 @@ Beam
MeanX= 0 mm
MeanY= 0 mm
ExcitationEnergy= 3680 keV
ZEmmission= 0 mm
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
LevelData 54Ca
Path= reaction/54Ca.dat
/*****************************************************************************
* Copyright (C) 2009-2014 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: Adrien MATTA contact address: a.matta@surrey.ac.uk *
* *
* Creation Date : july 2020 *
* Last update : *
*---------------------------------------------------------------------------*
* Decription: *
* Class describing the property of an Analysis object *
* *
*---------------------------------------------------------------------------*
* Comment: *
* *
* *
*****************************************************************************/
#include <iostream>
using namespace std;
#include "Analysis.h"
#include "NPAnalysisFactory.h"
#include "NPDetectorManager.h"
#include "NPFunction.h"
#include "NPOptionManager.h"
#include "NPPhysicalConstants.h"
#include "TRandom3.h"
////////////////////////////////////////////////////////////////////////////////
Analysis::Analysis() {}
////////////////////////////////////////////////////////////////////////////////
Analysis::~Analysis() {}
////////////////////////////////////////////////////////////////////////////////
void Analysis::Init() {
RC = new TReactionConditions;
InitOutputBranch();
InitInputBranch();
SuperX3 = (TSuperX3Physics*)m_DetectorManager->GetDetector("SuperX3");
}
////////////////////////////////////////////////////////////////////////////////
void Analysis::TreatEvent() {
// Reinitiate calculated variable
ReInitValue();
}
////////////////////////////////////////////////////////////////////////////////
void Analysis::End() {}
////////////////////////////////////////////////////////////////////////////////
void Analysis::InitOutputBranch() {
// RootOutput::getInstance()->GetTree()->Branch("Ex",&Ex,"Ex/D");
}
////////////////////////////////////////////////////////////////////////////////
void Analysis::InitInputBranch() { RootInput::getInstance()->GetChain()->SetBranchAddress("ReactionConditions", &RC); }
////////////////////////////////////////////////////////////////////////////////
void Analysis::ReInitValue() {
// Ex=-1000;
}
////////////////////////////////////////////////////////////////////////////////
// Construct Method to be pass to the AnalysisFactory //
////////////////////////////////////////////////////////////////////////////////
NPL::VAnalysis* Analysis::Construct() { return (NPL::VAnalysis*)new Analysis(); }
////////////////////////////////////////////////////////////////////////////////
// Registering the construct method to the factory //
////////////////////////////////////////////////////////////////////////////////
extern "C" {
class proxy {
public:
proxy() { NPL::AnalysisFactory::getInstance()->SetConstructor(Analysis::Construct); }
};
proxy p;
}
#ifndef Analysis_h
#define Analysis_h
/*****************************************************************************
* Copyright (C) 2009-2014 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: Adrien MATTA contact address: a.matta@surrey.ac.uk *
* *
* Creation Date : march 2025 *
* Last update : *
*---------------------------------------------------------------------------*
* Decription: *
* Class describing the property of an Analysis object *
* *
*---------------------------------------------------------------------------*
* Comment: *
* *
* *
*****************************************************************************/
#include "NPEnergyLoss.h"
#include "NPVAnalysis.h"
#include "RootInput.h"
#include "RootOutput.h"
#include "TReactionConditions.h"
#include "TSuperX3Physics.h"
#include <TLorentzVector.h>
#include <TMath.h>
#include <TRandom3.h>
#include <TVector3.h>
class Analysis : public NPL::VAnalysis {
public:
Analysis();
~Analysis();
public:
void Init();
void TreatEvent();
void End();
void InitOutputBranch();
void InitInputBranch();
void ReInitValue();
static NPL::VAnalysis* Construct();
private:
TSuperX3Physics* SuperX3;
};
#endif
cmake_minimum_required (VERSION 2.8)
# Setting the policy to match Cmake version
cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION})
# include the default NPAnalysis cmake file
include("../../NPLib/ressources/CMake/NPAnalysis.cmake")
%%%%%%%
Target
THICKNESS= 1 micrometer
ANGLE= 0 deg
RADIUS= 15 mm
MATERIAL= CD2
X= 0 mm
Y= 0 mm
Z= 0 mm
NbSlices= 10
%%%%%%% Detector 1 %%%%%%%
SuperX3
THETA= 150
PHI= 0
R= 150
BETA= 0 0 0
VIS= all
Project SuperX3
AnalysisOutput= ./root/analysis
SimulationOutput= ./root/simulation
EnergyLoss= ./energy_loss
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment