From e8fea4fdefe83c88175134f1083d3d90b7405e54 Mon Sep 17 00:00:00 2001 From: deserevi <deserevi@nptool> Date: Thu, 3 Sep 2009 18:39:49 +0000 Subject: [PATCH] * Add a DummyShape detector for GaspardTracker - add the two files GaspardTrackerDummyShape.{h,cxx} - modify the necessary files for the GaspardTracker to work with this new shape. --- .../gaspardTestSpheric.detector | 146 +++ Inputs/Reaction/60Fe.reaction | 2 +- NPAnalysis/Gaspard/Result/myResult.root | Bin 53296 -> 80702 bytes NPAnalysis/Gaspard/src/ConfigurationReader.cc | 2 +- NPSimulation/include/GaspardScorers.hh | 50 + .../include/GaspardTrackerDummyShape.hh | 183 +++ NPSimulation/src/GaspardScorers.cc | 126 +++ NPSimulation/src/GaspardTracker.cc | 15 +- NPSimulation/src/GaspardTrackerDummyShape.cc | 1007 +++++++++++++++++ 9 files changed, 1522 insertions(+), 9 deletions(-) create mode 100644 Inputs/DetectorConfiguration/gaspardTestSpheric.detector create mode 100644 NPSimulation/include/GaspardTrackerDummyShape.hh create mode 100644 NPSimulation/src/GaspardTrackerDummyShape.cc diff --git a/Inputs/DetectorConfiguration/gaspardTestSpheric.detector b/Inputs/DetectorConfiguration/gaspardTestSpheric.detector new file mode 100644 index 000000000..d91b0f62d --- /dev/null +++ b/Inputs/DetectorConfiguration/gaspardTestSpheric.detector @@ -0,0 +1,146 @@ +%Fichier de configuration manip E225 +%%%%%%%%%%%Target%%%%%%%%%%%%%%%%%%%1 +%Thickness in micrometer +%Radius in mm +%Temperature in K, Pressure in bar +%Material name according to the target library + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +GeneralTarget +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +Target + THICKNESS= 1 + RADIUS= 45 + MATERIAL= CD2 + X= 0 + Y= 0 + Z= 0 +%%%%%%%%%%Detector%%%%%%%%%%%%%%%%%%% +%%Position and R given in mm +%%Angle given in degree +%%Option: 0,1 for Si SiLi and CsI +%%Option: all or sensible for VISualisation + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +GaspardTracker +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%1 +GPDDummyShape + THETA= 0 + PHI= 0 + R= 100 + BETA= 0 -0 -0 + FIRSTSTAGE= 1 + SECONDSTAGE= 1 + THIRDSTAGE= 1 + VIS= all +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%2 +GPDDummyShape + THETA= 30 + PHI= 0 + R= 100 + BETA= 0 -0 0 + FIRSTSTAGE= 1 + SECONDSTAGE= 1 + THIRDSTAGE= 1 + VIS= all +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%3 +GPDDummyShape + THETA= 60 + PHI= 0 + R= 100 + BETA= 0 0 0 + FIRSTSTAGE= 1 + SECONDSTAGE= 1 + THIRDSTAGE= 1 + VIS= all +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%4 +GPDDummyShape + THETA= 90 + PHI= 0 + R= 100 + BETA= 0 0 0 + FIRSTSTAGE= 1 + SECONDSTAGE= 1 + THIRDSTAGE= 1 + VIS= all +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5 +GPDDummyShape + THETA= 120 + PHI= 0 + R= 100 + BETA= 0 0 0 + FIRSTSTAGE= 1 + SECONDSTAGE= 1 + THIRDSTAGE= 1 + VIS= all +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%6 +GPDDummyShape + THETA= 150 + PHI= 0 + R= 100 + BETA= 0 0 0 + FIRSTSTAGE= 1 + SECONDSTAGE= 1 + THIRDSTAGE= 1 + VIS= all +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%7 +GPDDummyShape + THETA= 180 + PHI= 0 + R= 100 + BETA= 0 0 0 + FIRSTSTAGE= 1 + SECONDSTAGE= 1 + THIRDSTAGE= 1 + VIS= all +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%8 +GPDDummyShape + THETA= -30 + PHI= 0 + R= 100 + BETA= 0 0 0 + FIRSTSTAGE= 1 + SECONDSTAGE= 1 + THIRDSTAGE= 1 + VIS= all +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%9 +GPDDummyShape + THETA= -60 + PHI= 0 + R= 100 + BETA= 0 0 0 + FIRSTSTAGE= 1 + SECONDSTAGE= 1 + THIRDSTAGE= 1 + VIS= all +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%10 +GPDDummyShape + THETA= -90 + PHI= 0 + R= 100 + BETA= 0 -0 0 + FIRSTSTAGE= 1 + SECONDSTAGE= 1 + THIRDSTAGE= 1 + VIS= all +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%11 +GPDDummyShape + THETA= -120 + PHI= 0 + R= 100 + BETA= 0 0 0 + FIRSTSTAGE= 1 + SECONDSTAGE= 1 + THIRDSTAGE= 1 + VIS= all +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%12 +GPDDummyShape + THETA= -150 + PHI= 0 + R= 100 + BETA= 0 0 0 + FIRSTSTAGE= 1 + SECONDSTAGE= 1 + THIRDSTAGE= 1 + VIS= all + diff --git a/Inputs/Reaction/60Fe.reaction b/Inputs/Reaction/60Fe.reaction index 08f034ccd..24ad16495 100644 --- a/Inputs/Reaction/60Fe.reaction +++ b/Inputs/Reaction/60Fe.reaction @@ -16,6 +16,6 @@ Transfert BeamEmmitancePhi= 0.01 CrossSectionPath= ni69_g7_01.n ShootLight= 1 - ShootHeavy= 1 + ShootHeavy= 0 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/NPAnalysis/Gaspard/Result/myResult.root b/NPAnalysis/Gaspard/Result/myResult.root index 0755f976467bb0675c74645bbfe2ac7fe6cf7dcf..a365f49d0df5471e69c5967e89c2ee1d42372d56 100644 GIT binary patch delta 69471 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%0A6}ohjU=m95Latb5ND#TBwRyh~NX+aN9<>-62c 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 SKfv6s%n8i*)^_ElQy2g|v9*T) delta 41517 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 diff --git a/NPAnalysis/Gaspard/src/ConfigurationReader.cc b/NPAnalysis/Gaspard/src/ConfigurationReader.cc index 2d50b3181..827855f11 100644 --- a/NPAnalysis/Gaspard/src/ConfigurationReader.cc +++ b/NPAnalysis/Gaspard/src/ConfigurationReader.cc @@ -52,7 +52,7 @@ void ReadConfiguration( string Path , array* myArray) if(LineBuffer.compare(0,1,"%")==0) {;} //Search for Telescope - else if(LineBuffer.compare(0,9,"GPDSquare")==0) + else if(LineBuffer.compare(0,9,"GPDSquare")==0 || LineBuffer.compare(0,13,"GPDDummyShape")==0) { //A MUST2 Telescope is detected: diff --git a/NPSimulation/include/GaspardScorers.hh b/NPSimulation/include/GaspardScorers.hh index 27ed20834..2a4bc972b 100644 --- a/NPSimulation/include/GaspardScorers.hh +++ b/NPSimulation/include/GaspardScorers.hh @@ -121,6 +121,56 @@ private: +class GPDScorerFirstStageFrontStripDummyShape : public G4VPrimitiveScorer +{ +public: // with description + GPDScorerFirstStageFrontStripDummyShape(G4String name, G4int depth = 0, G4double StripPlaneSize = 98, G4int NumberOfStrip = 128); + virtual ~GPDScorerFirstStageFrontStripDummyShape(); + +protected: // with description + virtual G4bool ProcessHits(G4Step*, G4TouchableHistory*); + +public: + virtual void Initialize(G4HCofThisEvent*); + virtual void EndOfEvent(G4HCofThisEvent*); + virtual void Clear(); + virtual void DrawAll(); + virtual void PrintAll(); + +private: + G4double m_StripPlaneSize; + G4int m_NumberOfStrip ; + G4int HCID; + G4THitsMap<G4double>* EvtMap; +}; + + + +class GPDScorerFirstStageBackStripDummyShape : public G4VPrimitiveScorer +{ +public: // with description + GPDScorerFirstStageBackStripDummyShape(G4String name, G4int depth = 0, G4double StripPlaneSize = 98, G4int NumberOfStrip = 128); + virtual ~GPDScorerFirstStageBackStripDummyShape(); + +protected: // with description + virtual G4bool ProcessHits(G4Step*, G4TouchableHistory*); + +public: + virtual void Initialize(G4HCofThisEvent*); + virtual void EndOfEvent(G4HCofThisEvent*); + virtual void Clear(); + virtual void DrawAll(); + virtual void PrintAll(); + +private: + G4double m_StripPlaneSize; + G4int m_NumberOfStrip ; + G4int HCID; + G4THitsMap<G4double>* EvtMap; +}; + + + class GPDScorerFirstStageFrontStripSquare : public G4VPrimitiveScorer { public: // with description diff --git a/NPSimulation/include/GaspardTrackerDummyShape.hh b/NPSimulation/include/GaspardTrackerDummyShape.hh new file mode 100644 index 000000000..3d2bb0673 --- /dev/null +++ b/NPSimulation/include/GaspardTrackerDummyShape.hh @@ -0,0 +1,183 @@ +/***************************************************************************** + * Copyright (C) 2009 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: N. de Sereville contact address: deserevi@ipno.in2p3.fr * + * * + * Creation Date : 03/09/09 * + * Last update : * + *---------------------------------------------------------------------------* + * Decription: Define a dummy module for the Gaspard tracker * + * The goal of this class is to be a starting point to create a * + * new shape to be added to the Gaspard tracker. * + * * + *---------------------------------------------------------------------------* + * Comment: * + * * + * * + *****************************************************************************/ + +#ifndef GaspardTrackerDummyShape_h +#define GaspardTrackerDummyShape_h 1 + +// C++ headers +#include <vector> + +// NPTool header +#include "GaspardTrackerModule.hh" +#include "TInteractionCoordinates.h" + +using namespace std; + +#define INDEX 1000 + + +class GaspardTrackerDummyShape : public GaspardTrackerModule +{ + //////////////////////////////////////////////////// + /////// Default Constructor and Destructor ///////// + //////////////////////////////////////////////////// +public: + GaspardTrackerDummyShape(); + virtual ~GaspardTrackerDummyShape(); + + //////////////////////////////////////////////////// + //////// Specific Function of this Class /////////// + //////////////////////////////////////////////////// +public: + // By Position Method + void AddModule(G4ThreeVector TL , + G4ThreeVector BL , + G4ThreeVector BR , + G4ThreeVector CT , + bool wFirstStage , + bool wSecondStage , + bool wThirdStage); + + // By Angle Method + void AddModule(G4double R , + G4double Theta , + G4double Phi , + G4double beta_u , + G4double beta_v , + G4double beta_w , + bool wFirstStage , + bool wSecondStage , + bool wThirdStage); + + // Effectively construct Volume + // Avoid to have two time same code for Angle and Point definition + void VolumeMaker(G4int TelescopeNumber , + G4ThreeVector MMpos , + G4RotationMatrix* MMrot , + bool wFirstStage , + bool wSecondStage , + bool wThirdStage , + G4LogicalVolume* world); + + + //////////////////////////////////////////////////// + //// Inherite from GaspardTrackerModule class ///// + //////////////////////////////////////////////////// +public: + // Read stream at Configfile to pick-up parameters of detector (Position,...) + // Called in DetecorConstruction::ReadDetextorConfiguration Method + void ReadConfiguration(string Path); + + // Construct detector and inialise sensitive part. + // Called After DetecorConstruction::AddDetector Method + void ConstructDetector(G4LogicalVolume* world); + + // Add Detector branch to the EventTree. + // Called After DetecorConstruction::AddDetector Method + void InitializeRootOutput(); + + // Initialize all scorers necessary for the detector + void InitializeScorers(); + + // Read sensitive part and fill the Root tree. + // Called at in the EventAction::EndOfEventAvtion + void ReadSensitive(const G4Event* event); + + // Give the static TInteractionCoordinates from VDetector to the classes + // deriving from GaspardTrackerModule + // This is mandatory since the GaspardTracker*** does not derive from VDetector + void SetInterCoordPointer(TInteractionCoordinates* interCoord); + TInteractionCoordinates* GetInterCoordPointer() {return ms_InterCoord;}; + + + //////////////////////////////////////////////////// + ///////////////Private intern Data////////////////// + //////////////////////////////////////////////////// +private: + // Interaction Coordinates coming from VDetector through the + // SetInteractionCoordinatesPointer method + TInteractionCoordinates* ms_InterCoord; + + // True if Define by Position, False is Define by angle + vector<bool> m_DefinitionType ; + + // Used for "By Point Definition" + vector<G4ThreeVector> m_X1_Y1 ; // Top Left Corner Position Vector + vector<G4ThreeVector> m_X1_Y128 ; // Bottom Left Corner Position Vector + vector<G4ThreeVector> m_X128_Y1 ; // Bottom Right Corner Position Vector + vector<G4ThreeVector> m_X128_Y128 ; // Center Corner Position Vector + + // Used for "By Angle Definition" + vector<G4double> m_R ; // | + vector<G4double> m_Theta ; // > Spherical coordinate of Strips Silicium Plate + vector<G4double> m_Phi ; // | + + vector<G4double> m_beta_u ; // | + vector<G4double> m_beta_v ; // > Tilt angle of the Telescope + vector<G4double> m_beta_w ; // | + + // for debugging purpose + G4ThreeVector MMpos; + G4ThreeVector MMu; + G4ThreeVector MMv; + G4ThreeVector MMw; + G4ThreeVector CT; +}; + + + +namespace GPDDUMMYSHAPE +{ + // Resolution + const G4double ResoFirstStage = 0 ;// = 52keV of Resolution // Unit is MeV/2.35 +// const G4double ResoFirstStage = 0.022 ;// = 52keV of Resolution // Unit is MeV/2.35 + const G4double ResoSecondStage = 0.055 ;// = 130 keV of resolution // Unit is MeV/2.35 + const G4double ResoThirdStage = 0 ;// = 100 keV of resolution // Unit is MeV/2.35 +// const G4double ResoThirdStage = 0.043 ;// = 100 kev of resolution // Unit is MeV/2.35 + const G4double ResoTimeGpd = 0.212765957 ;// = 500ps // Unit is ns/2.35 + + // Geometry for the mother volume containing the different layers of your dummy shape module + const G4double FaceFront = 5.1*cm; + const G4double FaceBack = 5.1*cm; + const G4double Length = 3.0*cm; + const G4double InterStageDistance = 5*mm; + + // First stage + const G4double FirstStageFace = 5.0*cm; + const G4double FirstStageThickness = 300*micrometer ; + + // Second stage + const G4double SecondStageFace = FirstStageFace; + const G4double SecondStageThickness = 1*mm; + + // Third stage + const G4double ThirdStageFace = FirstStageFace; + const G4double ThirdStageThickness = 1*mm; + + // Starting at the front of the first stage and going to the third stage + const G4double FirstStage_PosZ = Length* -0.5 + 0.5*FirstStageThickness; + const G4double SecondStage_PosZ = Length* -0.5 + 0.5*SecondStageThickness + 1*InterStageDistance; + const G4double ThirdStage_PosZ = Length* -0.5 + 0.5*ThirdStageThickness + 2*InterStageDistance; +} + +#endif diff --git a/NPSimulation/src/GaspardScorers.cc b/NPSimulation/src/GaspardScorers.cc index 2df19e9a1..156ccf9fa 100644 --- a/NPSimulation/src/GaspardScorers.cc +++ b/NPSimulation/src/GaspardScorers.cc @@ -22,12 +22,14 @@ #include "GaspardScorers.hh" #include "G4UnitsTable.hh" +#include "GaspardTrackerDummyShape.hh" #include "GaspardTrackerSquare.hh" #include "GaspardTrackerTrapezoid.hh" #include "GaspardTrackerAnnular.hh" using namespace GPDSQUARE; using namespace GPDTRAP; using namespace GPDANNULAR; +using namespace GPDDUMMYSHAPE; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -284,6 +286,130 @@ void GPDScorerDetectorNumber::PrintAll() +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +// FirstStage Front Strip position Scorer for DummyShape geometry +GPDScorerFirstStageFrontStripDummyShape::GPDScorerFirstStageFrontStripDummyShape(G4String name, G4int depth, G4double StripPlaneSize, G4int NumberOfStrip) + : G4VPrimitiveScorer(name, depth), HCID(-1) +{ + m_StripPlaneSize = StripPlaneSize ; + m_NumberOfStrip = NumberOfStrip ; +} + +GPDScorerFirstStageFrontStripDummyShape::~GPDScorerFirstStageFrontStripDummyShape() +{ +} + +G4bool GPDScorerFirstStageFrontStripDummyShape::ProcessHits(G4Step* aStep, G4TouchableHistory*) +{ + G4ThreeVector POS = aStep->GetPreStepPoint()->GetPosition(); + POS = aStep->GetPreStepPoint()->GetTouchableHandle()->GetHistory()->GetTopTransform().TransformPoint(POS); + + G4double StripPitch = m_StripPlaneSize / m_NumberOfStrip; + + G4double temp = (POS(0) + m_StripPlaneSize / 2.) / StripPitch ; + G4double X = int(temp) + 1 ; + //Rare case where particle is close to edge of silicon plan + if (X == 129) X = 128; + G4double edep = aStep->GetTotalEnergyDeposit(); + if (edep < 100*keV) return FALSE; + G4int index = aStep->GetTrack()->GetTrackID(); + EvtMap->set(index, X); + return TRUE; +} + +void GPDScorerFirstStageFrontStripDummyShape::Initialize(G4HCofThisEvent* HCE) +{ + EvtMap = new G4THitsMap<G4double>(GetMultiFunctionalDetector()->GetName(), GetName()); + if (HCID < 0) { + HCID = GetCollectionID(0); + } + HCE->AddHitsCollection(HCID, (G4VHitsCollection*)EvtMap); +} + +void GPDScorerFirstStageFrontStripDummyShape::EndOfEvent(G4HCofThisEvent*) +{ +} + +void GPDScorerFirstStageFrontStripDummyShape::Clear() +{ + EvtMap->clear(); +} + +void GPDScorerFirstStageFrontStripDummyShape::DrawAll() +{ +} + +void GPDScorerFirstStageFrontStripDummyShape::PrintAll() +{ + G4cout << " MultiFunctionalDet " << detector->GetName() << G4endl ; + G4cout << " PrimitiveScorer " << GetName() << G4endl ; + G4cout << " Number of entries " << EvtMap->entries() << G4endl ; +} + + + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +// FirstStage Back Strip position Scorer for DummyShape geometry +GPDScorerFirstStageBackStripDummyShape::GPDScorerFirstStageBackStripDummyShape(G4String name, G4int depth, G4double StripPlaneSize, G4int NumberOfStrip) + : G4VPrimitiveScorer(name, depth), HCID(-1) +{ + m_StripPlaneSize = StripPlaneSize ; + m_NumberOfStrip = NumberOfStrip ; +} + +GPDScorerFirstStageBackStripDummyShape::~GPDScorerFirstStageBackStripDummyShape() +{ +} + +G4bool GPDScorerFirstStageBackStripDummyShape::ProcessHits(G4Step* aStep, G4TouchableHistory*) +{ + G4ThreeVector POS = aStep->GetPreStepPoint()->GetPosition(); + POS = aStep->GetPreStepPoint()->GetTouchableHandle()->GetHistory()->GetTopTransform().TransformPoint(POS); + + G4double StripPitch = m_StripPlaneSize / m_NumberOfStrip; + + G4double temp = (POS(0) + m_StripPlaneSize / 2.) / StripPitch ; + G4double X = int(temp) + 1 ; + //Rare case where particle is close to edge of silicon plan + if (X == 129) X = 128; + G4double edep = aStep->GetTotalEnergyDeposit(); + if (edep < 100*keV) return FALSE; + G4int index = aStep->GetTrack()->GetTrackID(); + EvtMap->set(index, X); + return TRUE; +} + +void GPDScorerFirstStageBackStripDummyShape::Initialize(G4HCofThisEvent* HCE) +{ + EvtMap = new G4THitsMap<G4double>(GetMultiFunctionalDetector()->GetName(), GetName()); + if (HCID < 0) { + HCID = GetCollectionID(0); + } + HCE->AddHitsCollection(HCID, (G4VHitsCollection*)EvtMap); +} + +void GPDScorerFirstStageBackStripDummyShape::EndOfEvent(G4HCofThisEvent*) +{ +} + +void GPDScorerFirstStageBackStripDummyShape::Clear() +{ + EvtMap->clear(); +} + +void GPDScorerFirstStageBackStripDummyShape::DrawAll() +{ +} + +void GPDScorerFirstStageBackStripDummyShape::PrintAll() +{ + G4cout << " MultiFunctionalDet " << detector->GetName() << G4endl ; + G4cout << " PrimitiveScorer " << GetName() << G4endl ; + G4cout << " Number of entries " << EvtMap->entries() << G4endl ; +} + + + //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... // FirstStage Front Strip position Scorer for Square geometry GPDScorerFirstStageFrontStripSquare::GPDScorerFirstStageFrontStripSquare(G4String name, G4int depth, G4double StripPlaneSize, G4int NumberOfStrip) diff --git a/NPSimulation/src/GaspardTracker.cc b/NPSimulation/src/GaspardTracker.cc index bc2baf42d..c82252005 100644 --- a/NPSimulation/src/GaspardTracker.cc +++ b/NPSimulation/src/GaspardTracker.cc @@ -31,6 +31,7 @@ #include "GaspardTrackerSquare.hh" #include "GaspardTrackerTrapezoid.hh" #include "GaspardTrackerAnnular.hh" +#include "GaspardTrackerDummyShape.hh" using namespace std; @@ -55,10 +56,10 @@ void GaspardTracker::ReadConfiguration(string Path) ifstream ConfigFile; ConfigFile.open(Path.c_str()); - bool GPDTrkSquare = false; - bool GPDTrkTrapezoid = false; - bool GPDTrkAnnular = false; - bool GPDTrkShape = false; + bool GPDTrkSquare = false; + bool GPDTrkTrapezoid = false; + bool GPDTrkAnnular = false; + bool GPDTrkDummyShape = false; string LineBuffer; while (!ConfigFile.eof()) { @@ -114,13 +115,13 @@ void GaspardTracker::ReadConfiguration(string Path) // store GaspardTrackerTrapezoid "detector" m_Modules.push_back(myDetector); } - else if (LineBuffer.compare(0, 12, "GPDShape") == 0 && GPDTrkShape == false) { - GPDTrkShape = true; + else if (LineBuffer.compare(0, 13, "GPDDummyShape") == 0 && GPDTrkDummyShape == false) { + GPDTrkDummyShape = true; // instantiate a new "detector" corresponding to the Shape elements // The GaspardTrackerSquare class should be replaced by the // GaspardTrackerShape class you need to define - GaspardTrackerModule* myDetector = new GaspardTrackerSquare(); + GaspardTrackerModule* myDetector = new GaspardTrackerDummyShape(); // read part of the configuration file corresponding to shape elements ConfigFile.close(); diff --git a/NPSimulation/src/GaspardTrackerDummyShape.cc b/NPSimulation/src/GaspardTrackerDummyShape.cc new file mode 100644 index 000000000..b533d5039 --- /dev/null +++ b/NPSimulation/src/GaspardTrackerDummyShape.cc @@ -0,0 +1,1007 @@ +/***************************************************************************** + * Copyright (C) 2009 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: N. de Sereville contact address: deserevi@ipno.in2p3.fr * + * * + * Creation Date : 03/09/09 * + * Last update : * + *---------------------------------------------------------------------------* + * Decription: Define a dummy module for the Gaspard tracker * + * The goal of this class is to be a starting point to create a * + * new shape to be added to the Gaspard tracker. * + * * + *---------------------------------------------------------------------------* + * Comment: * + * * + * * + *****************************************************************************/ + +// C++ headers +#include <sstream> +#include <string> +#include <cmath> + +// G4 Geometry headers +#include "G4Trd.hh" +#include "G4Box.hh" +#include "G4Trap.hh" + +// G4 various headers +#include "G4MaterialTable.hh" +#include "G4Element.hh" +#include "G4ElementTable.hh" +#include "G4VisAttributes.hh" +#include "G4Colour.hh" +#include "G4RotationMatrix.hh" +#include "G4Transform3D.hh" +#include "G4PVPlacement.hh" +#include "G4PVDivision.hh" + +// G4 sensitive +#include "G4SDManager.hh" +#include "G4MultiFunctionalDetector.hh" + +// NPTool headers +#include "GaspardTrackerDummyShape.hh" +#include "GeneralScorers.hh" +#include "GaspardScorers.hh" +#include "RootOutput.h" +#include "MUST2Array.hh" + +// CLHEP +#include "CLHEP/Random/RandGauss.h" + +using namespace std; +using namespace CLHEP; +using namespace GPDDUMMYSHAPE; + + + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +GaspardTrackerDummyShape::GaspardTrackerDummyShape() +{ + ms_InterCoord = 0; +} + + + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +GaspardTrackerDummyShape::~GaspardTrackerDummyShape() +{ +} + + + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void GaspardTrackerDummyShape::AddModule(G4ThreeVector X1_Y1 , + G4ThreeVector X128_Y1 , + G4ThreeVector X1_Y128 , + G4ThreeVector X128_Y128 , + bool wFirstStage , + bool wSecondStage , + bool wThirdStage) +{ + m_DefinitionType.push_back(true) ; + + m_X1_Y1.push_back(X1_Y1) ; + m_X128_Y1.push_back(X128_Y1) ; + m_X1_Y128.push_back(X1_Y128) ; + m_X128_Y128.push_back(X128_Y128) ; + m_wFirstStage.push_back(wFirstStage) ; + m_wSecondStage.push_back(wSecondStage) ; + m_wThirdStage.push_back(wThirdStage) ; + + m_R.push_back(0) ; + m_Theta.push_back(0) ; + m_Phi.push_back(0) ; + m_beta_u.push_back(0) ; + m_beta_v.push_back(0) ; + m_beta_w.push_back(0) ; +} + + + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void GaspardTrackerDummyShape::AddModule(G4double R , + G4double Theta , + G4double Phi , + G4double beta_u , + G4double beta_v , + G4double beta_w , + bool wFirstStage , + bool wSecondStage , + bool wThirdStage) +{ + G4ThreeVector empty = G4ThreeVector(0, 0, 0); + + m_DefinitionType.push_back(false); + + m_R.push_back(R) ; + m_Theta.push_back(Theta) ; + m_Phi.push_back(Phi) ; + m_beta_u.push_back(beta_u) ; + m_beta_v.push_back(beta_v) ; + m_beta_w.push_back(beta_w) ; + m_wFirstStage.push_back(wFirstStage) ; + m_wSecondStage.push_back(wSecondStage) ; + m_wThirdStage.push_back(wThirdStage) ; + + m_X1_Y1.push_back(empty) ; + m_X128_Y1.push_back(empty) ; + m_X1_Y128.push_back(empty) ; + m_X128_Y128.push_back(empty) ; +} + + + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void GaspardTrackerDummyShape::VolumeMaker(G4int TelescopeNumber, + G4ThreeVector MMpos, + G4RotationMatrix* MMrot, + bool wFirstStage, + bool wSecondStage, + bool wThirdStage, + G4LogicalVolume* world) +{ + G4double NbrTelescopes = TelescopeNumber ; + G4String DetectorNumber ; + ostringstream Number ; + Number << NbrTelescopes ; + DetectorNumber = Number.str() ; + + ///////////////////////////////////////////////////////////////// + /////////////////Element Definition /////////////////////////// + //////////////////////////////////////////////////////////////// + G4String symbol; + G4double density = 0. , a = 0, z = 0; + G4int ncomponents = 0; + + //////////////////////////////////////////////////////////////// + /////////////////Material Definition /////////////////////////// + //////////////////////////////////////////////////////////////// + // Si + a = 28.0855 * g / mole; + density = 2.321 * g / cm3; + G4Material* Silicon = new G4Material("Si", z = 14., a, density); + + // Vacuum + G4Element* N = new G4Element("Nitrogen" , symbol = "N" , z = 7 , a = 14.01 * g / mole); + G4Element* O = new G4Element("Oxigen" , symbol = "O" , z = 8 , a = 16.00 * g / mole); + + density = 0.000000001 * mg / cm3; + G4Material* Vacuum = new G4Material("Vacuum", density, ncomponents = 2); + Vacuum->AddElement(N, .7); + Vacuum->AddElement(O, .3); + + //////////////////////////////////////////////////////////////// + ////////////// Starting Volume Definition ////////////////////// + //////////////////////////////////////////////////////////////// + // Little trick to avoid warning in compilation: Use a PVPlacement "buffer". + // If don't you will have a Warning unused variable 'myPVP' + G4PVPlacement* PVPBuffer; + G4String Name = "GPDDummyShape" + DetectorNumber ; + + G4Box* solidGPDDummyShape = new G4Box(Name, 0.5*FaceFront, 0.5*FaceFront, 0.5*Length); + G4LogicalVolume* logicGPDDummyShape = new G4LogicalVolume(solidGPDDummyShape, Vacuum, Name, 0, 0, 0); + + PVPBuffer = new G4PVPlacement(G4Transform3D(*MMrot, MMpos) , + logicGPDDummyShape , + Name , + world , + false , + 0); + + logicGPDDummyShape->SetVisAttributes(G4VisAttributes::Invisible); + if (m_non_sensitive_part_visiualisation) logicGPDDummyShape->SetVisAttributes(G4VisAttributes(G4Colour(0.90, 0.90, 0.90))); + + //Place two marker to identify the u and v axis on silicon face: + //marker are placed a bit before the silicon itself so they don't perturbate simulation + //Uncomment to help debugging or if you want to understand the way the code work. + //I should recommand to Comment it during simulation to avoid perturbation of simulation + //Remember G4 is limitationg step on geometry constraints. + /* + G4ThreeVector positionMarkerU = CT*0.98 + MMu*SiliconFace/4; + G4Box* solidMarkerU = new G4Box( "solidMarkerU" , SiliconFace/4 , 1*mm , 1*mm ) ; + G4LogicalVolume* logicMarkerU = new G4LogicalVolume( solidMarkerU , Vacuum , "logicMarkerU",0,0,0) ; + PVPBuffer = new G4PVPlacement(G4Transform3D(*MMrot,positionMarkerU),logicMarkerU,"MarkerU",world,false,0) ; + + G4VisAttributes* MarkerUVisAtt= new G4VisAttributes(G4Colour(0.,0.,0.5));//blue + logicMarkerU->SetVisAttributes(MarkerUVisAtt); + + G4ThreeVector positionMarkerV = CT*0.98 + MMv*SiliconFace/4; + G4Box* solidMarkerV = new G4Box( "solidMarkerU" , 1*mm , SiliconFace/4 , 1*mm ) ; + G4LogicalVolume* logicMarkerV = new G4LogicalVolume( solidMarkerV , Vacuum , "logicMarkerV",0,0,0) ; + PVPBuffer = new G4PVPlacement(G4Transform3D(*MMrot,positionMarkerV),logicMarkerV,"MarkerV",world,false,0) ; + + G4VisAttributes* MarkerVVisAtt= new G4VisAttributes(G4Colour(0.,0.5,0.5));//green + logicMarkerV->SetVisAttributes(MarkerVVisAtt); + */ + + //////////////////////////////////////////////////////////////// + ///////////////// First Stage Construction ///////////////////// + //////////////////////////////////////////////////////////////// + if (wFirstStage) { + // Silicon detector itself + G4ThreeVector positionFirstStage = G4ThreeVector(0, 0, FirstStage_PosZ); + + G4Box* solidFirstStage = new G4Box("solidFirstStage", 0.5*FirstStageFace, 0.5*FirstStageFace, 0.5*FirstStageThickness); + G4LogicalVolume* logicFirstStage = new G4LogicalVolume(solidFirstStage, Silicon, "logicFirstStage", 0, 0, 0); + + PVPBuffer = new G4PVPlacement(0, + positionFirstStage, + logicFirstStage, + "G" + DetectorNumber + "FirstStage", + logicGPDDummyShape, + false, + 0); + + // Set First Stage sensible + logicFirstStage->SetSensitiveDetector(m_FirstStageScorer); + + ///Visualisation of FirstStage Strip + G4VisAttributes* FirstStageVisAtt = new G4VisAttributes(G4Colour(0.2, 0.2, 0.2)); + logicFirstStage->SetVisAttributes(FirstStageVisAtt); + } + + //////////////////////////////////////////////////////////////// + //////////////////// Second Stage Construction //////////////// + //////////////////////////////////////////////////////////////// + if (wSecondStage) { + // Silicon detector itself + G4ThreeVector positionSecondStage = G4ThreeVector(0, 0, SecondStage_PosZ); + + G4Box* solidSecondStage = new G4Box("solidSecondStage", 0.5*SecondStageFace, 0.5*SecondStageFace, 0.5*SecondStageThickness); + G4LogicalVolume* logicSecondStage = new G4LogicalVolume(solidSecondStage, Silicon, "logicSecondStage", 0, 0, 0); + + PVPBuffer = new G4PVPlacement(0, + positionSecondStage, + logicSecondStage, + "G" + DetectorNumber + "SecondStage", + logicGPDDummyShape, + false, + 0); + + // Set Second Stage sensible + logicSecondStage->SetSensitiveDetector(m_SecondStageScorer); + + ///Visualisation of SecondStage Strip + G4VisAttributes* SecondStageVisAtt = new G4VisAttributes(G4Colour(0.5, 0.5, 0.5)) ; + logicSecondStage->SetVisAttributes(SecondStageVisAtt) ; + } + + //////////////////////////////////////////////////////////////// + ///////////////// Third Stage Construction ///////////////////// + //////////////////////////////////////////////////////////////// + if (wThirdStage) { + // Third stage silicon detector + G4ThreeVector positionThirdStage = G4ThreeVector(0, 0, ThirdStage_PosZ); + + G4Box* solidThirdStage = new G4Box("solidThirdStage", 0.5*ThirdStageFace, 0.5*ThirdStageFace, 0.5*ThirdStageThickness); + G4LogicalVolume* logicThirdStage = new G4LogicalVolume(solidThirdStage, Silicon, "logicThirdStage", 0, 0, 0); + + PVPBuffer = new G4PVPlacement(0, + positionThirdStage, + logicThirdStage, + "G" + DetectorNumber + "ThirdStage", + logicGPDDummyShape, + false, + 0); + + // Set Third Stage sensible + logicThirdStage->SetSensitiveDetector(m_ThirdStageScorer); + + ///Visualisation of Third Stage + G4VisAttributes* ThirdStageVisAtt = new G4VisAttributes(G4Colour(0.7, 0.7, 0.7)); + logicThirdStage->SetVisAttributes(ThirdStageVisAtt); + } +} + + + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +// Virtual Method of VDetector class + +// Read stream at Configfile to pick-up parameters of detector (Position,...) +// Called in DetecorConstruction::ReadDetextorConfiguration Method +void GaspardTrackerDummyShape::ReadConfiguration(string Path) +{ + ifstream ConfigFile ; + ConfigFile.open(Path.c_str()) ; + string LineBuffer ; + string DataBuffer ; + + // A:X1_Y1 --> X:1 Y:1 + // B:X128_Y1 --> X:128 Y:1 + // C:X1_Y128 --> X:1 Y:128 + // D:X128_Y128 --> X:128 Y:128 + + G4double Ax , Bx , Cx , Dx , Ay , By , Cy , Dy , Az , Bz , Cz , Dz ; + G4ThreeVector A , B , C , D ; + G4double Theta = 0 , Phi = 0 , R = 0 , beta_u = 0 , beta_v = 0 , beta_w = 0 ; + int FIRSTSTAGE = 0 , SECONDSTAGE = 0 , THIRDSTAGE = 0 ; + + bool ReadingStatus = false ; + + bool check_A = false ; + bool check_C = false ; + bool check_B = false ; + bool check_D = false ; + + bool check_Theta = false ; + bool check_Phi = false ; + bool check_R = false ; + bool check_beta = false ; + + bool check_FirstStage = false ; + bool check_SecondStage = false ; + bool check_ThirdStage = false ; + bool checkVis = false ; + + while (!ConfigFile.eof()) { + getline(ConfigFile, LineBuffer); + if (LineBuffer.compare(0, 13, "GPDDummyShape") == 0) { + G4cout << "///" << G4endl ; + G4cout << "DummyShape element found: " << G4endl ; + ReadingStatus = true ; + } + + while(ReadingStatus){ + + ConfigFile >> DataBuffer; + // Comment Line + if (DataBuffer.compare(0, 1, "%") == 0) {/*do nothing */;} + + // Position method + else if (DataBuffer.compare(0, 6, "X1_Y1=") == 0) { + check_A = true; + ConfigFile >> DataBuffer ; + Ax = atof(DataBuffer.c_str()) ; + Ax = Ax * mm ; + ConfigFile >> DataBuffer ; + Ay = atof(DataBuffer.c_str()) ; + Ay = Ay * mm ; + ConfigFile >> DataBuffer ; + Az = atof(DataBuffer.c_str()) ; + Az = Az * mm ; + + A = G4ThreeVector(Ax, Ay, Az); + cout << "X1 Y1 corner position : " << A << endl; + } + + else if (DataBuffer.compare(0, 8, "X128_Y1=") == 0) { + check_B = true; + ConfigFile >> DataBuffer ; + Bx = atof(DataBuffer.c_str()) ; + Bx = Bx * mm ; + ConfigFile >> DataBuffer ; + By = atof(DataBuffer.c_str()) ; + By = By * mm ; + ConfigFile >> DataBuffer ; + Bz = atof(DataBuffer.c_str()) ; + Bz = Bz * mm ; + + B = G4ThreeVector(Bx, By, Bz); + cout << "X128 Y1 corner position : " << B << endl; + } + + else if (DataBuffer.compare(0, 8, "X1_Y128=") == 0) { + check_C = true; + ConfigFile >> DataBuffer ; + Cx = atof(DataBuffer.c_str()) ; + Cx = Cx * mm ; + ConfigFile >> DataBuffer ; + Cy = atof(DataBuffer.c_str()) ; + Cy = Cy * mm ; + ConfigFile >> DataBuffer ; + Cz = atof(DataBuffer.c_str()) ; + Cz = Cz * mm ; + + C = G4ThreeVector(Cx, Cy, Cz); + cout << "X1 Y128 corner position : " << C << endl; + } + + else if (DataBuffer.compare(0, 10, "X128_Y128=") == 0) { + check_D = true; + ConfigFile >> DataBuffer ; + Dx = atof(DataBuffer.c_str()) ; + Dx = Dx * mm ; + ConfigFile >> DataBuffer ; + Dy = atof(DataBuffer.c_str()) ; + Dy = Dy * mm ; + ConfigFile >> DataBuffer ; + Dz = atof(DataBuffer.c_str()) ; + Dz = Dz * mm ; + + D = G4ThreeVector(Dx, Dy, Dz); + cout << "X128 Y128 corner position : " << D << endl; + } + + + // Angle method + else if (DataBuffer.compare(0, 6, "THETA=") == 0) { + check_Theta = true; + ConfigFile >> DataBuffer ; + Theta = atof(DataBuffer.c_str()) ; + Theta = Theta * deg; + cout << "Theta: " << Theta / deg << endl; + } + + else if (DataBuffer.compare(0, 4, "PHI=") == 0) { + check_Phi = true; + ConfigFile >> DataBuffer ; + Phi = atof(DataBuffer.c_str()) ; + Phi = Phi * deg; + cout << "Phi: " << Phi / deg << endl; + } + + else if (DataBuffer.compare(0, 2, "R=") == 0) { + check_R = true; + ConfigFile >> DataBuffer ; + R = atof(DataBuffer.c_str()) ; + R = R * mm; + cout << "R: " << R / mm << endl; + } + + else if (DataBuffer.compare(0, 5, "BETA=") == 0) { + check_beta = true; + ConfigFile >> DataBuffer ; + beta_u = atof(DataBuffer.c_str()) ; + beta_u = beta_u * deg ; + ConfigFile >> DataBuffer ; + beta_v = atof(DataBuffer.c_str()) ; + beta_v = beta_v * deg ; + ConfigFile >> DataBuffer ; + beta_w = atof(DataBuffer.c_str()) ; + beta_w = beta_w * deg ; + G4cout << "Beta: " << beta_u / deg << " " << beta_v / deg << " " << beta_w / deg << G4endl ; + } + + else if (DataBuffer.compare(0, 11, "FIRSTSTAGE=") == 0) { + check_FirstStage = true ; + ConfigFile >> DataBuffer; + FIRSTSTAGE = atof(DataBuffer.c_str()) ; + } + + else if (DataBuffer.compare(0, 12, "SECONDSTAGE=") == 0) { + check_SecondStage = true ; + ConfigFile >> DataBuffer; + SECONDSTAGE = atof(DataBuffer.c_str()) ; + } + + else if (DataBuffer.compare(0, 11, "THIRDSTAGE=") == 0) { + check_ThirdStage = true ; + ConfigFile >> DataBuffer; + THIRDSTAGE = atof(DataBuffer.c_str()) ; + } + + else if (DataBuffer.compare(0, 4, "VIS=") == 0) { + checkVis = true ; + ConfigFile >> DataBuffer; + if (DataBuffer.compare(0, 3, "all") == 0) m_non_sensitive_part_visiualisation = true; + } + + else G4cout << "WARNING: Wrong Token, GaspardTrackerDummyShape: DummyShape Element not added" << G4endl; + + //Add The previously define telescope + //With position method + if ((check_A && check_B && check_C && check_D && check_FirstStage && check_SecondStage && check_ThirdStage && checkVis) && !(check_Theta && check_Phi && check_R)) { + + ReadingStatus = false ; + check_A = false ; + check_C = false ; + check_B = false ; + check_D = false ; + check_FirstStage = false ; + check_SecondStage = false ; + check_ThirdStage = false ; + checkVis = false ; + + AddModule(A , + B , + C , + D , + FIRSTSTAGE == 1 , + SECONDSTAGE == 1 , + THIRDSTAGE == 1); + } + + //with angle method + if ((check_Theta && check_Phi && check_R && check_FirstStage && check_SecondStage && check_ThirdStage && checkVis) && !(check_A && check_B && check_C && check_D)) { + ReadingStatus = false ; + check_Theta = false ; + check_Phi = false ; + check_R = false ; + check_beta = false ; + check_FirstStage = false ; + check_SecondStage = false ; + check_ThirdStage = false ; + checkVis = false ; + + AddModule(R , + Theta , + Phi , + beta_u , + beta_v , + beta_w , + FIRSTSTAGE == 1 , + SECONDSTAGE == 1 , + THIRDSTAGE == 1); + } + + + } + } +} + +// Construct detector and inialise sensitive part. +// Called After DetecorConstruction::AddDetector Method +void GaspardTrackerDummyShape::ConstructDetector(G4LogicalVolume* world) +{ + G4RotationMatrix* MMrot = NULL ; +/* G4ThreeVector MMpos = G4ThreeVector(0, 0, 0) ; + G4ThreeVector MMu = G4ThreeVector(0, 0, 0) ; + G4ThreeVector MMv = G4ThreeVector(0, 0, 0) ; + G4ThreeVector MMw = G4ThreeVector(0, 0, 0) ;*/ + MMpos = G4ThreeVector(0, 0, 0) ; + MMu = G4ThreeVector(0, 0, 0) ; + MMv = G4ThreeVector(0, 0, 0) ; + MMw = G4ThreeVector(0, 0, 0) ; + G4ThreeVector MMCenter = G4ThreeVector(0, 0, 0) ; + bool FirstStage = true ; + bool SecondStage = true ; + bool ThirdStage = true ; + + G4int NumberOfTelescope = m_DefinitionType.size() ; + + for (G4int i = 0; i < NumberOfTelescope; i++) { + // By Point + if (m_DefinitionType[i]) { + // (u,v,w) unitary vector associated to telescope referencial + // (u,v) // to silicon plan + // w perpendicular to (u,v) plan and pointing ThirdStage + G4cout << "############ Gaspard " << i << " #############" << G4endl; + MMu = m_X128_Y1[i] - m_X1_Y1[i] ; + G4cout << "MMu: X = " << MMu(0) << " , Y = " << MMu(1) << " , Z = " << MMu(2) << G4endl; + MMu = MMu.unit() ; + G4cout << "Norm MMu: X = " << MMu(0) << " , Y = " << MMu(1) << " , Z = " << MMu(2) << G4endl; + + MMv = m_X1_Y128[i] - m_X1_Y1[i] ; + G4cout << "MMv X = " << MMv(0) << " , Y = " << MMv(1) << " , Z = " << MMv(2) << G4endl; + MMv = MMv.unit() ; + G4cout << "Norm MMv X = " << MMv(0) << " , Y = " << MMv(1) << " , Z = " << MMv(2) << G4endl; + + G4ThreeVector MMscal = MMu.dot(MMv); + G4cout << "Norm MMu.MMv X = " << MMv(0) << " , Y = " << MMv(1) << " , Z = " << MMv(2) << G4endl; + + MMw = MMu.cross(MMv) ; +// if (MMw.z() > 0) MMw = MMv.cross(MMu) ; + MMw = MMw.unit() ; + + MMCenter = (m_X1_Y1[i] + m_X1_Y128[i] + m_X128_Y1[i] + m_X128_Y128[i]) / 4 ; + + // Passage Matrix from Lab Referential to Telescope Referential + // MUST2 + MMrot = new G4RotationMatrix(MMu, MMv, MMw) ; + // translation to place Telescope + MMpos = MMw * Length * 0.5 + MMCenter ; + } + + // By Angle + else { + G4double Theta = m_Theta[i] ; + G4double Phi = m_Phi[i] ; + //This part because if Phi and Theta = 0 equation are false + if (Theta == 0) Theta = 0.0001 ; + if (Theta == 2*cos(0)) Theta = 2 * acos(0) - 0.00001 ; + if (Phi == 0) Phi = 0.0001 ; + + // (u,v,w) unitary vector associated to telescope referencial + // (u,v) // to silicon plan + // w perpendicular to (u,v) plan and pointing ThirdStage + // Phi is angle between X axis and projection in (X,Y) plan + // Theta is angle between position vector and z axis + G4double wX = m_R[i] * sin(Theta / rad) * cos(Phi / rad) ; + G4double wY = m_R[i] * sin(Theta / rad) * sin(Phi / rad) ; + G4double wZ = m_R[i] * cos(Theta / rad) ; + + MMw = G4ThreeVector(wX, wY, wZ) ; +// G4ThreeVector CT = MMw ; + CT = MMw ; + MMw = MMw.unit() ; + + G4ThreeVector Y = G4ThreeVector(0 , 1 , 0) ; + + MMu = MMw.cross(Y) ; + MMv = MMw.cross(MMu) ; + + MMv = MMv.unit(); + MMu = MMu.unit(); + // Passage Matrix from Lab Referential to Telescope Referential + // MUST2 + MMrot = new G4RotationMatrix(MMu, MMv, MMw); + // Telescope is rotate of Beta angle around MMv axis. + MMrot->rotate(m_beta_u[i], MMu); + MMrot->rotate(m_beta_v[i], MMv); + MMrot->rotate(m_beta_w[i], MMw); + // translation to place Telescope + MMpos = MMw * Length * 0.5 + CT ; + } + + FirstStage = m_wFirstStage[i] ; + SecondStage = m_wSecondStage[i] ; + ThirdStage = m_wThirdStage[i] ; + + VolumeMaker(i + 1, MMpos, MMrot, FirstStage, SecondStage, ThirdStage , world); + } + + delete MMrot ; +} + + + +// Connect the GaspardTrackingData class to the output TTree +// of the simulation +void GaspardTrackerDummyShape::InitializeRootOutput() +{ +} + + + +// Set the TinteractionCoordinates object from VDetector to the present class +void GaspardTrackerDummyShape::SetInterCoordPointer(TInteractionCoordinates* interCoord) +{ + ms_InterCoord = interCoord; +} + + + +// Read sensitive part and fill the Root tree. +// Called at in the EventAction::EndOfEventAvtion +void GaspardTrackerDummyShape::ReadSensitive(const G4Event* event) +{ + bool checkSi = false; + G4String DetectorNumber; + +////////////////////////////////////////////////////////////////////////////////////// +//////////////////////// Used to Read Event Map of detector ////////////////////////// +////////////////////////////////////////////////////////////////////////////////////// + + // First Stage + std::map<G4int, G4int*>::iterator DetectorNumber_itr; + std::map<G4int, G4double*>::iterator Energy_itr; + std::map<G4int, G4double*>::iterator Time_itr; + std::map<G4int, G4double*>::iterator X_itr; + std::map<G4int, G4double*>::iterator Y_itr; + std::map<G4int, G4double*>::iterator Pos_X_itr; + std::map<G4int, G4double*>::iterator Pos_Y_itr; + std::map<G4int, G4double*>::iterator Pos_Z_itr; + std::map<G4int, G4double*>::iterator Ang_Theta_itr; + std::map<G4int, G4double*>::iterator Ang_Phi_itr; + + G4THitsMap<G4int>* DetectorNumberHitMap; + G4THitsMap<G4double>* EnergyHitMap; + G4THitsMap<G4double>* TimeHitMap; + G4THitsMap<G4double>* XHitMap; + G4THitsMap<G4double>* YHitMap; + G4THitsMap<G4double>* PosXHitMap; + G4THitsMap<G4double>* PosYHitMap; + G4THitsMap<G4double>* PosZHitMap; + G4THitsMap<G4double>* AngThetaHitMap; + G4THitsMap<G4double>* AngPhiHitMap; + + // NULL pointer are given to avoid warning at compilation + // Si(Li) + std::map<G4int, G4double*>::iterator SiLiEnergy_itr ; + G4THitsMap<G4double>* SiLiEnergyHitMap = NULL ; + // Third Stage + std::map<G4int, G4double*>::iterator ThirdStageEnergy_itr ; + G4THitsMap<G4double>* ThirdStageEnergyHitMap = NULL ; + +////////////////////////////////////////////////////////////////////////////////////// +////////////////////////////////////////////////////////////////////////////////////// + G4int HitNumber = 0; + checkSi = false; + + // Read the Scorer associate to the Silicon Strip + //Detector Number + G4int StripDetCollectionID = G4SDManager::GetSDMpointer()->GetCollectionID("FirstStageScorerGPDDummyShape/DetectorNumber") ; + DetectorNumberHitMap = (G4THitsMap<G4int>*)(event->GetHCofThisEvent()->GetHC(StripDetCollectionID)) ; + DetectorNumber_itr = DetectorNumberHitMap->GetMap()->begin() ; + + //Energy + G4int StripEnergyCollectionID = G4SDManager::GetSDMpointer()->GetCollectionID("FirstStageScorerGPDDummyShape/StripEnergy") ; + EnergyHitMap = (G4THitsMap<G4double>*)(event->GetHCofThisEvent()->GetHC(StripEnergyCollectionID)) ; + Energy_itr = EnergyHitMap->GetMap()->begin() ; + + //Time of Flight + G4int StripTimeCollectionID = G4SDManager::GetSDMpointer()->GetCollectionID("FirstStageScorerGPDDummyShape/StripTime") ; + TimeHitMap = (G4THitsMap<G4double>*)(event->GetHCofThisEvent()->GetHC(StripTimeCollectionID)) ; + Time_itr = TimeHitMap->GetMap()->begin() ; + + //Strip Number X + G4int StripXCollectionID = G4SDManager::GetSDMpointer()->GetCollectionID("FirstStageScorerGPDDummyShape/StripIDFront") ; + XHitMap = (G4THitsMap<G4double>*)(event->GetHCofThisEvent()->GetHC(StripXCollectionID)) ; + X_itr = XHitMap->GetMap()->begin() ; + + //Strip Number Y + G4int StripYCollectionID = G4SDManager::GetSDMpointer()->GetCollectionID("FirstStageScorerGPDDummyShape/StripIDBack"); + YHitMap = (G4THitsMap<G4double>*)(event->GetHCofThisEvent()->GetHC(StripYCollectionID)) ; + Y_itr = YHitMap->GetMap()->begin() ; + + //Interaction Coordinate X + G4int InterCoordXCollectionID = G4SDManager::GetSDMpointer()->GetCollectionID("FirstStageScorerGPDDummyShape/InterCoordX") ; + PosXHitMap = (G4THitsMap<G4double>*)(event->GetHCofThisEvent()->GetHC(InterCoordXCollectionID)) ; + Pos_X_itr = PosXHitMap->GetMap()->begin() ; + + //Interaction Coordinate Y + G4int InterCoordYCollectionID = G4SDManager::GetSDMpointer()->GetCollectionID("FirstStageScorerGPDDummyShape/InterCoordY") ; + PosYHitMap = (G4THitsMap<G4double>*)(event->GetHCofThisEvent()->GetHC(InterCoordYCollectionID)) ; + Pos_Y_itr = PosYHitMap->GetMap()->begin() ; + + //Interaction Coordinate Z + G4int InterCoordZCollectionID = G4SDManager::GetSDMpointer()->GetCollectionID("FirstStageScorerGPDDummyShape/InterCoordZ") ; + PosZHitMap = (G4THitsMap<G4double>*)(event->GetHCofThisEvent()->GetHC(InterCoordZCollectionID)) ; + Pos_Z_itr = PosXHitMap->GetMap()->begin() ; + + //Interaction Coordinate Angle Theta + G4int InterCoordAngThetaCollectionID = G4SDManager::GetSDMpointer()->GetCollectionID("FirstStageScorerGPDDummyShape/InterCoordAngTheta") ; + AngThetaHitMap = (G4THitsMap<G4double>*)(event->GetHCofThisEvent()->GetHC(InterCoordAngThetaCollectionID)) ; + Ang_Theta_itr = AngThetaHitMap->GetMap()->begin() ; + + //Interaction Coordinate Angle Phi + G4int InterCoordAngPhiCollectionID = G4SDManager::GetSDMpointer()->GetCollectionID("FirstStageScorerGPDDummyShape/InterCoordAngPhi") ; + AngPhiHitMap = (G4THitsMap<G4double>*)(event->GetHCofThisEvent()->GetHC(InterCoordAngPhiCollectionID)) ; + Ang_Phi_itr = AngPhiHitMap->GetMap()->begin() ; + + // Read the Scorer associate to the SiLi + //Energy + G4int SiLiEnergyCollectionID = G4SDManager::GetSDMpointer()->GetCollectionID("SecondStageScorerGPDDummyShape/SecondStageEnergy") ; + SiLiEnergyHitMap = (G4THitsMap<G4double>*)(event->GetHCofThisEvent()->GetHC(SiLiEnergyCollectionID)) ; + SiLiEnergy_itr = SiLiEnergyHitMap->GetMap()->begin() ; + + + // Read the Scorer associate to the CsI crystal + //Energy + G4int ThirdStageEnergyCollectionID = G4SDManager::GetSDMpointer()->GetCollectionID("ThirdStageScorerGPDDummyShape/ThirdStageEnergy"); + ThirdStageEnergyHitMap = (G4THitsMap<G4double>*)(event->GetHCofThisEvent()->GetHC(ThirdStageEnergyCollectionID)); + ThirdStageEnergy_itr = ThirdStageEnergyHitMap->GetMap()->begin(); + + // Check the size of different map + G4int sizeN = DetectorNumberHitMap->entries(); + G4int sizeE = EnergyHitMap->entries(); + G4int sizeT = TimeHitMap->entries(); + G4int sizeX = XHitMap->entries(); + G4int sizeY = YHitMap->entries(); + + if (sizeE != sizeT || sizeT != sizeX || sizeX != sizeY) { + G4cout << "No match size Si Event Map: sE:" + << sizeE << " sT:" << sizeT << " sX:" << sizeX << " sY:" << sizeY << endl ; + return; + } + + // Loop on Strip energy + for (G4int l = 0 ; l < sizeE ; l++) { + G4int ETrackID = Energy_itr->first ; + G4double E = *(Energy_itr->second) ; + G4int N = 0; + + if (E > 0) { + checkSi = true ; + ms_Event->SetGPDTrkFirstStageFrontEEnergy(RandGauss::shoot(E, ResoFirstStage)) ; + ms_Event->SetGPDTrkFirstStageBackEEnergy(RandGauss::shoot(E, ResoFirstStage)) ; + + // Detector Number + DetectorNumber_itr = DetectorNumberHitMap->GetMap()->begin(); + for (G4int h = 0 ; h < sizeN ; h++) { + G4int NTrackID = DetectorNumber_itr->first ; + G4double Nl = *(DetectorNumber_itr->second) ; + + if (NTrackID == ETrackID) { + N = Nl ; + ms_Event->SetGPDTrkFirstStageFrontEDetectorNbr(INDEX + N); + ms_Event->SetGPDTrkFirstStageFrontTDetectorNbr(INDEX + N); + ms_Event->SetGPDTrkFirstStageBackEDetectorNbr(INDEX + N); + ms_Event->SetGPDTrkFirstStageBackTDetectorNbr(INDEX + N); + } + DetectorNumber_itr++; + } + + // Time + Time_itr = TimeHitMap->GetMap()->begin(); + for (G4int h = 0 ; h < sizeT ; h++) { + G4int TTrackID = Time_itr->first ; + G4double T = *(Time_itr->second) ; + + if (TTrackID == ETrackID) { + T = RandGauss::shoot(T, ResoTimeGpd) ; + ms_Event->SetGPDTrkFirstStageFrontTTime(RandGauss::shoot(T, ResoTimeGpd)) ; + ms_Event->SetGPDTrkFirstStageBackTTime(RandGauss::shoot(T, ResoTimeGpd)) ; + } + Time_itr++; + } + + // X + X_itr = XHitMap->GetMap()->begin(); + for (G4int h = 0 ; h < sizeX ; h++) { + G4int XTrackID = X_itr->first ; + G4double X = *(X_itr->second) ; + if (XTrackID == ETrackID) { + ms_Event->SetGPDTrkFirstStageFrontEStripNbr(X) ; + ms_Event->SetGPDTrkFirstStageFrontTStripNbr(X) ; + } + + X_itr++; + } + + // Y + Y_itr = YHitMap->GetMap()->begin() ; + for (G4int h = 0 ; h < sizeY ; h++) { + G4int YTrackID = Y_itr->first ; + G4double Y = *(Y_itr->second) ; + if (YTrackID == ETrackID) { + ms_Event->SetGPDTrkFirstStageBackEStripNbr(Y) ; + ms_Event->SetGPDTrkFirstStageBackTStripNbr(Y) ; + } + + Y_itr++; + } + + // Pos X + Pos_X_itr = PosXHitMap->GetMap()->begin(); + for (G4int h = 0 ; h < sizeX ; h++) { + G4int PosXTrackID = Pos_X_itr->first ; + G4double PosX = *(Pos_X_itr->second) ; + if (PosXTrackID == ETrackID) { + ms_InterCoord->SetDetectedPositionX(PosX) ; + } + Pos_X_itr++; + } + + // Pos Y + Pos_Y_itr = PosYHitMap->GetMap()->begin(); + for (G4int h = 0 ; h < sizeX ; h++) { + G4int PosYTrackID = Pos_Y_itr->first ; + G4double PosY = *(Pos_Y_itr->second) ; + if (PosYTrackID == ETrackID) { + ms_InterCoord->SetDetectedPositionY(PosY) ; + } + Pos_Y_itr++; + } + + // Pos Z + Pos_Z_itr = PosZHitMap->GetMap()->begin(); + for (G4int h = 0 ; h < sizeX ; h++) { + G4int PosZTrackID = Pos_Z_itr->first ; + G4double PosZ = *(Pos_Z_itr->second) ; + if (PosZTrackID == ETrackID) { + ms_InterCoord->SetDetectedPositionZ(PosZ) ; + } + Pos_Z_itr++; + } + + // Angle Theta + Ang_Theta_itr = AngThetaHitMap->GetMap()->begin(); + for (G4int h = 0 ; h < sizeX ; h++) { + G4int AngThetaTrackID = Ang_Theta_itr->first ; + G4double AngTheta = *(Ang_Theta_itr->second) ; + if (AngThetaTrackID == ETrackID) { + ms_InterCoord->SetDetectedAngleTheta(AngTheta) ; + } + Ang_Theta_itr++; + } + + // Angle Phi + Ang_Phi_itr = AngPhiHitMap->GetMap()->begin(); + for (G4int h = 0 ; h < sizeX ; h++) { + G4int AngPhiTrackID = Ang_Phi_itr->first ; + G4double AngPhi = *(Ang_Phi_itr->second) ; + if (AngPhiTrackID == ETrackID) { + ms_InterCoord->SetDetectedAnglePhi(AngPhi) ; + } + Ang_Phi_itr++; + } + + // Second Stage + SiLiEnergy_itr = SiLiEnergyHitMap->GetMap()->begin() ; + for (G4int h = 0 ; h < SiLiEnergyHitMap->entries() ; h++) { + G4int SiLiEnergyTrackID = SiLiEnergy_itr->first ; + G4double SiLiEnergy = *(SiLiEnergy_itr->second) ; + + if (SiLiEnergyTrackID == ETrackID) { + ms_Event->SetGPDTrkSecondStageEEnergy(RandGauss::shoot(SiLiEnergy, ResoSecondStage)) ; + ms_Event->SetGPDTrkSecondStageEPadNbr(1); + ms_Event->SetGPDTrkSecondStageTPadNbr(1); + ms_Event->SetGPDTrkSecondStageTTime(1); + ms_Event->SetGPDTrkSecondStageTDetectorNbr(INDEX + N); + ms_Event->SetGPDTrkSecondStageEDetectorNbr(INDEX + N); + } + + SiLiEnergy_itr++; + } + + // Third Stage + ThirdStageEnergy_itr = ThirdStageEnergyHitMap->GetMap()->begin() ; + for (G4int h = 0 ; h < ThirdStageEnergyHitMap->entries() ; h++) { + G4int ThirdStageEnergyTrackID = ThirdStageEnergy_itr->first ; + G4double ThirdStageEnergy = *(ThirdStageEnergy_itr->second) ; + + if (ThirdStageEnergyTrackID == ETrackID) { + ms_Event->SetGPDTrkThirdStageEEnergy(RandGauss::shoot(ThirdStageEnergy, ResoThirdStage)); + ms_Event->SetGPDTrkThirdStageEPadNbr(1); + ms_Event->SetGPDTrkThirdStageTPadNbr(1); + ms_Event->SetGPDTrkThirdStageTTime(1); + ms_Event->SetGPDTrkThirdStageTDetectorNbr(INDEX + N); + ms_Event->SetGPDTrkThirdStageEDetectorNbr(INDEX + N); + } + + ThirdStageEnergy_itr++; + } + + Energy_itr++; + if (checkSi) HitNumber++ ; + } + // clear map for next event + DetectorNumberHitMap ->clear(); + EnergyHitMap ->clear() ; + TimeHitMap ->clear() ; + XHitMap ->clear() ; + YHitMap ->clear() ; + PosXHitMap ->clear(); + PosYHitMap ->clear(); + PosZHitMap ->clear(); + AngThetaHitMap ->clear(); + AngPhiHitMap ->clear(); + SiLiEnergyHitMap ->clear() ; + ThirdStageEnergyHitMap ->clear() ; + } +} + + + +void GaspardTrackerDummyShape::InitializeScorers() +{ + // First stage Associate Scorer + m_FirstStageScorer = new G4MultiFunctionalDetector("FirstStageScorerGPDDummyShape"); + G4VPrimitiveScorer* DetNbr = new GPDScorerDetectorNumber("DetectorNumber", 0, "FirstStage"); + G4VPrimitiveScorer* Energy = new GPDScorerFirstStageEnergy("StripEnergy", 0); + G4VPrimitiveScorer* TOF = new PSTOF("StripTime", 0); + G4VPrimitiveScorer* StripPositionX = new GPDScorerFirstStageFrontStripDummyShape("StripIDFront", 0, FirstStageFace, 128); + G4VPrimitiveScorer* StripPositionY = new GPDScorerFirstStageBackStripDummyShape("StripIDBack", 0, FirstStageFace, 128); + G4VPrimitiveScorer* InteractionCoordinatesX = new PSInteractionCoordinatesX("InterCoordX", 0); + G4VPrimitiveScorer* InteractionCoordinatesY = new PSInteractionCoordinatesY("InterCoordY", 0); + G4VPrimitiveScorer* InteractionCoordinatesZ = new PSInteractionCoordinatesZ("InterCoordZ", 0); + G4VPrimitiveScorer* InteractionCoordinatesAngleTheta = new PSInteractionCoordinatesAngleTheta("InterCoordAngTheta", 0); + G4VPrimitiveScorer* InteractionCoordinatesAnglePhi = new PSInteractionCoordinatesAnglePhi("InterCoordAngPhi", 0); + + //and register it to the multifunctionnal detector + m_FirstStageScorer->RegisterPrimitive(DetNbr); + m_FirstStageScorer->RegisterPrimitive(Energy); + m_FirstStageScorer->RegisterPrimitive(TOF); + m_FirstStageScorer->RegisterPrimitive(StripPositionX); + m_FirstStageScorer->RegisterPrimitive(StripPositionY); + m_FirstStageScorer->RegisterPrimitive(InteractionCoordinatesX); + m_FirstStageScorer->RegisterPrimitive(InteractionCoordinatesY); + m_FirstStageScorer->RegisterPrimitive(InteractionCoordinatesZ); + m_FirstStageScorer->RegisterPrimitive(InteractionCoordinatesAngleTheta); + m_FirstStageScorer->RegisterPrimitive(InteractionCoordinatesAnglePhi); + + // Second stage Associate Scorer + m_SecondStageScorer = new G4MultiFunctionalDetector("SecondStageScorerGPDDummyShape"); + G4VPrimitiveScorer* SecondStageEnergy = new GPDScorerSecondStageEnergy("SecondStageEnergy", 0); + m_SecondStageScorer->RegisterPrimitive(SecondStageEnergy); + + // Third stage Associate Scorer + m_ThirdStageScorer = new G4MultiFunctionalDetector("ThirdStageScorerGPDDummyShape"); + G4VPrimitiveScorer* ThirdStageEnergy = new GPDScorerThirdStageEnergy("ThirdStageEnergy", 0); + m_ThirdStageScorer->RegisterPrimitive(ThirdStageEnergy); + + // Add All Scorer to the Global Scorer Manager + G4SDManager::GetSDMpointer()->AddNewDetector(m_FirstStageScorer); + G4SDManager::GetSDMpointer()->AddNewDetector(m_SecondStageScorer); + G4SDManager::GetSDMpointer()->AddNewDetector(m_ThirdStageScorer); +} -- GitLab