# ========================================================================== ############################################################################# # ========================================================================== # General # ========================================================================== ############################################################################# # ========================================================================== # ------------------------------------------------------------------------- # Use this if you want to setup the logging stream for the jobs # (overwrites command line options) # ------------------------------------------------------------------------- MLog.VerbosityLevel: 4 #MLog.DebugLevel: 1 #MLog.NoColors: yes # ========================================================================== ############################################################################# # ========================================================================== # Ceres # ========================================================================== ############################################################################# # ========================================================================== # ------------------------------------------------------------------------- # Use this if you want to write the MJStar output somewhere # If you don't want it, it is written to the calibration output anyhow. # ------------------------------------------------------------------------- #PathOut: . #PathIn: . # ------------------------------------------------------------------------- # Configure Eventloop # ------------------------------------------------------------------------- #MaxEvents: 10000 #Overwrite: yes,no # ------------------------------------------------------------------------- # Use this to setup binnings. For more details see: MBinning::ReadEnv # ------------------------------------------------------------------------- # BinningEnergy.Raw: 100 1 100000 log # BinningSize.Raw: 100 1 10000000 log BinningImpact.Raw: 40 0 400 # BinningHeight.Raw: 50 0 12 # BinningAz.Raw: 360 -360 360 # BinningZd.Raw: 70 0 70 BinningViewCone.Raw: 32 0 8 BinningTrigPos.Raw: 100 -5 45 BinningTotLength.Raw: 150 0 150 # BinningEvtWidth.Raw: 150 0 25 # BinningDist.Raw: 100 0 2.5 # BinningDistC.Raw: 100 0 2.5 # BinningThreshold.Raw: 35 0.9 90000 log # BinningEnergyEst.Raw: 100 0.9 90000 log #BinningAlpha.Raw: 36 0 90 BinningWidth.Raw: 50 0 3 BinningLength.Raw: 25 0 3 BinningDist.Raw: 25 0 15 # Note that you might not exactly get this binning limit as # the limits are internally optimized (or to have N bins of size 1) HPhotonEventGround.MaxImpact: 250 # ------------------------------------------------------------------------- # Initialize random number generator (see MJob::InitRandomNumberGenerator) # ------------------------------------------------------------------------- RandomNumberGenerator: TRandom3 #RandomNumberSeedValue: 0 MRead.CorsikaInputCard: # ------------------------------------------------------------------------- # Ceres general setup # ------------------------------------------------------------------------- # Switch off the camera "electronics" #Camera: Off # Force the use of the "hardware" trigger for calibration data #ForceTrigger: Yes # ------------------------------------------------------------------------- # Some setup for the atmosphere. The default should be well suited. # ------------------------------------------------------------------------- #MSimAtmosphere.FileAerosols: resmc/fact/atmopshere-aerosols.txt #MSimAtmosphere.FileOzone: resmc/fact/atmopshere-ozone.txt # ------------------------------------------------------------------------- # Here you can control the poiting of the telescope. To switch on # off-target observations set a value for the distance !=0 [deg]. # For details see MSimPointingPos # ------------------------------------------------------------------------- #MSimPointingPos.OffTargetDistance: 0.6 #MSimPointingPos.OffTargetPhi: -1 # ------------------------------------------------------------------------- # Setup the optics # ------------------------------------------------------------------------- #Reflector.Constructor: MReflector(); Reflector.Constructor: MFresnelLens(); # ------------------------------------------------------------------------- # Note that this is the setup for the 'Reflector' being MFresnelLens Reflector.Transmission.FileName: resmc/hawcseye/transmission-pmma-3mm.txt Reflector.Transmission.Thickness: 0.3 Reflector.Transmission.FresnelCorrection: true #Reflector.SurfaceRoughness: 0.001 # ------------------------------------------------------------------------- # Note that this is the setup for the 'Reflector' being MReflector # For the file definition see MReflector::ReadFile Reflector.FileName: resmc/hawcseye/fake-reflector.txt # Units mm: ~0.02° #Reflector.SetSigmaPSF: 1.8 # Units mm: ~0.03° #Reflector.SetSigmaPSF: 2.6 #Reflector.SetSigmaPSF: 1.66 # new Value from 7.12.2012: # 0.95 of the reflected light was inside a circle with a radius of 2.25mm. # This corresponds to a SigmaPSF of 1.3 mm # This value is based on a direct measurement of the mirrors. There # is no way it can be wrong. Only the ray-tracing algorithm could be wrong. Reflector.SetSigmaPSF: 2 # --- DWARF --- # distance from mirror to camera [cm] #focal_distance 489.73 # TRUE focal of the paraboloid (must correspond to that of the mirror positions defined below!) #paraboloid_focal 488.87 # ------------------------------------------------------------------------- # Setup the camera geometry # ------------------------------------------------------------------------- #MGeomCam.Constructor: MGeomCamDwarf(189.8, 9.5, 4.8887); MGeomCam.Constructor: MGeomCamFAMOUS(0.502,false); #MSimBundlePhotons.FileName: resmc/fact/dwarf-fact.txt # ------------------------------------------------------------------------- # Setup the sensors # ------------------------------------------------------------------------- # Set the APD type (1: 30x30 , 2: 60x60, 3:60x60(ct=15%)) MSimAPD.Type: 5 #MSimAPD.Type: 0 #MSimAPD.NumCells: 60 #MSimAPD.DeadTime: 3.0 #MSimAPD.RecoveryTime: 8.75 #MSimAPD.CrosstalkCoefficient: 0.1 #MSimAPD.AfterpulseProb1: 0.14 #MSimAPD.AfterpulseProb2: 0.11 MSimExcessNoise.ExcessNoise: 0.096 # ------------------------------------------------------------------------- # Setup the absorption, conversion efficiency and angular acceptance # ------------------------------------------------------------------------- # Note that all four curves enter the calculation of the background rate # but not necessarily all are applied! #MirrorReflectivity.FileName: /home/fact_opr/mc_configuration_files/setup/ceres/030/MirrorReflectivity_Lustermann_FACT_bearbeitet.txt #PhotonDetectionEfficiency.FileName: /home/fact_opr/mc_configuration_files/setup/ceres/030/fact-pde-1.4V.txt #ConesAngularAcceptance.FileName: /home/fact_opr/mc_configuration_files/setup/ceres/030/fact-cones-angular-acceptance.txt #ConesTransmission.FileName: /home/fact_opr/mc_configuration_files/setup/ceres/030/Transmittance_1439Cones_FACT_bearbeitet.txt #FIXME: This should be 2.5mm MirrorReflectivity.FileName: resmc/hawcseye/transmission-pmma-3mm.txt #FIXME: This should be Hamamatsu/SensL PhotonDetectionEfficiency.FileName: resmc/hawcseye/pde.txt #FIXME: Calculate for our aluminium and PMMA cones (this is for FACT cones) ConesAngularAcceptance.FileName: resmc/hawcseye/cones-angular-acceptance.txt #FIXME: Calculate for out cones ConesTransmission.FileName: resmc/fact/Transmittance_1439Cones_FACT_bearbeitet.txt # Skipped otherwise due to CEFFIC option # We use CEFFIC only for the atmosphere! SimPhotonDetectionEfficiency.Force: Yes SimMirrorReflectivity.Force: Yes SimConesTransmission.Force: Yes # A backward motivated overall PDE adjustment. # Introduced by Fabian T. to produce the ICRC2015 Crab spectrum. AdditionalPhotonAcceptance.Function.Name: 0.8 AdditionalPhotonAcceptance.Function.Npx: 100 AdditionalPhotonAcceptance.Function.Xmin: 290 AdditionalPhotonAcceptance.Function.Xmax: 900 # ------------------------------------------------------------------------- # Setup what in MMCS would be called "additional spot size" # ------------------------------------------------------------------------- #MSimPSF.Sigma: -1 #MSimReflector.DetectorMargin: 0 # ------------------------------------------------------------------------- # Setup the dark counts (FrequencyFixed) and the NSB noise per cm^2 # ------------------------------------------------------------------------- # Turn off some checks: ONLY(!!!) for testing purposes MSimRandomPhotons.Force: Yes # Dark Counts per APD: ~4MHz #MSimRandomPhotons.FrequencyFixed: 0.004 # NSB photon rate per cm^2 ~40MHz (folded with the cones' angular # acceptance and the wavelength acceptance of the camera (window, apd, etc) # 0.040 1/ns/cm^2 NSB-rate: #MSimRandomPhotons.FrequencyNSB: 0.025 MSimRandomPhotons.FileNameNSB: resmc/night-sky-la-palma.txt MSimRandomPhotons.FrequencyNSB: 0.0 # FIXME: With a class describing the cones we could give NSB as # per sr and cm^2 # ------------------------------------------------------------------------- # Setup the trigger # ------------------------------------------------------------------------- # This line could be omitted but then the discriminator would be # evaluated for all pixels not just for the pixels which are # later "connected" in the trigger (used in the coincidence map) # MSimTrigger.FileNameRouteAC: resmc/fact/magic-trigger-1NN.txt MSimTrigger.FileNameRouteAC: resmc/hawcseye/trigger.txt # DiscriminatorThreshold is in arbitrary units # This is the FACT default #MSimTrigger.DiscriminatorThreshold: -192.387 # This is optimized to trigger not more than 1 out of 1000 simulated pedestal events MSimTrigger.DiscriminatorThreshold: 700 # The units correspond to DRS4 ADC counts (FIXME: Conversion to DAC cnts) # In FACT: 300 DAC counts are roughly 21pe. 1pe is roughly 10 mV / 20 ADC counts (see MSimCamera.DefaultGain) # Therefore, the conversion from ADC to DAC is therefore (300/21.)/22.553 = 0.63 # A simulated DiscriminatorThreshold or 700 therefore corresponds to a DAC threshold of about 450 # Note that this is in SAMPLES! I have taken the values from the SW trigger MSimTrigger.CableDelay: 21 MSimTrigger.CableDamping: -0.96 MSimTrigger.CoincidenceTime: 0.5 # The baseline shift (unfortunately -- as well as the A/C coupling!) is already added # before the trigger electornics to the signal. If the sum-trigger is calculated, # the baseline is summed as N*pixels - 0.96*N*pixels and therefore shifts indiviudally # according to the number of pixels in a patch (I believe that this is wrong). # Therefore, this effect can be correct be a shift of N*(1-0.96) MSimTrigger.ShiftBaseline: Yes # Setting this resource allows to copy the sum signal back to the source pixels # so that instead of the original signal, the sum-signal is digitzed in the eleotronics #MSimTrigger.DebugTrigger: Yes # Use this to turn off the trigger electronics. A trigger is always issued. #MSimTrigger.SimulateElectronics: No # Every Pixel(!) should see the same signal independant of its size MSimCalibrationSignal.NumPhotons: 24 MSimCalibrationSignal.NumEvents: 1000 # This is an unfortunate naming convention. A better name would be "IntendedTriggerPos" # This is in nano-seconds (Mars-new) to be independent of the sampling frequency IntendedPulsePos.Val: 150 #PulseShape.Function.Name: exp(-(x/2)^2/2) #PulseShape.FileName: resmc/fact/dwarf-pulse.txt # ------------------------------------------------------------------------- # Description how a pedestal/calibration signal is produced # ------------------------------------------------------------------------- #MSimCalibrationSignal.NumEvents: 1000 #MSimCalibrationSignal.NumPhotons: 5 #MSimCalibrationSignal.TimeJitter: 1.0 # ------------------------------------------------------------------------- # Setup the FADC # ------------------------------------------------------------------------- MRawRunHeader.SamplingFrequency: 2000 MRawRunHeader.NumSamples: 1024 MRawRunHeader.NumBytesPerSample: 2 MRawRunHeader.FadcResolution: 12 MSimCamera.DefaultOffset: -1850.0 # ADC counts MSimCamera.DefaultNoise: 2.8125 # ADC counts MSimCamera.DefaultGain: 22.553 # Conversion for the pulse to ADC counts # Value for the fudgefactor in the calculation of the accoupling: # FIXME: If I am not mistaken, the time constant is in us ... to be checked MSimCamera.ACFudgeFactor: 0.3367 MSimCamera.ACTimeConstant: 20 #MSimReadout.fConversionFactor: 1 # The number of sampling points is almost irrelevant because they # are equidistant, i.e. calculated and no search is necessary. # Nevertheless, you must make sure that there are enough points # to sample the function accuratly enough. # Attention: x in the function is given in slices, so if you change the sampling # frequency you have to change also this function PulseShape.Function.Name: (1.239*(1-1/(1+exp((0.5*x-2.851)/1.063)))*exp(-(0.5*x-2.851)/19.173)) PulseShape.Function.Npx: 310 PulseShape.Function.Xmin: -10 PulseShape.Function.Xmax: 300 #PulseShape.Function.Name: (1.626*(1-exp(-0.3803*0.5*x))*exp(-0.0649*0.5*x)) #PulseShape.Function.Npx: 900 #PulseShape.Function.Xmin: 0 #PulseShape.Function.Xmax: 300 # ------------------------------------------------------------------------- # Setup an image cleaning on the pure gamma signal (without noise) # ------------------------------------------------------------------------- #MImgCleanStd.CleanLevel1: 6.0 #MImgCleanStd.CleanLevel2: 6.0 # ------------------------------------------------------------------------- # This is a cut executed after the calculation of the image parameters # ------------------------------------------------------------------------- Cut.Inverted: Yes #Cut.Condition: MNewImagePar.fNumUsedPixels>3 && MHillas.fSize>6 Cut.Condition: MHillas.fSize>10 #&& MHillas.fSize>30 #MSimTrigger.SimulateElectronics: Off # Does not trigger anyway ContEmpty3.Condition: MPhotonEvent.GetNumPhotons<10 # Take a fixed position in the camera.... for now! MSrcPosCalc.FixedPos: 0 0 MFixTimeOffset.FileName: resmc/fact/pixel_delays_ALL_ZERO.csv # MFixTimeOffset.FileName: resmc/fact/AllPhidoFiles_delays.csv ResidualTimeSpread.Val: 0.0 GapdTimeJitter.Val: 1.5 # last line comment