14.10.2011 Kamil Sedlak

1) change in the way how random time scattering in APD is
   generated for optical photons - now the events should be
   reproducible irrespective of whether the random time is
   or is not requested.
2) indroducing a possibility to simulate optical photons, but
   not to process them - this option, however, does not seem
   to speed up the simulation significantly.
This commit is contained in:
2011-10-14 08:11:54 +00:00
parent 781fb2022c
commit 89c6f27ae1
5 changed files with 25 additions and 10 deletions

View File

@@ -54,6 +54,12 @@ class musrParameters {
static G4bool boolG4GeneralParticleSource; // if true, G4GeneralParticleSource will be initialised instead of G4ParticleGun
// - needed for the radioactive source
static G4bool boolG4OpticalPhotons; // if true, optical photons will be used (in the sensitive scintillators)
static G4bool boolG4OpticalPhotonsUnprocess; // if true, optical photons will not be processed - it might be
// usefull if the user wants to preselect some interesting events,
// and then to run the time-consuming processing of opt. photons
// again only for the interesting events. This way the random number
// generator can generate the reproducible events.
// This option only works with "boolG4OpticalPhotons".
static G4bool field_DecayWithSpin; // if true, then the routins for calculating the magnetic field will
// use more precise argument. This variable is set to "true" by
// the SteppinAction and reset to "false" in the GetFieldValue.

View File

@@ -105,7 +105,7 @@ class musrScintSD : public G4VSensitiveDetector
OPSAhistoNbin=nBins; OPSAhistoMin=min; OPSAhistoMax=max;
OPSAhistoBinWidth=(max-min)/nBins; OPSAhistoBinWidth1000=OPSAhistoBinWidth*1000;
}
void ProcessOpticalPhoton(G4Step*);
void ProcessOpticalPhoton(G4Step* aStep, G4double APDcellsTimeVariation);
void EndOfEvent_OptiacalPhotons();
void ReadInPulseShapeArray(const char* filename);
void FindCFDtime(G4double& OPSA_CFD_time, G4double& OPSA_CFD_ampl, G4double timeOfFirstPhoton);