Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

PhotonConfiguration.h File Reference

#include "Registry/Registry.h"

Go to the source code of this file.

Functions

RegistryPhotonConfiguration ()


Function Documentation

Registry& PhotonConfiguration  ) 
 

Definition at line 5 of file PhotonConfiguration.cxx.

References Registry::LockValues(), Registry::Set(), and Registry::UnLockValues().

Referenced by PhotonInjector::DefaultConfig(), PhotonTransport::DefaultConfig(), PhotonCaldetNoise::PhotonCaldetNoise(), PhotonCalibratedBlueComputer::PhotonCalibratedBlueComputer(), PhotonCalibratedPeComputer::PhotonCalibratedPeComputer(), PhotonCompositeGreenTracker::PhotonCompositeGreenTracker(), PhotonDefaultModel::PhotonDefaultModel(), PhotonFastBlueModel::PhotonFastBlueModel(), PhotonFullBlueTracker::PhotonFullBlueTracker(), PhotonFullFibreModel::PhotonFullFibreModel(), PhotonFullGreenTracker::PhotonFullGreenTracker(), and PhotonNdAfterpulseModel::PhotonNdAfterpulseModel().

00006 {
00007   static Registry photon;
00008   static bool     prepped = false;
00009   if(!prepped) {
00010     prepped = true;
00011     photon.SetName("ScintHitToDigiPE.config.default");
00012     photon.UnLockValues();
00013     
00014     // Algorithm control.
00015     
00016     photon.Set("randomSeed",0);
00017 
00018     // Set values in configuration
00019     photon.Set("PhotonComputer",    "photonCalibratedPeComputer");
00020     photon.Set("BluePhotonTracker", "photonFastBlueModel");
00021     photon.Set("WlsFibreModel",     "photonDefaultModel");
00022     photon.Set("GreenPhotonTracker","photonDefaultModel");
00023     photon.Set("NoiseMaker",        "photonDefaultModel");
00024     photon.Set("DebugFileName",   "");
00025     photon.Set("DebugMask", 0xFFFF);
00026     
00027     // Computer:
00028     photon.Set("OverallLightOutput",       1.0); //
00029     photon.Set("GeVPerMip",                0.00173); // Scale factor that defines what a MIP/MEU is.
00030                                                      // This value taken from CalDet MC testing by Jeff H.
00031     photon.Set("NpePerGeV",                9.2e3); // Scaling factor for StripComputer. Now defunct.
00032     photon.Set("AttenuationMode",          0);
00033     photon.Set("ScintillatorClipping",     1);
00034     photon.Set("ElectronFudgeThreshEnergy",0);
00035     photon.Set("ElectronFudgeThreshDist",  0);
00036     photon.Set("MaxPePerHit",              10000.0); // Maximum PE for a hit - limiter for calibration errors.
00037     
00038     // Scintillator:
00039     photon.Set("BirksConstant",           0.133); // meters/GeV
00040     photon.Set("ScintIndex",              1.6 );
00041     photon.Set("ScintAttenLength",        0.33);
00042     photon.Set("ScintDecayTime",          2 * Munits::ns);  //+/- 0.5ns K Ruddick, private communication.
00043     photon.Set("TiO2ReflecDiffuse",       0.94);
00044     photon.Set("GrooveReflecCoeff",       0.5 );
00045     photon.Set("GrooveHalfWidth",         0.7 * Munits::mm);
00046     photon.Set("LambertianReflection",    1); // Use lambertian reflection for full model
00047 
00048     // Tuning parameters:
00049     photon.Set("ScintAttenTuneFactor",1.0);
00050     photon.Set("TiO2ReflecTimeFactor",1.0);
00051 
00052     // Fibres:
00053     photon.Set("OuterCladdingIndex",      1.42);
00054     photon.Set("InnerCladdingIndex",      1.49 );
00055     photon.Set("FibreRadius",             0.6 * Munits::mm );
00056     photon.Set("FibreCoreRadius",         0.6 * Munits::mm*0.88);    // Ref: Brajesh, private communication
00057     photon.Set("InnerCladdingRadius",     0.6 * Munits::mm*0.94);// 3% of diameter for each layephoton.
00058     photon.Set("FibreFlurorDecayTime",    7.5 * Munits::ns);
00059     photon.Set("ClearFibreIndex",         1.6);
00060     photon.Set("FibreIndex",              1.6);
00061     photon.Set("FibreVelocityFudge",      1.0);
00062     
00063     // Fibre attenuation:
00064     photon.Set("FibreAttenN1",            0.3333);
00065     photon.Set("FibreAttenN2",            0.6666);
00066     photon.Set("FibreAttenLength1",       1.052);
00067     photon.Set("FibreAttenLength2",       7.078);
00068     photon.Set("ClearFibreAttenN1",       1.0);
00069     photon.Set("ClearFibreAttenN2",       0.0);
00070     photon.Set("ClearFibreAttenLength1",  11.0);
00071     photon.Set("ClearFibreAttenLength2",  1.35);
00072 
00073     // Reflector connectors:
00074     photon.Set("ReflectorFibreReflec",    0.5); // Rough guess
00075     photon.Set("ReflectorScintReflec",    0.0); // Estimated to be small
00076     
00077     // Pmts:
00078     photon.Set("QuantumEfficiency",       0.036);
00079     
00080     // Noise:
00081     photon.Set("DarkNoiseRate",200.0); //Hz
00082     photon.Set("GreenNoiseRate",25.0); // Hz
00083     photon.Set("NoiseWindow",6500.*Munits::ns);
00084     // Used by FD noise maker
00085     photon.Set("UseSimpleNoiseModel",0);
00086     photon.Set("FDNoiseRate", 3762138);
00087     photon.Set("PoissonNoiseMean", 0.3);
00088     photon.Set("ExpTailFraction", 0.0167);
00089 
00090     // Afterpulsing:
00091     photon.Set("AfterpulseFraction",0.04); 
00092     photon.Set("AfterpulseStart",1.0*Munits::microsecond);
00093     photon.Set("AfterpulseEnd"  ,3.0*Munits::microsecond);
00094     
00095     photon.LockValues();
00096   }
00097   return photon;
00098 }


Generated on Mon Feb 15 11:08:08 2010 for loon by  doxygen 1.3.9.1