FDsimG4CorrectorRing.cc
Go to the documentation of this file.
2 #include "FDsimG4Colours.hh"
3 
4 
5 #include "G4SDManager.hh"
6 #include "G4IntersectionSolid.hh"
7 #include "G4Box.hh"
8 #include "G4Polycone.hh"
9 
10 #include "G4Material.hh"
11 #include "G4MaterialTable.hh"
12 #include "G4Tubs.hh"
13 #include "G4Cons.hh"
14 #include "G4LogicalVolume.hh"
15 #include "G4ThreeVector.hh"
16 #include "G4VisAttributes.hh"
17 
18 using namespace TelescopeSimulatorLX ;
19 
20 FDsimG4CorrectorRing::FDsimG4CorrectorRing(G4double rmin, G4double rmax, G4double startPhi, G4double deltaPhi, G4double thick, G4Material* mat, G4int Npoints) : FDsimG4VCorrectorRing(rmin,rmax,startPhi,deltaPhi,thick,mat,Npoints){
21 
22  Init() ;
23 
24 }
25 
26 FDsimG4CorrectorRing::FDsimG4CorrectorRing(G4double startPhi, G4double deltaPhi, G4double thick, G4Material* mat, G4int Npoints) :
27  FDsimG4VCorrectorRing(1700.0*mm/2.0,2200.0*mm/2.,startPhi,deltaPhi,thick,mat,Npoints){
28 
29  Init() ;
30 
31 }
32 FDsimG4CorrectorRing::FDsimG4CorrectorRing(G4double thick, G4Material* mat, G4int Npoints) :
33  FDsimG4VCorrectorRing(1700.0*mm/2.0,2200.0*mm/2.,0.,2.0*pi,thick,mat,Npoints){
34 
35  Init() ;
36 
37 }
38 
39 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
40 
42 
43 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
44 
46 
49 
50  fLogicalVol->SetVisAttributes(new G4VisAttributes(cyan)) ;
51 
52  G4cerr << " ================================================================ " << G4endl ;
53  G4cerr << " = Using Circular Lens Profile " << G4endl ;
54 
55  DumpInfo() ;
56 
57 }
58 
59 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
60 
62 {
63 
64  // Parameters from GAP-2000-003
65 
66  fR = 8383.0*mm ;
67  fy0 = 795.27*mm ;
68  fz0 = 8380.9*mm ;
69 }
70 
71 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
72 
73 G4double FDsimG4CorrectorRing::GetRadius(G4double z){
74 
75  G4double Radius_value = fy0 + std::sqrt(std::pow(fR,2)-pow((fz0-z),2)) ;
76 
77  return Radius_value ;
78 
79 }
80 
81 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
82 
83 G4double FDsimG4CorrectorRing::GetSagita(G4double radius){
84 
85  G4double Sagita_value = fz0 - std::sqrt(std::pow(fR,2)-pow((radius-fy0),2)) ;
86 
87  return Sagita_value ;
88 
89 
90 }
91 
92 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
constexpr double mm
Definition: AugerUnits.h:113
double pow(const double x, const unsigned int i)
static const G4Colour cyan(0.0, 1.0, 1.0)
FDsimG4CorrectorRing(G4double rmin, G4double rmax, G4double minPhi, G4double deltaPhi, G4double Thickness, G4Material *Material, G4int Npoints)

, generated on Tue Sep 26 2023.