Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Functions
pymodG4particles.cc File Reference
#include <boost/python.hpp>

Go to the source code of this file.

Functions

void export_G4ParticleDefinition ()
 
void export_G4DynamicParticle ()
 
void export_G4ParticleTable ()
 
void export_G4DecayTable ()
 
void export_G4PrimaryParticle ()
 
void export_G4PrimaryVertex ()
 
void export_PyG4ParticleList ()
 
 BOOST_PYTHON_MODULE (G4particles)
 

Function Documentation

BOOST_PYTHON_MODULE ( G4particles  )
void export_G4DecayTable ( )

Definition at line 40 of file pyG4DecayTable.cc.

References G4DecayTable::DumpInfo().

Referenced by BOOST_PYTHON_MODULE().

41 {
42  class_<G4DecayTable, G4DecayTable*, boost::noncopyable>
43  ("G4DecayTable", "decay table")
44  // ---
45  .def("DumpInfo", &G4DecayTable::DumpInfo)
46  ;
47 
48  // reduced functionality...
49  // ...
50 
51 }
void DumpInfo() const
void export_G4DynamicParticle ( )

Definition at line 42 of file pyG4DynamicParticle.cc.

References G4DynamicParticle::DumpInfo(), G4DynamicParticle::GetCharge(), G4DynamicParticle::GetDefinition(), G4DynamicParticle::GetKineticEnergy(), G4DynamicParticle::GetMass(), G4DynamicParticle::GetMomentum(), G4DynamicParticle::GetMomentumDirection(), G4DynamicParticle::GetOccupancy(), G4DynamicParticle::GetPDGcode(), G4DynamicParticle::GetPolarization(), G4DynamicParticle::GetPreAssignedDecayProperTime(), G4DynamicParticle::GetPrimaryParticle(), G4DynamicParticle::GetProperTime(), G4DynamicParticle::GetTotalEnergy(), G4DynamicParticle::GetTotalMomentum(), G4DynamicParticle::GetTotalOccupancy(), G4DynamicParticle::GetVerboseLevel(), and G4DynamicParticle::SetVerboseLevel().

Referenced by BOOST_PYTHON_MODULE().

