ATLAS Offline Software
Loading...
Searching...
No Matches
CustomMonopole.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//---------------------------------------------------------------------------
6//
7// ClassName: CustomMonopole
8//
9// Description:
10//
11// Authors: 21.03.05 V.Ivanchenko
12//
13// Modified:
14//
15//----------------------------------------------------------------------------
16//
17
18//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
19//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
20
21// class header
22#include "CustomMonopole.h"
23// Geant4 headers
24#include "G4ParticleTable.hh"
25// CLHEP headers
26#include "CLHEP/Units/SystemOfUnits.h"
27
28// ######################################################################
29// ### Monopole ###
30// ######################################################################
31
32// CustomMonopole* CustomMonopole::theMonopole = 0;
33// G4double CustomMonopole::magCharge = 0.0;
34
36 const G4String& aName, G4double mass,
37 G4double width, G4double charge,
38 G4int iSpin, G4int iParity,
39 G4int iConjugation, G4int iIsospin,
40 G4int iIsospin3, G4int gParity,
41 const G4String& pType, G4int lepton,
42 G4int baryon, G4int encoding,
43 G4bool stable, G4double lifetime,
44 G4DecayTable *decaytable)
45 : G4ParticleDefinition( aName,mass,width,charge,iSpin,iParity,
46 iConjugation,iIsospin,iIsospin3,gParity,pType,
47 lepton,baryon,encoding,stable,lifetime,decaytable )
48 , m_magCharge(0.)
49{}
50
51//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
52
55
57{ G4cout << "CustomMonopole Info: m(GeV)= " << this->GetPDGMass()/CLHEP::GeV
58 << " Qel= " << this->GetPDGCharge()/CLHEP::eplus
59 << " Qmag= " << m_magCharge/CLHEP::eplus
60 << G4endl;
61}
62
63
64//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
65//
66// Arguments for constructor are as follows
67// name mass width charge
68// 2*spin parity C-conjugation
69// 2*Isospin 2*Isospin3 G-parity
70// type lepton number baryon number PDG encoding
71// stable lifetime decay table
72//
73//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
74
75// CustomMonopole* CustomMonopole::MonopoleDefinition(
76// const G4String& aName, G4double mass,
77// G4double width, G4double charge,
78// G4int iSpin, G4int iParity,
79// G4int iConjugation, G4int iIsospin,
80// G4int iIsospin3, G4int gParity,
81// const G4String& pType, G4int lepton,
82// G4int baryon, G4int encoding,
83// G4bool stable, G4double lifetime,
84// G4DecayTable *decaytable,
85// G4double mCharge)
86// {
87
88// if(!theMonopole) {
89// m_magCharge = eplus*mCharge*0.5/fine_structure_const;
90// theMonopole = new CustomMonopole( aName,mass,width,charge,iSpin,iParity,
91// iConjugation,iIsospin,iIsospin3,gParity,pType,
92// lepton,baryon,encoding,stable,lifetime,decaytable);
93
94// G4cout << "Monopole is created: m(GeV)= " << theMonopole->GetPDGMass()/GeV
95// << " Qel= " << theMonopole->GetPDGCharge()/eplus
96// << " Qmag= " << m_magCharge/eplus
97// << G4endl;
98// }
99
100// return theMonopole;
101// }
102
103//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
104
105// CustomMonopole* CustomMonopole::Monopole()
106// {
107// if(!theMonopole) theMonopole = MonopoleDefinition();
108// return theMonopole;
109// }
110
111//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
double charge(const T &p)
Definition AtlasPID.h:997
const double width
void PrintMonopoleInfo() const
G4double m_magCharge
CustomMonopole(const G4String &aName, G4double mass, G4double width, G4double charge, G4int iSpin, G4int iParity, G4int iConjugation, G4int iIsospin, G4int iIsospin3, G4int gParity, const G4String &pType, G4int lepton, G4int baryon, G4int encoding, G4bool stable, G4double lifetime, G4DecayTable *decaytable)
virtual ~CustomMonopole()