Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
F05PrimaryGeneratorAction Class Reference

#include <Doxymodules_field.h>

Inheritance diagram for F05PrimaryGeneratorAction:
G4VUserPrimaryGeneratorAction

Public Member Functions

 F05PrimaryGeneratorAction ()
 
 ~F05PrimaryGeneratorAction () override
 
void GeneratePrimaries (G4Event *) override
 

Private Attributes

G4ParticleGunfParticleGun = nullptr
 

Detailed Description

Definition at line 138 of file Doxymodules_field.h.

Constructor & Destructor Documentation

◆ F05PrimaryGeneratorAction()

F05PrimaryGeneratorAction::F05PrimaryGeneratorAction ( )

Definition at line 47 of file F05PrimaryGeneratorAction.cc.

48{
49 G4int n_particle = 1;
50 fParticleGun = new G4ParticleGun(n_particle);
51
52 G4ParticleTable* particleTable = G4ParticleTable::GetParticleTable();
53 G4ParticleDefinition* particle = particleTable->FindParticle("mu+");
54
55 fParticleGun->SetParticleDefinition(particle);
56}

◆ ~F05PrimaryGeneratorAction()

F05PrimaryGeneratorAction::~F05PrimaryGeneratorAction ( )
override

Definition at line 60 of file F05PrimaryGeneratorAction.cc.

61{
62 delete fParticleGun;
63}

Member Function Documentation

◆ GeneratePrimaries()

void F05PrimaryGeneratorAction::GeneratePrimaries ( G4Event anEvent)
override

Definition at line 67 of file F05PrimaryGeneratorAction.cc.

68{
69 //this function is called at the begining of event
70 //
71
72 G4double Pmu = 517.6*MeV;
73 G4double mu_mass = 105.658*MeV;
74 G4double Emu = std::sqrt(Pmu*Pmu + mu_mass*mu_mass);
75 G4double Kmu = Emu - mu_mass;
76
77 G4double x0 = -6.99*m;
78 G4double y0 = 0.00*m;
79 G4double z0 = 0.00*m;
80
81 fParticleGun->SetParticleEnergy(Kmu);
82 fParticleGun->SetParticlePosition(G4ThreeVector(x0,y0,z0));
83 fParticleGun->SetParticlePolarization(G4ThreeVector(0.,1.,0.));
84 fParticleGun->SetParticleMomentumDirection(G4ThreeVector(0.,1.,0.));
85
86 fParticleGun->GeneratePrimaryVertex(anEvent);
87}

Member Data Documentation

◆ fParticleGun

G4ParticleGun* F05PrimaryGeneratorAction::fParticleGun = nullptr
private

Definition at line 56 of file F05PrimaryGeneratorAction.hh.


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

Applications | User Support | Publications | Collaboration