43 {
44  class_<G4DynamicParticle, G4DynamicParticle*>
45  ("G4DynamicParticle", "dynamic particle")
46  // ---
47  .def("GetMomentumDirection", &G4DynamicParticle::GetMomentumDirection,
48  return_value_policy<return_by_value>())
49  .def("GetMomentum", &G4DynamicParticle::GetMomentum,
50  return_value_policy<return_by_value>())
51  //.def("Get4Momentum", &G4DynamicParticle::Get4Momentum,
52  //return_value_policy<return_by_value>())
53  .def("GetTotalMomentum", &G4DynamicParticle::GetTotalMomentum)
54  .def("GetTotalEnergy", &G4DynamicParticle::GetTotalEnergy)
55  .def("GetKineticEnergy", &G4DynamicParticle::GetKineticEnergy)
56  .def("GetProperTime", &G4DynamicParticle::GetProperTime)
57  .def("GetPolarization", &G4DynamicParticle::GetPolarization,
58  return_value_policy<return_by_value>())
59  .def("GetMass", &G4DynamicParticle::GetMass)
60  .def("GetCharge", &G4DynamicParticle::GetCharge)
61  //.def("GetElectronOccupancy", &G4DynamicParticle::GetElectronOccupancy,
62  //return_internal_reference<>())
63  .def("GetTotalOccupancy", &G4DynamicParticle::GetTotalOccupancy)
64  .def("GetOccupancy", &G4DynamicParticle::GetOccupancy)
65  .def("GetDefinition", &G4DynamicParticle::GetDefinition,
66  return_internal_reference<>())
67  .def("GetPreAssignedDecayProperTime",
69  .def("DumpInfo", &G4DynamicParticle::DumpInfo)
70  .def("SetVerboseLevel", &G4DynamicParticle::SetVerboseLevel)
71  .def("GetVerboseLevel", &G4DynamicParticle::GetVerboseLevel)
72  .def("GetPrimaryParticle", &G4DynamicParticle::GetPrimaryParticle,
73  return_internal_reference<>())
74  .def("GetPDGcode", &G4DynamicParticle::GetPDGcode)
75  ;
76 }
G4int GetVerboseLevel() const
G4double GetKineticEnergy() const
G4double GetTotalEnergy() const
G4double GetProperTime() const
G4int GetPDGcode() const
void DumpInfo(G4int mode=0) const
G4ParticleDefinition * GetDefinition() const
void SetVerboseLevel(G4int value)
G4double GetTotalMomentum() const
G4int GetOccupancy(G4int orbit) const
G4int GetTotalOccupancy() const
G4double GetMass() const
const G4ThreeVector & GetMomentumDirection() const
G4double GetCharge() const
G4PrimaryParticle * GetPrimaryParticle() const
const G4ThreeVector & GetPolarization() const
G4double GetPreAssignedDecayProperTime() const
G4ThreeVector GetMomentum() const
void export_G4ParticleDefinition ( )

Definition at line 44 of file pyG4ParticleDefinition.cc.

References G4ParticleDefinition::DumpTable(), G4ParticleDefinition::GetAntiPDGEncoding(), G4ParticleDefinition::GetAntiQuarkContent(), G4ParticleDefinition::GetApplyCutsFlag(), G4ParticleDefinition::GetAtomicMass(), G4ParticleDefinition::GetAtomicNumber(), G4ParticleDefinition::GetBaryonNumber(), G4ParticleDefinition::GetDecayTable(), G4ParticleDefinition::GetLeptonNumber(), G4ParticleDefinition::GetParticleName(), G4ParticleDefinition::GetParticleSubType(), G4ParticleDefinition::GetParticleTable(), G4ParticleDefinition::GetParticleType(), G4ParticleDefinition::GetPDGCharge(), G4ParticleDefinition::GetPDGEncoding(), G4ParticleDefinition::GetPDGiConjugation(), G4ParticleDefinition::GetPDGiGParity(), G4ParticleDefinition::GetPDGiIsospin(), G4ParticleDefinition::GetPDGiIsospin3(), G4ParticleDefinition::GetPDGiParity(), G4ParticleDefinition::GetPDGIsospin(), G4ParticleDefinition::GetPDGIsospin3(), G4ParticleDefinition::GetPDGiSpin(), G4ParticleDefinition::GetPDGLifeTime(), G4ParticleDefinition::GetPDGMass(), G4ParticleDefinition::GetPDGSpin(), G4ParticleDefinition::GetPDGStable(), G4ParticleDefinition::GetPDGWidth(), G4ParticleDefinition::GetProcessManager(), G4ParticleDefinition::GetQuarkContent(), G4ParticleDefinition::GetVerboseLevel(), G4ParticleDefinition::IsShortLived(), G4ParticleDefinition::SetApplyCutsFlag(), G4ParticleDefinition::SetDecayTable(), G4ParticleDefinition::SetPDGLifeTime(), G4ParticleDefinition::SetPDGStable(), G4ParticleDefinition::SetProcessManager(), and G4ParticleDefinition::SetVerboseLevel().

Referenced by BOOST_PYTHON_MODULE().

45 {
46  class_<G4ParticleDefinition, G4ParticleDefinition*, boost::noncopyable>
47  ("G4ParticleDefinition", "particle definition", no_init)
48  // ---
49  .def("GetParticleName", &G4ParticleDefinition::GetParticleName,
50  return_value_policy<return_by_value>())
51  .def("GetPDGMass", &G4ParticleDefinition::GetPDGMass)
52  .def("GetPDGWidth", &G4ParticleDefinition::GetPDGWidth)
53  .def("GetPDGCharge", &G4ParticleDefinition::GetPDGCharge)
54  .def("GetPDGSpin", &G4ParticleDefinition::GetPDGSpin)
55  .def("GetPDGiSpin", &G4ParticleDefinition::GetPDGiSpin)
56  .def("GetPDGiParity", &G4ParticleDefinition::GetPDGiParity)
57  .def("GetPDGiConjugation", &G4ParticleDefinition::GetPDGiConjugation)
58  .def("GetPDGIsospin", &G4ParticleDefinition::GetPDGIsospin)
59  .def("GetPDGIsospin3", &G4ParticleDefinition::GetPDGIsospin3)
60  .def("GetPDGiIsospin", &G4ParticleDefinition::GetPDGiIsospin)
61  .def("GetPDGiIsospin3", &G4ParticleDefinition::GetPDGiIsospin3)
62  .def("GetPDGiGParity", &G4ParticleDefinition::GetPDGiGParity)
63  .def("GetParticleType", &G4ParticleDefinition::GetParticleType,
64  return_value_policy<return_by_value>())
65  .def("GetParticleSubType", &G4ParticleDefinition::GetParticleSubType,
66  return_value_policy<return_by_value>())
67  .def("GetLeptonNumber", &G4ParticleDefinition::GetLeptonNumber)
68  .def("GetBaryonNumber", &G4ParticleDefinition::GetBaryonNumber)
69  .def("GetPDGEncoding", &G4ParticleDefinition::GetPDGEncoding)
70  .def("GetAntiPDGEncoding", &G4ParticleDefinition::GetAntiPDGEncoding)
71  .def("GetQuarkContent", &G4ParticleDefinition::GetQuarkContent)
72  .def("GetAntiQuarkContent",&G4ParticleDefinition::GetAntiQuarkContent)
73  .def("IsShortLived", &G4ParticleDefinition::IsShortLived)
74  .def("GetPDGStable", &G4ParticleDefinition::GetPDGStable)
75  .def("SetPDGStable", &G4ParticleDefinition::SetPDGStable)
76  .def("GetPDGLifeTime", &G4ParticleDefinition::GetPDGLifeTime)
77  .def("SetPDGLifeTime", &G4ParticleDefinition::SetPDGLifeTime)
78  .def("GetDecayTable", &G4ParticleDefinition::GetDecayTable,
79  return_internal_reference<>())
80  .def("SetDecayTable", &G4ParticleDefinition::SetDecayTable)
81  .def("GetProcessManager", &G4ParticleDefinition::GetProcessManager,
82  return_internal_reference<>())
83  .def("SetProcessManager", &G4ParticleDefinition::SetProcessManager)
84  // cludge!! (G4ParticleTable object is sigleton!!)
85  .def("GetParticleTable", &G4ParticleDefinition::GetParticleTable,
86  return_value_policy<reference_existing_object>())
87  .def("DumpTable", &G4ParticleDefinition::DumpTable)
88 #if G4VERSION_NUMBER >= 701
89  .def("GetAtomicNumber", &G4ParticleDefinition::GetAtomicNumber)
90  .def("GetAtomicMass", &G4ParticleDefinition::GetAtomicMass)
91 #endif
92  .def("SetVerboseLevel", &G4ParticleDefinition::SetVerboseLevel)
93  .def("GetVerboseLevel", &G4ParticleDefinition::GetVerboseLevel)
94  .def("SetApplyCutsFlag", &G4ParticleDefinition::SetApplyCutsFlag)
95  .def("GetApplyCutsFlag", &G4ParticleDefinition::GetApplyCutsFlag)
96  ;
97 }
void SetDecayTable(G4DecayTable *aDecayTable)
void SetPDGStable(const G4bool aFlag)
void SetProcessManager(G4ProcessManager *aProcessManager)
G4double GetPDGIsospin3() const
G4double GetPDGIsospin() const
G4int GetVerboseLevel() const
G4bool GetPDGStable() const
void SetPDGLifeTime(G4double aLifeTime)
G4int GetAntiQuarkContent(G4int flavor) const
const G4String & GetParticleSubType() const
G4ProcessManager * GetProcessManager() const
const G4String & GetParticleName() const
G4int GetAtomicNumber() const
G4int GetAntiPDGEncoding() const
G4ParticleTable * GetParticleTable() const
G4DecayTable * GetDecayTable() const
G4double GetPDGWidth() const
G4int GetQuarkContent(G4int flavor) const
const G4String & GetParticleType() const
void SetVerboseLevel(G4int value)
G4int GetAtomicMass() const
G4int GetPDGiConjugation() const
G4double GetPDGMass() const
G4double GetPDGSpin() const
G4double GetPDGLifeTime() const
G4bool GetApplyCutsFlag() const
G4double GetPDGCharge() const
void export_G4ParticleTable ( )

Definition at line 119 of file pyG4ParticleTable.cc.

References G4ParticleTable::DumpTable(), G4ParticleTable::entries(), pyG4ParticleTable::f1_contains, pyG4ParticleTable::f1_FindAntiParticle, pyG4ParticleTable::f1_FindIon, pyG4ParticleTable::f1_FindParticle, pyG4ParticleTable::f2_contains, pyG4ParticleTable::f2_FindAntiParticle, pyG4ParticleTable::f2_FindIon, pyG4ParticleTable::f2_FindParticle, pyG4ParticleTable::f3_FindAntiParticle, pyG4ParticleTable::f3_FindParticle, G4ParticleTable::GetIon(), G4ParticleTable::GetParticle(), pyG4ParticleTable::GetParticleList(), G4ParticleTable::GetParticleName(), G4ParticleTable::GetParticleTable(), G4ParticleTable::GetReadiness(), G4ParticleTable::GetVerboseLevel(), G4ParticleTable::SetReadiness(), G4ParticleTable::SetVerboseLevel(), and G4ParticleTable::size().

Referenced by BOOST_PYTHON_MODULE().

120 {
121  class_<G4ParticleTable, G4ParticleTable*, boost::noncopyable>
122  ("G4ParticleTable", "particle table", no_init)
123  // ---
124  .def("GetParticleTable", &G4ParticleTable::GetParticleTable,
125  return_value_policy<reference_existing_object>())
126  .staticmethod("GetParticleTable")
127  .def("contains", f1_contains)
128  .def("contains", f2_contains)
129  .def("entries", &G4ParticleTable::entries)
130  .def("size", &G4ParticleTable::size)
131  // ---
132  .def("GetParticle", &G4ParticleTable::GetParticle,
133  return_value_policy<reference_existing_object>())
134  .def("GetParticleName", &G4ParticleTable::GetParticleName,
135  return_value_policy<return_by_value>())
136  .def("FindParticle", f1_FindParticle,
137  return_value_policy<reference_existing_object>())
138  .def("FindParticle", f2_FindParticle,
139  return_value_policy<reference_existing_object>())
140  .def("FindParticle", f3_FindParticle,
141  return_value_policy<reference_existing_object>())
142  .def("FindAntiParticle", f1_FindAntiParticle,
143  return_value_policy<reference_existing_object>())
144  .def("FindAntiParticle", f2_FindAntiParticle,
145  return_value_policy<reference_existing_object>())
146  .def("FindAntiParticle", f3_FindAntiParticle,
147  return_value_policy<reference_existing_object>())
148  .def("FindIon", f1_FindIon,
149  return_value_policy<reference_existing_object>())
150  .def("FindIon", f2_FindIon,
151  return_value_policy<reference_existing_object>())
152 #if G4VERSION_NUMBER >= 910
153  .def("FindIon", f3_FindIon,
154  return_value_policy<reference_existing_object>())
155 #endif
156 #if G4VERSION_NUMBER >= 910
157  .def("GetIon", f1_GetIon,
158  return_value_policy<reference_existing_object>())
159  .def("GetIon", f2_GetIon,
160  return_value_policy<reference_existing_object>())
161 #else
162  .def("GetIon", &G4ParticleTable::GetIon,
163  return_value_policy<reference_existing_object>())
164 #endif
165  .def("DumpTable", &G4ParticleTable::DumpTable, f_DumpTable())
166  //.def("GetIonTable", &G4ParticleTable::GetIonTable,
167  //...)
168  //.def("GetShortLivedTable", &G4ParticleTable::GetShortLivedTable,
169  //...)
170  .def("SetVerboseLevel", &G4ParticleTable::SetVerboseLevel)
171  .def("GetVerboseLevel", &G4ParticleTable::GetVerboseLevel)
172  .def("SetReadiness", &G4ParticleTable::SetReadiness)
173  .def("GetReadiness", &G4ParticleTable::GetReadiness)
174  // ---
175  // additionals
176  .def("GetParticleList", GetParticleList)
177  ;
178 }
G4ParticleDefinition *(G4ParticleTable::* f2_FindAntiParticle)(const G4String &)
void DumpTable(const G4String &particle_name="ALL")
G4ParticleDefinition * GetIon(G4int atomicNumber, G4int atomicMass, G4double excitationEnergy)
const G4String & GetParticleName(G4int index) const
G4ParticleDefinition *(G4ParticleTable::* f1_FindParticle)(G4int)
void SetVerboseLevel(G4int value)
void SetReadiness(G4bool val=true)
G4bool GetReadiness() const
G4bool(G4ParticleTable::* f2_contains)(const G4String &) const
G4ParticleDefinition * GetParticle(G4int index) const
list GetParticleList(G4ParticleTable *particleTable)
static G4ParticleTable * GetParticleTable()
G4bool(G4ParticleTable::* f1_contains)(const G4ParticleDefinition *) const
G4ParticleDefinition *(G4ParticleTable::* f3_FindAntiParticle)(const G4ParticleDefinition *)
G4ParticleDefinition *(G4ParticleTable::* f1_FindIon)(G4int, G4int, G4double)
G4ParticleDefinition *(G4ParticleTable::* f2_FindParticle)(const G4String &)
G4ParticleDefinition *(G4ParticleTable::* f2_FindIon)(G4int, G4int, G4int, G4int)
G4int size() const
G4int GetVerboseLevel() const
G4int entries() const
G4ParticleDefinition *(G4ParticleTable::* f3_FindParticle)(const G4ParticleDefinition *)
G4ParticleDefinition *(G4ParticleTable::* f1_FindAntiParticle)(G4int)
void export_G4PrimaryParticle ( )

Definition at line 41 of file pyG4PrimaryParticle.cc.

References G4PrimaryParticle::GetCharge(), G4PrimaryParticle::GetG4code(), G4PrimaryParticle::GetMass(), G4PrimaryParticle::GetMomentum(), G4PrimaryParticle::GetNext(), G4PrimaryParticle::GetPDGcode(), G4PrimaryParticle::GetPolarization(), G4PrimaryParticle::GetPolX(), G4PrimaryParticle::GetPolY(), G4PrimaryParticle::GetPolZ(), G4PrimaryParticle::GetProperTime(), G4PrimaryParticle::GetPx(), G4PrimaryParticle::GetPy(), G4PrimaryParticle::GetPz(), G4PrimaryParticle::GetTrackID(), G4PrimaryParticle::GetWeight(), G4PrimaryParticle::Print(), and G4PrimaryParticle::SetWeight().

Referenced by BOOST_PYTHON_MODULE().

42 {
43  class_<G4PrimaryParticle, G4PrimaryParticle*>
44  ("G4PrimaryParticle", "primary particle")
45  // ---
46  .add_property("Px", &G4PrimaryParticle::GetPx)
47  .add_property("Py", &G4PrimaryParticle::GetPy)
48  .add_property("Pz", &G4PrimaryParticle::GetPz)
49  // ---
50  .def("Print", &G4PrimaryParticle::Print)
51  .def("GetPDGcode", &G4PrimaryParticle::GetPDGcode)
52  .def("GetG4code", &G4PrimaryParticle::GetG4code,
53  return_internal_reference<>())
54  .def("GetMomentun", &G4PrimaryParticle::GetMomentum,
55  return_value_policy<return_by_value>())
56  .def("GetPx", &G4PrimaryParticle::GetPx)
57  .def("GetPy", &G4PrimaryParticle::GetPy)
58  .def("GetPz", &G4PrimaryParticle::GetPz)
59  .def("GetNext", &G4PrimaryParticle::GetNext,
60  return_internal_reference<>())
61  .def("GetDaughter", &G4PrimaryParticle::GetNext,
62  return_internal_reference<>())
63  .def("GetTrackID", &G4PrimaryParticle::GetTrackID)
64  .def("GetMass", &G4PrimaryParticle::GetMass)
65  .def("GetCharge", &G4PrimaryParticle::GetCharge)
66  .def("GetPolarization", &G4PrimaryParticle::GetPolarization,
67  return_value_policy<return_by_value>())
68  .def("GetPolX", &G4PrimaryParticle::GetPolX)
69  .def("GetPolY", &G4PrimaryParticle::GetPolY)
70  .def("GetPolZ", &G4PrimaryParticle::GetPolZ)
71  .def("GetWeight", &G4PrimaryParticle::GetWeight)
72  .def("SetWeight", &G4PrimaryParticle::SetWeight)
73  .def("GetProperTime", &G4PrimaryParticle::GetProperTime)
74  ;
75 }
G4double GetPolX() const
G4ThreeVector GetMomentum() const
G4int GetTrackID() const
G4double GetPz() const
G4double GetPx() const
G4ThreeVector GetPolarization() const
G4double GetPolZ() const
G4double GetPolY() const
G4ParticleDefinition * GetG4code() const
G4double GetPy() const
G4double GetMass() const
G4double GetProperTime() const
G4int GetPDGcode() const
G4double GetWeight() const
G4PrimaryParticle * GetNext() const
void SetWeight(G4double w)
G4double GetCharge() const
void export_G4PrimaryVertex ( )

Definition at line 51 of file pyG4PrimaryVertex.cc.

References G4PrimaryVertex::GetNumberOfParticle(), G4PrimaryVertex::GetPosition(), G4PrimaryVertex::GetPrimary(), G4PrimaryVertex::GetT0(), G4PrimaryVertex::GetWeight(), G4PrimaryVertex::GetX0(), G4PrimaryVertex::GetY0(), G4PrimaryVertex::GetZ0(), G4PrimaryVertex::Print(), and G4PrimaryVertex::SetWeight().

Referenced by BOOST_PYTHON_MODULE().

52 {
53  class_<G4PrimaryVertex, G4PrimaryVertex*>
54  ("G4PrimaryVertex", "primary vertex")
55  // ---
56  .add_property("X0", &G4PrimaryVertex::GetX0)
57  .add_property("Y0", &G4PrimaryVertex::GetY0)
58  .add_property("Z0", &G4PrimaryVertex::GetZ0)
59  .add_property("T0", &G4PrimaryVertex::GetT0)
60  // ---
61  .def("GetPosition", &G4PrimaryVertex::GetPosition,
62  return_value_policy<return_by_value>())
63  .def("GetX0", &G4PrimaryVertex::GetX0)
64  .def("GetY0", &G4PrimaryVertex::GetY0)
65  .def("GetZ0", &G4PrimaryVertex::GetZ0)
66  .def("GetT0", &G4PrimaryVertex::GetT0)
67  .def("GetNumberOfParticle", &G4PrimaryVertex::GetNumberOfParticle)
68  .def("GetPrimary", &G4PrimaryVertex::GetPrimary,
69  return_internal_reference<>(), f_GetPrimary())
70  .def("GetWeight", &G4PrimaryVertex::GetWeight)
71  .def("SetWeight", &G4PrimaryVertex::SetWeight)
72  .def("Print", &G4PrimaryVertex::Print)
73  ;
74 }
G4double GetX0() const
G4int GetNumberOfParticle() const
G4ThreeVector GetPosition() const
void SetWeight(G4double w)
void Print() const
G4double GetT0() const
G4double GetWeight() const
G4PrimaryParticle * GetPrimary(G4int i=0) const
G4double GetZ0() const
G4double GetY0() const
void export_PyG4ParticleList ( )

Definition at line 85 of file pyG4ParticleList.cc.

References PyG4ParticleList::p_begin(), and PyG4ParticleList::p_end().

Referenced by BOOST_PYTHON_MODULE().

86 {
87  class_<PyG4ParticleList>("PyG4ParticleList", "particle list")
88  .def("__iter__", iterator<PyG4ParticleList::ParticleList>())
89  .add_property("particles", range(&PyG4ParticleList::p_begin,
91  ;
92 }
p_iterator p_begin()
p_iterator p_end()