Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions
PurgMagPrimaryGeneratorAction Class Reference

#include <PurgMagPrimaryGeneratorAction.hh>

Inheritance diagram for PurgMagPrimaryGeneratorAction:
G4VUserPrimaryGeneratorAction

Public Member Functions

 PurgMagPrimaryGeneratorAction ()
 
 ~PurgMagPrimaryGeneratorAction ()
 
void GeneratePrimaries (G4Event *)
 
void SetRndmVertex (G4bool val)
 
- Public Member Functions inherited from G4VUserPrimaryGeneratorAction
 G4VUserPrimaryGeneratorAction ()
 
virtual ~G4VUserPrimaryGeneratorAction ()
 

Detailed Description

Definition at line 52 of file PurgMagPrimaryGeneratorAction.hh.

Constructor & Destructor Documentation

PurgMagPrimaryGeneratorAction::PurgMagPrimaryGeneratorAction ( )

Definition at line 57 of file PurgMagPrimaryGeneratorAction.cc.

References G4ParticleTable::FindParticle(), G4ParticleTable::GetParticleTable(), python.hepunit::MeV, G4ParticleGun::SetParticleDefinition(), G4ParticleGun::SetParticleEnergy(), and G4ParticleGun::SetParticleMomentumDirection().

58  :rndmVertex(false)
59 {
60  //default kinematic
61  G4int n_particle = 1;
62  particleGun = new G4ParticleGun(n_particle);
63 
64  G4ParticleDefinition* particle
65  =
66 
68  particleGun->SetParticleDefinition(particle);
69  particleGun->SetParticleEnergy(50.*MeV);
70 
71  //Momentum Direction
72  particleGun->SetParticleMomentumDirection(G4ThreeVector(0.,0.,-1.));
73 
74 }
G4ParticleDefinition * FindParticle(G4int PDGEncoding)
CLHEP::Hep3Vector G4ThreeVector
void SetParticleMomentumDirection(G4ParticleMomentum aMomentumDirection)
int G4int
Definition: G4Types.hh:78
void SetParticleEnergy(G4double aKineticEnergy)
static G4ParticleTable * GetParticleTable()
void SetParticleDefinition(G4ParticleDefinition *aParticleDefinition)
PurgMagPrimaryGeneratorAction::~PurgMagPrimaryGeneratorAction ( )

Definition at line 78 of file PurgMagPrimaryGeneratorAction.cc.

79 {
80  delete particleGun;
81  }

Member Function Documentation

void PurgMagPrimaryGeneratorAction::GeneratePrimaries ( G4Event anEvent)
virtual

Implements G4VUserPrimaryGeneratorAction.

Definition at line 85 of file PurgMagPrimaryGeneratorAction.cc.

References python.hepunit::cm, G4BestUnit, G4cout, G4ParticleGun::GeneratePrimaryVertex(), G4VPrimaryGenerator::SetParticlePosition(), and G4InuclParticleNames::z0.

86 {
87  //this function is called at the begining of event
88  //Start position of primaries
89  G4double z0 = 15.*cm;
90  G4double x0 = 0.*cm;
91  G4double y0 = 0.*cm;
92  particleGun->SetParticlePosition(G4ThreeVector(x0,y0,z0));
93  particleGun->GeneratePrimaryVertex(anEvent);
94 
95 #if POSITION
96  G4cout << "\n----Particle Gun--------------------------------------------\n";
97  G4cout << "\n ---> SetParticlePosition(G4ThreeVector(x0,y0,z0)) ";
98  G4cout << "\n ---> x0 = " << x0 << " "<< G4BestUnit(x0,"Length");
99  G4cout << "\n ---> y0 = " << y0 << " "<< G4BestUnit(y0,"Length");
100  G4cout << "\n ---> z0 = " << z0 << " "<< G4BestUnit(z0,"Length");
101  G4cout << "\n-----------------------------------------------------------\n";
102 #endif
103 }
CLHEP::Hep3Vector G4ThreeVector
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1
virtual void GeneratePrimaryVertex(G4Event *evt)
void SetParticlePosition(G4ThreeVector aPosition)
G4GLOB_DLL std::ostream G4cout
double G4double
Definition: G4Types.hh:76
void PurgMagPrimaryGeneratorAction::SetRndmVertex ( G4bool  val)
inline

Definition at line 60 of file PurgMagPrimaryGeneratorAction.hh.

60 { rndmVertex = val;}

The documentation for this class was generated from the following files: