ATLAS Offline Software
Simulation
G4Extensions
Gauginos
src
GMSBNeutralino.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "src/GMSBNeutralino.hh"
6
// ######################################################################
7
// ### Neutralino ###
8
// ######################################################################
9
10
GMSBNeutralino* GMSBNeutralino::s_theInstance = NULL;
11
12
GMSBNeutralino* GMSBNeutralino::Definition(G4double
mass
, G4double
width
, G4double
charge
, G4double
PDG
, G4bool
stable
, G4double lifetime, G4bool shortlived)
13
{
14
15
if
(s_theInstance !=0 && (
mass
>=0. ||
width
>=0. || lifetime>=0.) )
16
{
17
G4ExceptionDescription
description
;
18
description
<<
"Trying to redefine the GMSB Neutralino properties after it has been constructed is not allowed"
;
19
G4Exception(
"GMSBNeutralino"
,
"FailedRedefinition"
, FatalException,
description
);
20
abort();
21
}
22
23
if
(s_theInstance != 0)
24
{
25
return
s_theInstance;
26
}
27
28
// Arguments for constructor are as follows
29
// name mass width charge
30
// 2*spin parity C-conjugation
31
// 2*Isospin 2*Isospin3 G-parity
32
// type lepton number baryon number PDG encoding
33
// stable lifetime decay table
34
// shortlived subType anti_encoding
35
if
(
mass
>= 0.)
36
{
37
38
G4ParticleDefinition* anInstance =
new
G4ParticleDefinition(
"s_chi_0_1"
,
mass
,
width
,
charge
,
39
1, 0, 0,
40
0, 0, 0,
41
"supersymmetric"
, 0, 0,
PDG
,
42
stable
, lifetime, NULL,
43
shortlived,
"Neutralino"
);
44
45
s_theInstance =
reinterpret_cast<
GMSBNeutralino*
>
(anInstance);
46
return
s_theInstance;
47
}
48
else
49
{
50
G4ExceptionDescription
description
;
51
description
<<
"Trying to create a particle with default constructor is not allowed"
;
52
G4Exception(
"GMSBNeutralino"
,
"DefaultConstructorCalled"
, FatalException,
description
);
53
abort();
54
}
55
}
Base_Fragment.mass
mass
Definition:
Sherpa_i/share/common/Base_Fragment.py:59
PDG20
Definition:
Trigger/TrigHypothesis/TrigBphysHypo/src/Constants.h:9
MCTruthPartClassifier::stable
@ stable
Definition:
TruthClassifiers.h:148
charge
double charge(const T &p)
Definition:
AtlasPID.h:756
Base_Fragment.width
width
Definition:
Sherpa_i/share/common/Base_Fragment.py:59
description
std::string description
glabal timer - how long have I taken so far?
Definition:
hcg.cxx:88
Generated on Mon Dec 23 2024 21:11:01 for ATLAS Offline Software by
1.8.18