62 G4bool WLSPrimaryGeneratorAction::fFirst = 
false;
 
  114    for (
G4int i=0 ; i < numOfMaterials; i++) {
 
  119        G4Material* aMaterial = (*theMaterialTable)[i];
 
  124        if (aMaterialPropertiesTable) {
 
  126                       aMaterialPropertiesTable->
GetProperty(
"WLSCOMPONENT");
 
  129              G4double currentIN = (*theWLSVector)[0];
 
  130              if (currentIN >= 0.0) {
 
  133                 aPhysicsOrderedFreeVector->
 
  134                                      InsertValues(currentPM , currentCII);
 
  143                   currentPM = theWLSVector->
Energy(j);
 
  144                   currentIN = (*theWLSVector)[j];
 
  145                   currentCII = 0.5 * (prevIN + currentIN);
 
  146                   currentCII = prevCII + (currentPM - prevPM) * currentCII;
 
  147                   aPhysicsOrderedFreeVector->
 
  148                                      InsertValues(currentPM, currentCII);
 
  150                   prevCII = currentCII;
 
  169 #ifdef use_sampledEnergy 
  174   for (
size_t j=0 ; j<theMaterialTable->size() ; j++) {
 
  175       G4Material* fMaterial = (*theMaterialTable)[j];
 
  176       if (fMaterial->
GetName() == 
"PMMA" ) {
 
  180                    aMaterialPropertiesTable->
GetProperty(
"WLSCOMPONENT");
 
  190             sampledEnergy = WLSIntegral->
GetEnergy(CIIvalue);
 
  211 void WLSPrimaryGeneratorAction::SetOptPhotonPolar()
 
  214   SetOptPhotonPolar(angle);
 
  223      G4cout << 
"-> warning from WLSPrimaryGeneratorAction::SetOptPhotonPolar()" 
  224             << 
":  the ParticleGun is not an opticalphoton" << 
G4endl;
 
  234   if (modul2 > 0.) e_perpend = (1./std::sqrt(modul2))*product;
 
  237   G4ThreeVector polar = std::cos(angle)*e_paralle + std::sin(angle)*e_perpend;
 
  244 void WLSPrimaryGeneratorAction::SetOptPhotonTime()
 
Definition of the WLSPrimaryGeneratorAction class. 
 
void GeneratePrimaryVertex(G4Event *)
 
const G4String & GetName() const 
 
Definition of the WLSPrimaryGeneratorMessenger class. 
 
static G4MaterialTable * GetMaterialTable()
 
std::vector< G4Material * > G4MaterialTable
 
static G4double angle[DIM]
 
size_t GetVectorLength() const 
 
G4PhysicsTable * fIntegralTable
 
#define G4MUTEX_INITIALIZER
 
const G4String & GetParticleName() const 
 
Definition of the WLSDetectorConstruction class. 
 
void SetParticleTime(G4double aTime)
 
static double normal(HepRandomEngine *eptr)
 
G4GLOB_DLL std::ostream G4cout
 
void SetParticlePolarization(G4ThreeVector aVal)
 
static constexpr double eV
 
G4double Energy(size_t index) const 
 
static size_t GetNumberOfMaterials()
 
G4ParticleDefinition * GetParticleDefinition() const 
 
G4double GetEnergy(G4double aValue)
 
virtual ~WLSPrimaryGeneratorAction()
 
WLSPrimaryGeneratorAction(WLSDetectorConstruction *)
 
G4MaterialPropertiesTable * GetMaterialPropertiesTable() const 
 
G4ThreeVector GetParticleMomentumDirection() const 
 
void SetDecayTimeConstant(G4double)
 
virtual void GeneratePrimaries(G4Event *)
 
void insertAt(size_t, G4PhysicsVector *)
 
Hep3Vector cross(const Hep3Vector &) const 
 
static constexpr double deg
 
void BuildEmissionSpectrum()
 
G4MaterialPropertyVector * GetProperty(const char *key)
 
void SetOptPhotonPolar(G4double)