Version:
[ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]
1 -------------------------------------------------------------------
2
3 ==================================================
4 Geant4 - an Object-Oriented Toolkit for Simulation
5 ==================================================
6
7 OpNovice2
8 ---------
9
10 Investigate optical properties and parameters. Details of optical
11 photon boundary interactions on a surface are recorded. Details
12 of optical photon generation and transport are recorded. Group velocity
13 may be examined.
14
15
16 1- GEOMETRY DEFINITION
17
18 The geometry consists of a cube "box" with a side of 2 m inside
19 the world cube of side 20 m. Optical properties of the box, the world,
20 and the surface may be set interactively via the commands defined
21 in the DetectorMessenger class.
22
23 Material properties may be added using the macro commands:
24 # for the box:
25 /opnovice2/boxProperty NAME EN1 V1 EN2 V2 [ .. ENn Vn]
26 /opnovice2/boxConstProperty NAME VALUE
27 # for the world:
28 /opnovice2/worldProperty NAME EN1 V1 EN2 V2 [ .. ENn Vn]
29 /opnovice2/worldConstProperty NAME VALUE
30 # for the surface:
31 /opnovice2/surfaceProperty NAME EN1 V1 EN2 V2 [ .. ENn Vn]
32
33 Multiple energy and value pairs may be specified for the energy-dependent
34 properties.
35
36 Values are in Geant4 internal units. Energy is in MeV.
37
38 Example:
39 /opnovice2/boxProperty RINDEX 0.000002 1.3 0.000005 1.32 0.000008 1.34
40 sets the refractive index of the box to 1.3 at 2 eV, 1.32 at 5 eV, and
41 1.34 at 8 eV.
42
43 2- PHYSICS LIST
44
45 The FTFP_BERT physics list is used, with electromagnetic option
46 EMZ (option4) and G4OpticalPhysics for the optical physics.
47
48 3- AN EVENT : THE PRIMARY GENERATOR
49
50 The primary kinematic consists of a single particle. The type of
51 the particle, its energy, position, and direction, are set
52 in the PrimaryGeneratorAction class, and can be changed via the G4
53 build-in commands of G4ParticleGun class (see the macros provided with
54 this example).
55
56 4- VISUALIZATION
57
58 The Visualization Manager is set in the main().
59 The initialisation of the drawing is done via the commands
60 /vis/... in the macro vis.mac. To get visualisation:
61 > /control/execute vis.mac
62 or run the program with no command line arguments:
63 $ ./OpNovice2
64
65 5- HOW TO START ?
66
67 - Execute OpNovice2 in 'batch' mode from macro files
68 % OpNovice2 electron.mac
69
70 - Execute OpNovice2 in 'interactive mode' with visualization
71 % OpNovice2
72 ....
73 Idle> type your commands
74 ....
75 Idle> exit
76
77 6- RESULTS
78
79 A table of optical photon events is printed at the end of the run.
80 Group velocity is printed with /tracking/verbose 1 or higher.
81
82 7- HISTOGRAMS
83
84 OpNovice2 has several predefined 1D histograms :
85 1 : Cerenkov spectrum
86 2 : scintillation spectrum
87 3 : scintillation time (global time)
88 4 : WLS absorption spectrum
89 5 : WLS emission spectrum
90 6 : WLS emission time
91 7 : WLS2 absorption spectrum
92 8 : WLS2 emission spectrum
93 9 : WLS2 emission time
94 10 : boundary process status
95 11 : X momentum dir of scattered photons with px < 0
96 12 : Y momentum dir of scattered photons with px < 0
97 13 : Z momentum dir of scattered photons with px < 0
98 14 : X momentum dir of scattered photons with px >= 0
99 15 : Y momentum dir of scattered photons with px >= 0
100 16 : Z momentum dir of scattered photons with px >= 0
101 17 : X momentum dir of Fresnel-refracted photons
102 18 : Y momentum dir of Fresnel-refracted photons
103 19 : Z momentum dir of Fresnel-refracted photons
104 20 : fraction of photons refracted (i.e. Fresnel transmission)
105 21 : fraction of photons Fresnel-reflected
106 22 : fraction of photons total internal reflected (TIR)
107 23 : fraction of photons reflected (Fresnel reflection plus TIR)
108 24 : fraction of photons absorbed at surface
109 25 : fraction of photons "transmitted" (i.e. TRANSMITTANCE material property)
110 26 : fraction of photons spike-reflected
111
112 Histograms 11-26 are recorded for photons scattered from the +X
113 surface of the cube. Only the first interaction is recorded.
114
115 The histograms are managed by G4Analysis classes.
116 The histos can be individually activated with the command:
117 /analysis/h1/set id nbBins valMin valMax
118 The unit is hardcoded to be eV for energy and ns for time.
119
120 One can control the name of the histograms file with the command:
121 /analysis/setFileName name (default opnovice2)
122
123 It is possible to choose the format of the histogram file : root (default),
124 hdf5, xml, csv, by changing the default file type in HistoManager.cc
125
126 It is also possible to print selected histograms on an ascii file:
127 /analysis/h1/setAscii id
128 All selected histos will be written on a file name.ascii (default opnovice2)
129
130 8- MACROS
131
132 Several macros are included.
133 - boundary.mac: Set the surface to the various types and configurations of
134 model, type, etc., shoot optical photons, and record statistics.
135 This macro uses the command
136 /opnovice2/stepping/killOnSecondSurface,
137 which kills photon tracks incident on a second surface. This can
138 be useful for visualizing surface scattering.
139 - coated.mac: To show reflection/refraction from thin film coating
140 - electron.mac: Shoot electrons and observe Cerenkov and scintillation radiation
141 - fresnel.mac: Shoot optical photons of fixed polarization and random direction
142 at a surface, and plot reflectance/transmittance vs incident
143 angle.
144 - complexRindex.mac: Use a dielectric-metal surface with a complex index of
145 refraction.
146 - OpNovice2.mac: Shoot an optical photon inside a box.
147 - scint_by_particle.mac: Configure scintillation to have particle-specific
148 yields, yield ratios, and time constants. Shoot different types
149 of particles.
150 - vis.mac: Configure visualization. The macro command
151 /opnovice2/stepping/killOnSecondSurface, which kills photon
152 tracks incident on a second surface, may be useful for
153 visualizing surface scattering.
154 - wls.mac: Configure two wavelength-shifting processes, and shoot optical
155 photons.