Analysis Software
Documentation for
sPHENIX
simulation software
Home page
Related Pages
Modules
Namespaces
Classes
Files
Examples
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
PHG4OuterHcalField.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file PHG4OuterHcalField.h
1
// Tell emacs that this is a C++ source
2
// -*- C++ -*-.
3
// $Id: $
4
13
#ifndef G4DETECTORS_PHG4OUTERHCALFIELD_H
14
#define G4DETECTORS_PHG4OUTERHCALFIELD_H
15
16
#include <Geant4/G4MagneticField.hh>
17
#include <Geant4/G4Types.hh>
// for G4double, G4int
18
31
class
PHG4OuterHcalField
:
public
G4MagneticField
32
{
33
public
:
34
PHG4OuterHcalField
() =
delete
;
35
36
PHG4OuterHcalField
(
bool
isInIron, G4int steelPlates,
37
G4double scintiGap, G4double tiltAngle);
38
39
~PHG4OuterHcalField
()
override
{}
40
41
void
42
GetFieldValue
(
const
double
Point[4],
double
*Bfield)
const override
;
43
44
bool
45
is_is_in_iron
()
const
46
{
47
return
is_in_iron
;
48
}
49
50
void
51
set_is_in_iron
(
bool
isInIron)
52
{
53
is_in_iron
= isInIron;
54
}
55
56
G4int
57
get_steel_plates
()
const
58
{
59
return
n_steel_plates
;
60
}
61
62
void
63
set_steel_plates
(G4int steelPlates)
64
{
65
n_steel_plates
= steelPlates;
66
}
67
68
double
69
get_relative_permeability_absorber
()
const
70
{
71
return
relative_permeability_absorber
;
72
}
73
74
void
75
set_relative_permeability_absorber
(
double
relativePermeabilityAbsorber)
76
{
77
relative_permeability_absorber
= relativePermeabilityAbsorber;
78
}
79
80
double
81
get_relative_permeability_gap
()
const
82
{
83
return
relative_permeability_gap
;
84
}
85
86
void
87
set_relative_permeability_gap
(
double
relativePermeabilityGap)
88
{
89
relative_permeability_gap
= relativePermeabilityGap;
90
}
91
92
G4double
93
get_scinti_gap
()
const
94
{
95
return
scinti_gap
;
96
}
97
98
void
99
set_scinti_gap
(G4double scintiGap)
100
{
101
scinti_gap
= scintiGap;
102
}
103
104
G4double
105
get_tilt_angle
()
const
106
{
107
return
tilt_angle
;
108
}
109
110
void
111
set_tilt_angle
(G4double tiltAngle)
112
{
113
tilt_angle
= tiltAngle;
114
}
115
116
private
:
117
double
relative_permeability_absorber
= 1514.;
118
// relative permeability for Steel 1006 @ B = 1.06T
119
double
relative_permeability_gap
= 1;
120
121
bool
is_in_iron
;
122
G4int
n_steel_plates
;
123
G4double
scinti_gap
;
124
G4double
tilt_angle
;
125
};
126
127
#endif
/* G4DETECTORS_PHG4OUTERHCALFIELD_H */
coresoftware
blob
master
simulation
g4simulation
g4detectors
PHG4OuterHcalField.h
Built by
Jin Huang
. updated:
Sat Feb 17 2024 22:18:13
using
1.8.2 with
sPHENIX GitHub integration