ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
ECCE @ EIC Software
Deprecated List
Modules
Namespaces
Classes
Files
File List
acts
analysis
coresoftware
blob
master
calibrations
generators
offline
simulation
g4simulation
EICPhysicsList
g4bbc
g4calo
g4centrality
g4decayer
g4detectors
g4epd
g4eval
g4gdml
g4histos
g4intt
g4jets
g4main
EicEventHeader.cc
EicEventHeader.h
EicEventHeaderLinkDef.h
EicEventHeaderv1.cc
EicEventHeaderv1.h
EicEventHeaderv1LinkDef.h
Fun4AllDstPileupInputManager.cc
Fun4AllDstPileupInputManager.h
Fun4AllDstPileupMerger.cc
Fun4AllDstPileupMerger.h
Fun4AllMessenger.cc
Fun4AllMessenger.h
Fun4AllSingleDstPileupInputManager.cc
Fun4AllSingleDstPileupInputManager.h
G4TBFieldMessenger.cc
G4TBFieldMessenger.hh
G4TBMagneticFieldSetup.cc
G4TBMagneticFieldSetup.hh
HepMCCompress.cc
HepMCCompress.h
HepMCNodeReader.cc
HepMCNodeReader.h
PHBBox.h
PHG4ColorDefs.h
PHG4ConsistencyCheck.cc
PHG4ConsistencyCheck.h
PHG4Detector.cc
PHG4Detector.h
PHG4DisplayAction.cc
PHG4DisplayAction.h
PHG4EtaParameterization.cc
PHG4EtaParameterization.h
PHG4EtaPhiParameterization.cc
PHG4EtaPhiParameterization.h
PHG4EventAction.h
PHG4EventHeader.h
PHG4EventHeaderLinkDef.h
PHG4EventHeaderv1.cc
PHG4EventHeaderv1.h
PHG4EventHeaderv1LinkDef.h
PHG4HeadReco.cc
PHG4HeadReco.h
PHG4Hit.cc
PHG4Hit.h
PHG4HitContainer.cc
PHG4HitContainer.h
PHG4HitContainerLinkDef.h
PHG4HitDefs.cc
PHG4HitDefs.h
PHG4HitEval.cc
PHG4HitEval.h
PHG4HitEvalLinkDef.h
PHG4HitLinkDef.h
PHG4HitReadBack.cc
PHG4HitReadBack.h
PHG4Hitv1.cc
PHG4Hitv1.h
PHG4Hitv1LinkDef.h
PHG4InEvent.cc
PHG4InEvent.h
PHG4InEventCompress.cc
PHG4InEventCompress.h
PHG4InEventLinkDef.h
PHG4InEventReadBack.cc
PHG4InEventReadBack.h
PHG4InputFilter.cc
PHG4InputFilter.h
PHG4IonGun.cc
PHG4IonGun.h
PHG4MagneticField.cc
PHG4MagneticField.h
PHG4Particle.cc
PHG4Particle.h
PHG4ParticleGenerator.cc
PHG4ParticleGenerator.h
PHG4ParticleGeneratorBase.cc
PHG4ParticleGeneratorBase.h
PHG4ParticleGeneratorD0.cc
PHG4ParticleGeneratorD0.h
PHG4ParticleGeneratorVectorMeson.cc
PHG4ParticleGeneratorVectorMeson.h
PHG4ParticleGun.cc
PHG4ParticleGun.h
PHG4ParticleLinkDef.h
PHG4Particlev1.cc
PHG4Particlev1.h
PHG4Particlev1LinkDef.h
PHG4Particlev2.cc
PHG4Particlev2.h
PHG4Particlev2LinkDef.h
PHG4Particlev3.cc
PHG4Particlev3.h
PHG4Particlev3LinkDef.h
PHG4PhenixDetector.cc
PHG4PhenixDetector.h
PHG4PhenixDisplayAction.cc
PHG4PhenixDisplayAction.h
PHG4PhenixEventAction.cc
PHG4PhenixEventAction.h
PHG4PhenixStackingAction.cc
PHG4PhenixStackingAction.h
PHG4PhenixSteppingAction.cc
PHG4PhenixSteppingAction.h
PHG4PhenixTrackingAction.cc
PHG4PhenixTrackingAction.h
PHG4PileupGenerator.cc
PHG4PileupGenerator.h
PHG4PrimaryGeneratorAction.cc
PHG4PrimaryGeneratorAction.h
PHG4Reco.cc
PHG4Reco.h
PHG4RegionInformation.cc
PHG4RegionInformation.h
PHG4ScoringManager.cc
PHG4ScoringManager.h
PHG4Shower.cc
PHG4Shower.h
PHG4ShowerLinkDef.h
PHG4Showerv1.cc
PHG4Showerv1.h
PHG4Showerv1LinkDef.h
PHG4SimpleEventGenerator.cc
PHG4SimpleEventGenerator.h
PHG4StackingAction.cc
PHG4StackingAction.h
PHG4SteppingAction.cc
PHG4SteppingAction.h
PHG4Subsystem.cc
PHG4Subsystem.h
PHG4TrackingAction.h
PHG4TrackUserInfoV1.cc
PHG4TrackUserInfoV1.h
PHG4TruthEventAction.cc
PHG4TruthEventAction.h
PHG4TruthInfoContainer.cc
PHG4TruthInfoContainer.h
PHG4TruthInfoContainerLinkDef.h
PHG4TruthSubsystem.cc
PHG4TruthSubsystem.h
PHG4TruthTrackingAction.cc
PHG4TruthTrackingAction.h
PHG4UIsession.cc
PHG4UIsession.h
PHG4Units.h
PHG4UserPrimaryParticleInformation.h
PHG4Utils.cc
PHG4Utils.h
PHG4VertexSelection.cc
PHG4VertexSelection.h
PHG4VtxPoint.cc
PHG4VtxPoint.h
PHG4VtxPointLinkDef.h
PHG4VtxPointv1.cc
PHG4VtxPointv1.h
PHG4VtxPointv1LinkDef.h
ReadEICFiles.cc
ReadEICFiles.h
g4micromegas
g4mvtx
g4tpc
g4trackfastsim
g4vertex
tpcresponse
Doxygen_Assist
ecce-detectors
fun4all_eicdetectors
geant4
macros
online_distribution
tutorials
doxygen_mainpage.h
File Members
External Links
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
PHG4EtaPhiParameterization.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file PHG4EtaPhiParameterization.h
1
// Tell emacs that this is a C++ source
2
// -*- C++ -*-.
3
#ifndef G4MAIN_PHG4ETAPHIPARAMETERIZATION_H
4
#define G4MAIN_PHG4ETAPHIPARAMETERIZATION_H
5
6
#include <Geant4/G4Types.hh>
// for G4int
7
#include <Geant4/G4VPVParameterisation.hh>
8
9
#include <iostream>
// for cout, ostream
10
#include <vector>
11
12
class
G4Tubs
;
13
class
G4VPhysicalVolume
;
14
15
// Parameterization to define rings whose size changes with Z to
16
// correspond to fixed width in eta.
17
18
class
PHG4EtaPhiParameterization
:
public
G4VPVParameterisation
19
{
20
public
:
21
22
PHG4EtaPhiParameterization
(
23
unsigned
int
neta,
// Binning in eta
24
double
minEta,
// "
25
double
maxEta,
// "
26
unsigned
int
nphi,
27
double
startPhi,
28
double
deltaPhi,
29
double
radiusIn,
// Radius of inner face of cylinder
30
double
radiusOut,
// Radius of outer face of cylinder
31
double
centerZ
// overall Z of center of rings
32
);
33
34
~PHG4EtaPhiParameterization
()
override
;
35
36
virtual
void
Print
(std::ostream& os = std::cout)
const
;
37
38
void
ComputeTransformation
(
const
G4int
copyNo,
39
G4VPhysicalVolume
* physVol)
const override
;
40
41
void
ComputeDimensions
(
G4Tubs
& ring,
const
G4int
copyNo,
42
const
G4VPhysicalVolume
* physVol)
const override
;
43
44
int
GetIEta
(
int
copyNo)
const
{
return
_ieta
.at(copyNo); }
45
int
GetIPhi
(
int
copyNo)
const
{
return
_iphi
.at(copyNo); }
46
47
private
:
// Dummy declarations to get rid of warnings ...
48
49
// void ComputeDimensions(G4Trd&,const G4int,const G4VPhysicalVolume*) const {}
50
// void ComputeDimensions(G4Trap&,const G4int,const G4VPhysicalVolume*) const {}
51
// void ComputeDimensions(G4Cons&,const G4int,const G4VPhysicalVolume*) const {}
52
// void ComputeDimensions(G4Sphere&,const G4int,const G4VPhysicalVolume*) const {}
53
// void ComputeDimensions(G4Orb&,const G4int,const G4VPhysicalVolume*) const {}
54
// void ComputeDimensions(G4Torus&,const G4int,const G4VPhysicalVolume*) const {}
55
// void ComputeDimensions(G4Para&,const G4int,const G4VPhysicalVolume*) const {}
56
// void ComputeDimensions(G4Hype&,const G4int,const G4VPhysicalVolume*) const {}
57
// void ComputeDimensions(G4Box&,const G4int,const G4VPhysicalVolume*) const {}
58
// void ComputeDimensions(G4Polycone&,const G4int,const G4VPhysicalVolume*) const {}
59
// void ComputeDimensions(G4Polyhedra&,const G4int,const G4VPhysicalVolume*) const {}
60
61
private
:
62
63
unsigned
int
_neta
;
64
double
_minEta
;
65
double
_maxEta
;
66
unsigned
int
_nphi
;
67
double
_startPhi
;
68
double
_deltaPhi
;
69
double
_radiusIn
;
70
double
_radiusOut
;
71
double
_centerZ
;
72
std::vector<double>
_zpos
;
// Z positions of the rings
73
std::vector<double>
_zhalf
;
// Z half-widths of the rings
74
std::vector<double>
_phi0
;
// Lower edge of phi bins
75
std::vector<double>
_phi1
;
// Upper edge of phi bins
76
std::vector<int>
_ieta
;
77
std::vector<int>
_iphi
;
78
};
79
80
81
#endif
coresoftware
blob
master
simulation
g4simulation
g4main
PHG4EtaPhiParameterization.h
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:24:43
using
1.8.2 with
ECCE GitHub integration