#include <musrParticleGun.hh>
Public Member Functions | |
| musrParticleGun () | |
| musrParticleGun (G4int numberofparticles) | |
| ~musrParticleGun () | |
| void | GeneratePrimaryVertex (G4Event *evt) |
| void | SetDecayTime (G4double d) |
Public Attributes | |
| G4double | decaytime |
Protected Member Functions | |
| void | SetInitialValues () |
Definition at line 11 of file musrParticleGun.hh.
|
|
Definition at line 11 of file musrParticleGun.cc. References SetInitialValues(). 00012 { 00013 SetInitialValues(); 00014 Messenger = new G4ParticleGunMessenger(this); 00015 }
|
|
|
Definition at line 17 of file musrParticleGun.cc. References SetInitialValues(). 00018 { 00019 SetInitialValues(); 00020 NumberOfParticlesToBeGenerated = numberofparticles; 00021 }
|
|
|
Definition at line 24 of file musrParticleGun.cc.
|
|
|
Definition at line 48 of file musrParticleGun.cc. References decaytime. Referenced by musrPrimaryGeneratorAction::GeneratePrimaries(). 00049 { 00050 if(particle_definition==0) return; 00051 00052 // create a new vertex 00053 G4PrimaryVertex* vertex = 00054 new G4PrimaryVertex(particle_position,particle_time); 00055 00056 00057 // create new primaries and set them to the vertex 00058 G4double mass = particle_definition->GetPDGMass(); 00059 G4double energy = particle_energy + mass; 00060 G4double pmom = sqrt(energy*energy-mass*mass); 00061 G4double px = pmom*particle_momentum_direction.x(); 00062 G4double py = pmom*particle_momentum_direction.y(); 00063 G4double pz = pmom*particle_momentum_direction.z(); 00064 for( G4int i=0; i<NumberOfParticlesToBeGenerated; i++ ) 00065 { 00066 00067 00068 G4PrimaryParticle* particle = 00069 new G4PrimaryParticle(particle_definition,px,py,pz); 00070 particle->SetMass( mass ); 00071 particle->SetCharge( particle_charge ); 00072 particle->SetPolarization(particle_polarization.x(), 00073 particle_polarization.y(), 00074 particle_polarization.z()); 00075 particle->SetProperTime(decaytime); 00076 // G4cout<<"Muon decay time = " << decaytime/ns <<"ns. \n" <<G4endl; 00077 00078 vertex->SetPrimary( particle ); 00079 00080 00081 } 00082 00083 evt->AddPrimaryVertex( vertex ); 00084 }
|
|
|
Definition at line 43 of file musrParticleGun.cc. References decaytime. Referenced by musrPrimaryGeneratorAction::GeneratePrimaries(). 00044 { 00045 decaytime=d; 00046 }
|
|
|
Definition at line 29 of file musrParticleGun.cc. Referenced by musrParticleGun(). 00030 { 00031 NumberOfParticlesToBeGenerated = 1; 00032 particle_definition = 0; 00033 G4ThreeVector zero; 00034 particle_momentum_direction = (G4ParticleMomentum)zero; 00035 particle_energy = 0.0; 00036 particle_position = zero; 00037 particle_time = 0.0; 00038 particle_polarization = zero; 00039 particle_charge = 0.0; 00040 00041 }
|
|
|
Definition at line 21 of file musrParticleGun.hh. Referenced by GeneratePrimaryVertex(), and SetDecayTime(). |
1.4.6