Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
SimG4Core
CustomPhysics
src
CMSAntiSIMP.cc
Go to the documentation of this file.
1
2
#include "
SimG4Core/CustomPhysics/interface/CMSAntiSIMP.h
"
3
#include "G4PhysicalConstants.hh"
4
#include "G4SystemOfUnits.hh"
5
#include "G4ParticleTable.hh"
6
7
#include "G4PhaseSpaceDecayChannel.hh"
8
#include "G4DecayTable.hh"
9
10
CMSAntiSIMP
*
CMSAntiSIMP::theInstance
=
nullptr
;
11
12
CMSAntiSIMP
*
CMSAntiSIMP::Definition
(
double
mass
) {
13
if
(
theInstance
!=
nullptr
)
14
return
theInstance
;
15
const
G4String
name
=
"chibar"
;
16
// search in particle table]
17
G4ParticleTable* pTable = G4ParticleTable::GetParticleTable();
18
G4ParticleDefinition* anInstance = pTable->FindParticle(name);
19
if
(anInstance ==
nullptr
) {
20
// create particle
21
//
22
// Arguments for constructor are as follows
23
// name mass width charge
24
// 2*spin parity C-conjugation
25
// 2*Isospin 2*Isospin3 G-parity
26
// type lepton number baryon number PDG encoding
27
// stable lifetime decay table
28
// shortlived subType anti_encoding
29
30
anInstance =
new
G4ParticleDefinition(
31
name, mass, 0, 0.0, 1, +1, 0, 0, -1, 0,
"simp"
, 0, +1, -9000006,
true
, -1.0,
nullptr
,
false
,
"nucleon"
);
32
}
33
theInstance
=
reinterpret_cast<
CMSAntiSIMP
*
>
(anInstance);
34
return
theInstance
;
35
}
36
37
CMSAntiSIMP
*
CMSAntiSIMP::AntiSIMPDefinition
(
double
mass
) {
return
Definition
(mass); }
38
39
CMSAntiSIMP
*
CMSAntiSIMP::AntiSIMP
() {
40
return
Definition
(1 * GeV);
// will use correct mass if instance exists
41
}
mergeVDriftHistosByStation.name
string name
Definition:
mergeVDriftHistosByStation.py:78
CMSAntiSIMP::AntiSIMPDefinition
static CMSAntiSIMP * AntiSIMPDefinition(double mass)
Definition:
CMSAntiSIMP.cc:37
CMSAntiSIMP::AntiSIMP
static CMSAntiSIMP * AntiSIMP()
Definition:
CMSAntiSIMP.cc:39
CMSAntiSIMP.h
CMSAntiSIMP
Definition:
CMSAntiSIMP.h:8
CMSAntiSIMP::Definition
static CMSAntiSIMP * Definition(double mass)
Definition:
CMSAntiSIMP.cc:12
CMSAntiSIMP::theInstance
static CMSAntiSIMP * theInstance
Definition:
CMSAntiSIMP.h:10
ResonanceBuilder.mass
dictionary mass
Definition:
ResonanceBuilder.py:8
Generated for CMSSW Reference Manual by
1.8.5