Geant4
11.2.2
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4gspart.cc
Go to the documentation of this file.
1
//
2
// ********************************************************************
3
// * License and Disclaimer *
4
// * *
5
// * The Geant4 software is copyright of the Copyright Holders of *
6
// * the Geant4 Collaboration. It is provided under the terms and *
7
// * conditions of the Geant4 Software License, included in the file *
8
// * LICENSE and available at http://cern.ch/geant4/license . These *
9
// * include a list of copyright holders. *
10
// * *
11
// * Neither the authors of this software system, nor their employing *
12
// * institutes,nor the agencies providing financial support for this *
13
// * work make any representation or warranty, express or implied, *
14
// * regarding this software system or assume any liability for its *
15
// * use. Please see the license in the file LICENSE and URL above *
16
// * for the full disclaimer and the limitation of liability. *
17
// * *
18
// * This code implementation is the result of the scientific and *
19
// * technical work of the GEANT4 collaboration. *
20
// * By using, copying, modifying or distributing the software (or *
21
// * any work based on the software) you agree to acknowledge its *
22
// * use in resulting scientific publications, and indicate your *
23
// * acceptance of all terms of the Geant4 Software license. *
24
// ********************************************************************
25
//
26
//
27
//
28
#include "
G4ProcessManager.hh
"
29
#include "
G3toG4.hh
"
30
#include "
G3PartTable.hh
"
31
32
void
PG4gspart
(
G4String
*tokens)
33
{
34
// fill the parameter containers
35
G3fillParams
(tokens,
PTgspart
);
36
37
// interpret the parameters
38
G4String
chnpar =
Spar
[0];
39
G4int
ipart =
Ipar
[0];
40
G4int
itrtyp =
Ipar
[1];
41
G4int
nwb =
Ipar
[2];
42
G4double
amass =
Rpar
[0];
43
G4double
charge =
Rpar
[1];
44
G4double
tlife =
Rpar
[2];
45
G4double
*ubuf = &
Rpar
[3];
46
47
G4gspart
(ipart,chnpar,itrtyp,amass,charge,tlife,ubuf,nwb);
48
}
49
50
void
G4gspart
(
G4int
,
G4String
,
G4int
,
G4double
,
51
G4double
,
G4double
,
G4double
*,
G4int
)
52
{
53
}
54
55
#ifdef OMIT_CODE
56
void
G4gspart
(
G4int
ipart,
G4String
chnpar,
G4int
itrtyp,
G4double
amass,
57
G4double
charge,
G4double
tlife,
G4double
*,
G4int
)
58
{
59
// Handle conversion of itrtyp into an appropriate ProcessManager
60
G4ProcessManager
*mgr = 0;
61
switch
(itrtyp) {
62
case
1:
63
// gamma
64
// $$$ mgr = gammaProcessManager;
65
break
;
66
case
2:
67
// electron
68
// $$$ mgr = electronProcessManager;
69
break
;
70
case
3:
71
// neutron
72
// $$$ mgr = neutronProcessManager;
73
break
;
74
case
4:
75
// hadron
76
// $$$ mgr = hadronProcessManager;
77
break
;
78
case
5:
79
// muon
80
// $$$ mgr = muonProcessManager;
81
break
;
82
case
6:
83
// geantino
84
// $$$ mgr = geantinoProcessManager;
85
break
;
86
case
7:
87
// heavy ion
88
// $$$ mgr = heavyIonProcessManager;
89
break
;
90
case
8:
91
// light ion
92
// $$$ mgr = lightIonProcessManager;
93
break
;
94
default
:
95
// $$$ mgr = theProcessManager;
96
break
;
97
}
98
99
// Create the particle; provide parameters and a process mgr.
100
G4ParticleDefinition
*part =
new
G4ParticleDefinition
(chnpar);
101
part->
SetProcessManager
(mgr);
102
part->SetPDGMass(amass);
103
part->SetPDGCharge(charge);
104
part->
SetPDGLifeTime
(tlife);
105
106
// add to particle table
107
G3Part
.put(&ipart, part);
108
}
109
#endif
G3PartTable.hh
G3Part
G3G4DLL_API G3PartTable G3Part
Definition
clparse.cc:57
G3toG4.hh
Ipar
G3G4DLL_API G4int Ipar[1000]
Definition
clparse.cc:65
G3fillParams
void G3fillParams(G4String *tokens, const char *ptypes)
Definition
clparse.cc:216
Rpar
G3G4DLL_API G4double Rpar[1000]
Definition
clparse.cc:66
Spar
G3G4DLL_API G4String Spar[1000]
Definition
clparse.cc:67
PTgspart
#define PTgspart
Definition
G3toG4.hh:66
G4ProcessManager.hh
G4double
double G4double
Definition
G4Types.hh:83
G4int
int G4int
Definition
G4Types.hh:85
G4gspart
void G4gspart(G4int, G4String, G4int, G4double, G4double, G4double, G4double *, G4int)
Definition
G4gspart.cc:50
PG4gspart
void PG4gspart(G4String *tokens)
Definition
G4gspart.cc:32
G4ParticleDefinition
Definition
G4ParticleDefinition.hh:62
G4ParticleDefinition::SetPDGLifeTime
void SetPDGLifeTime(G4double aLifeTime)
Definition
G4ParticleDefinition.hh:139
G4ParticleDefinition::SetProcessManager
void SetProcessManager(G4ProcessManager *aProcessManager)
Definition
G4ParticleDefinition.cc:406
G4ProcessManager
Definition
G4ProcessManager.hh:95
G4String
Definition
G4String.hh:62
geant4-v11.2.2
source
g3tog4
src
G4gspart.cc
Generated by
1.12.0