-*-*- END -*-*- *** Version - general: Fixed a bug in most of the programs which prevented the compile date in the startup message to be displayed - general: Simplified program calls. The following abbreviations are now possible: showlog callisto 55599 showplot signal 55599 star 55599 callisto 55999 ganymed 2 In this cases the corrsponding root-, log-, sequence- or dataset- filename is automatically compiled using the default datacenter paths ("/magic/*") - general: Fixed a long outstanding bug which made axis tick marks disappear if MDataFormula was used (eg. abs(x)) - general: Updated MMath with new functions to calculate the results of a exponential, logarithmic and powerlaw fits analytically. - general: Updated some macros with comments: + macros/optim/optimdisp.C + macros/optim/optimenergy.C + macros/optim/optimwobble.C: - general: MTFillMatrix (the class to fill one or two MHMatrix from files) now allows adding a pre-cut like in the optimization. E.g. this is useful to perform g/h-separation cuts before training the random forest. - general: Between the rund 53300 and 68754 the pixels 553-558 were not correctly assigned in the raw data assignement table. A fix to correct the assignment tabel have been implemented. - StatusDisplay: Fixed the algorithm to calculate the size ratio of the display, it gave wrong results espacially for big sizes. Now the embedded canvas should always have a ratio width/height=3/2. The "Size" options have been updated with values fitting the 3/2 size ratio. - RanForest: + Updated the random forest classes to support also the regression method implemented by Thomas H. + added new tutorial macro how to train the random forest for energy estimation (macros/optim/rfenergyest.C) + new classes to train the random forest (still in development) mjtrain/MJTrainEnergy, mjtrain/MJTrainDisp, mjtrain/MJTrainSeparation + new tutorial macros for random forest training in macros/train trainenergy.C, traindisp.C, trainseparation.C - mars: now allows to setup a cut in the resource file mars.rc to choose the events to be displayed, eg: Cut.Condition: {0} && {1} Cut.0: MHillas.fSize>100 Cut.1: MHillas.fSize<900 - merpp: Made aware of the new .rep format 200510250. This includes interpretation of the Receiver Board Temperatures (MCameraRecTemp), the discriminator thresholds (MCameraTD) and the disciminator delays (MCameraTD). All of them come with the CC report and are therefor written to the CC tree. - callisto: fixed a bug in the calculation of the arrival times in the Digital Filter. They were all shifted by the same amount fHiGainFirst. This caused an offset in the order of the position of the left border of the extraction window in the times calculated from high-gain and from low-gain. The bug effected only the absolute arrival times. The bug was there since 30.1.2005. - ganymed: ganymed.rc, ganymed_onoff.rc: changed to new cuts trained with 1ES1218 and Crab-data for maximum sigma*log10(excess) - ganymed: In addition to the Hadronness calculator (CalcHadronness) a new option was implemented to estimate Disp (CalcDisp) - ganymed: Implemented two new options which allow to overwrite the default path to search for the sequence files --ins=/magic/sequences and where to search for the image data --ind=/magic/data/star - ganymed: MSrcPosCorrect now allows overwriting of the misfocussing dx/dy from the resource file by MSrcPosCorrect.Dx MSrcPosCorrect.Dy - ganymed: fixed reading the source catalog. Only as many chars as the requested source name had were compared (If a source "1ES1218" and "1ES1218+304" were in the catalog and "1ES1218+304" were requested it could happen that the coordinates of "1ES1218" were read) The source coordinates are now printed in addition to its name to the logging output. - ganymed: changed the background fit in the case of a ThetaSq function from a polynomial to a exponential, this should give a big improvement for on-only analysis' - ganymed/sponde: Calculation of the error of single size-/energy- bins now uses Li/Ma (5) instead of LiMa (17) - sponde: Added a plot E^2*dN/dE - sponde: The energy estimator plot should now show values like they are commonly used. - sponde: Now MMcSpectrumWeight also excepts formulas with two X (a powerlaw with cutoff didn't work before) *** Version 0.9.4.2 (2005/10/01) - general: added new tutorial macro macros/tutorials/threshold.C: how to calculate the threshold - general: added a new game. Start it from the interpreter with MagicJam j; (other games are: MineSweeper, MagicSnake, MagicDomino and MagicReversi) - general: neighbor pixels in MGeoms are now sorted clockwise - merpp: made aware of new format 20050829-0 - callisto: New scale factors from muon analysis, stored in new resource file resources/calibration.rc - callisto: MBadPixelsCalc now raises an error instead of simply stopping the eventloop if something went wrong. This is necessary for the automatic processing - callisto: Implemented a new treatment for the time information developed by S.Ruegamer, this should give much better response than the old very primitive algorithm. This is especially important for bad pixels due to bright stars as Ceta-Tauri (btw: the old treatment was buggy! As neighbor pixels to interpolate the arrival times always the pixels 0 to 5 were taken) - callisto: In addition to the new treatment of arrival times the decision of the treatment whether a pixel contains shower information or not is used to improve the signal interpolation further. Previously interpolated pixels showed a non-zero signal do the peak searching signal extractors. Having a signal pixel beside raised the signal above the cleaning level. Thus the pixel survived cleaning to often but with a too low mean signal. By replacing empty pixels with a gaus (mean and rms from the corresponding Area entries in MPedPhotCam) this effect can be supressed. - callisto: The status "unmapped" (for pixel which cannot be interpolated) got lost when the events were stored by the calibration... fixed. (This was no problem for normal image cleaning because the pixel content was artificially set to 0 not surviving standard cleaning algorithm) - callisto: Fixed a bug which caused the random and peak-search pedestal extracted with an extractor to be exchanged for the first (roughly) 500 events (*Extractor and *ExtractorRndm). (They were simply exchanged in callisto.cc) This bug might have been introduced in Mars 0.9.4 when the order of calculation of the two types of pedestal in callisto got exchanged. The bug only effects the first seconds of data of each sequence. - star: Taking the arrival time of Muons into account the calculation of the parameters could be made independant of the noise (pedestal rms). The dependance was due to the bias of the peak search extractor. Now only a ZA dependamcy is left which is not yet fully understood. - ganymed: The sequences were still not sorted correctly in any case, because they were sorted by the full qualified path name. Now they are sorted by their sequence number. - ganymed: new values for the spark-event-cut - sponde: required missing MEnergyEst from ganymed.root... fixed. *** Version 0.9.4.1 (2005/08/18) - callisto: fixed some problems with the calibration in case of inteleaved events. Therefor the final and some intermediate fits are skipped which would take place on partly filled # histograms and gave wrong results or failed completely. - callisto: If the intermediate finalization of the histograms calculating the mean charge of the calibration signal fails it is counted now and printed in PostProcess of MCalibCalcFromPast. - ganymed: Fixed some bugs which caused problems in On-only mode. Still the false source plot doesn't give reasonable results. *** Version 0.9.4 (2005/08/05) - general: Fixed the ZA binning. It did not correctly fit the MC binning - general: Added a class to correct for the missfocussing in April (MSrcPosCorrect) - general: Random Forest energy estimator should now work properly - general: MHCamera now displays the profiles in deg instead of mm - general: MH::SetPalette offers a lot of new palettes - general: MHillas - the case of CorrXY==0 is now handled properly - general: implemented the possibility to change the line and marker style of a sky-grid drawn by MAstroCatalog - general: Runs in sequences and datasets are now automatically ordered (it is assumed that the order of their filenames correctly represents the order of observations) to ensure correct reading of the subsystem data - general: Runs cannot be added to a sequence twice anymore. Also Sequences cannot be added twice anymore to a dataset. - general: fixed a bug in MAstro::Deg2Hms reported by Abelardo. It gave wrong results by 1./2pi - showplot: got a new option to start a root interpreter, too - mars: now displays a rough estimate of Disp and the third moment - mars: now displays the event time MTime if available - mars: show muon parameters graphically - mars: now the file to open can be given as commandline argument - merpp: Added support for new arehucas version >= 200507190 implementing values for three temperature sensors in the counting house (MCameraAUX) and the name of the HV settings file (MCameraHV). - merrp: Also fixed some problems with wrong versions numbers stated by arehucas and implemented some fixed for old versions (<200407070) - callisto: MCalibrationHiLoCam can now be printed from its context menu, eg in the TBrowser - callisto: fixed logain offset (fgOffsetLoGain) from 1.7 to - 1.39 (MExtractTimeAndChargeSpline) - 1.40 (MExtractTimeAndChargeDigitalFilter) This is important mainly for timing studies. - callisto: Changed limits in MHCalibrationChargeCalc from - -100.125 to -98 (fgChargeHiGainFirst) - 1899.875 to 1902. (fgChargeHiGainLast) - -100.25 to -99 (fgChargeLoGainFirst) - 899.75 to 901. (fgChargeLoGainLast) Introduced new limits: - fgNumLoGainBlackoutLimit: 0.05 - fgLoGainBlackoutLimit: 3.5 - fgLoGainPickupLimit: 3.5 - callisto: The handling of automatic weights for the digital filter has been improved. There are now new calibration weights special for Monte Carlo calibrations. - callisto: Updated Muon scale with latest results (1% difference for most data, 5% for Mar/Apr'05) - callisto: use a new criterium to exclude bad pixels: If the high-gain was saturated and the blackout-events in the low-gain exceed the fNumLoGainBlackoutLimit, the pixel is declared unsuitable. This excludes those pixels which have a saturating high-gain channel, but the low-gain switch does not switch often enough to make the distribution reliable. - callisto: fix a bug counting the number of saturated events. Up to now, the number of saturated slices was counted (which is one for a not too high number), but for some (pathological) pixels, many more slices saturated and produced wrong limits. - callisto: New options in in callisto.rc for MCalibrationRelTimeCalc: + MCalibrationRelTimeCam.CheckFitResults: Yes + MCalibrationRelTimeCam.CheckDeviatingBehavior: Yes + MCalibrationRelTimeCam.CheckHistOverflow: Yes + MCalibrationRelTimeCam.CheckOscillations: Yes - callisto: introduce max. number of events for intercalibration, the rest gets skipped. Default: 4096 The calibration causes too many un-reliable pixels if more than about 5000 events are treated (@500 Hz) because of the mode hopping of the VCSels. However, in the past, some calibration runs have been taken (erroneously) with more than 5000 events, especially the intensity scans where a good precision is needed. - callisto: Set UseExtractorRes to kTRUE, will raise the number of photo-electrons for the spline extractor by 1-2% (correctly). - callisto: The intercalibration is now done using a full f-factor method instead of a simple update. This makes things slower but more reliable in terms of gain-fluctuations and sudden VCSEL gain changes. - callisto: MPedestalY3 now uses the same extraction range as the data as calculated by MPedestalY2 - callisto: A check of the fraction of allowed unsuitable (10%) and unreliable (30%) pixels has been addded when the conversion is calculated from interleaved events - star: fixed a bug which caused MEffectiveOnTime containers not to be written. In the worst case they were skipped almost all, in the best case they were all ok. It depends on how often the new value was assigned just with an event which was skipped later by another task - star: new histograms MHPointing and MHRate - star: New tab (Currents) displaying the time evolution of the mean DC currents - star: New tab (MeanRms) displaying the time volution of the mean Pedestal Rms - star: Output now contains MReportStarguider - star: Improved muon analysis. Due to the absense of a constant for the gaus fit for arc width and the fact that the arcwidth plot was a histogram instead of a profile the resulting psf became pedestal rms dependant - ganymed: added new plot (MHPhi) for wobble mode as described in http://www.astro.uni-wuerzburg.de/results/ringmethod/ - ganymed: corrects now (correctly?) for the misspointing in May/April 05 - ganymed: Two new default templates for ganymed.rc are avilable: ganymed_onoff.rc and ganymed_wobble.rc - ganymed: The first version of MFMagicCuts has been released - ganymed: the Conc1 plot was incorrectly scaled in MHVsSize - ganymed, sponde: There are two new options to determin the number of bins for the signal region (NumBinsSignal) and the number of total bins (NumBinsTotal) in the MHThetaSq histogram - ganymed: optimized palettes for MHDisp - ganymed: Fixed an important bug when using ThetaSq as fit function: The result for the sigma of the gauss(sqrt(x)) fit was a factor sqrt(2) to large - ganymed: The false source plot (MHDisp) is now based on Disp and a background model determined in the first loop is subtracted - ganymed: MFMagicCuts are now available in the cvs. The correct solution for the disp ambiguity problem is now calculated using the third moment. The third moment cut therefor is skipped. - ganymed: Output now contains "Disp [MParameterD]" which sign is already determined by the third moment along the major axis and so its actual sign is aligned along the major axis of the shower. - ganymed: If starguider data is available it is taken into account when calculating the source position. This is especially important for wobble data at high zenith angles and culmination data. - ganymed: If available the starguider data is taken into account as good as it is possible without a starguider calibration. To switch it off add MPointingDevCalc.MaxAbsDev: -1 to your ganymed.rc - sponde: the zenith angle distribution is now weighted instead of choosen by default. This gurantees higher statistics in the highest and lowest energy bins. To switch this behaviour off use... - sponde: now automatically displays the energy threshold *** Version 0.9.3 (2005/06/03) - general: MMcEvt now derived from MMcEvtBasic which should have no influence on compatibility with older camera files - general: Implemented a new option to MReadReports which allows to force reading of the first event of some trees (eg. Drive-tree) before any other tree. - general: Made a fix to MPointingPosCalc which assumes that the run-type is real-data if Process is called before ReInit, such that also the very first Drive-events in a run are treated correctly. - shoplot now displays the filename in the title bar of the window - merpp: new options: --auto-time-start --auto-time-stop which allow to cut updating with slow-control at the start- or (previousle --auto-time only allowed: and) stop-time of the run stored in the runheader. - callisto: changed default of fgFallTimeHiGain in MExtractTimeAndChargeSpline from 1.5 to 0.5. 0.5 was already set as default in callisto_Dec04Jan05.rc - callisto: the digital filter (MExtractTimeAndChargeDigitalFilter) now changes the filename for new weights automatically for cosmics, MC and for different calibration colors. - callisto: a problem with the order of some code cause the name of the weights file in MPedestalY2 to be ignored. Wrongly the calibration_UV weights were used instead of the cosmics weights set in callisto.rc. - callisto: should allow ct1 pulser data when the color is explicitly set also for pretty new runs - callisto: a new option (MCalibrateData.ScaleFactor) allows to introduce an additional scale factor (should be around 1) to adapt for slight deviations in different extractors from the MC calibration. For MC calibrations the scale factor is fixed to 1 - callisto: MFCosmics should handle very high signals a bit more accurate now - callisto: when calculating the mean pedestal rms for different pixel sizes or sectors also kUnsuitableEvt is now taken into account - not only kUnsuitableRun - callisto: '-raw' option is now the default - callisto: A dead pixel check has been implemented in MJPedestalC2. This has the advantage that mean values in the calibration (eg arrival times) are calculated more accuratly. - callisto: In the resource file callisto_Dec04Jan05.rc MJPedestalY2.ExtractWinRight has been reduced from 4.0 to 2.0 - callisto: new Hi-/Lo-Gain intercalibration constants hilocalib_sp1.root and hilocalib_sp1_mc.root - callisto: changed default for MJPedestalY2.MaxEvents from 2000 to 5000 like in callisto_Dec04Jan05.txt - callisto: in MCalibrationChargeCalc the limit fgPheErrLowerLimit has changed from 9.0 to 6.0. This is necessary to exclude two very ringing pixels in September which - when kept - destroy the image cleaning around them (Markus G.) - callisto: (!) The Muon analysis of all data taken so far has suggested that different extractors give slightly different absolute results after calibration, due to there different handling of the calibration- and cosmics pulse shape. Although the over all calibration seems to be a bit to pesimistic (or the MC seems to be a little bit - 3-5% - too much attenuated). There for correction factors have been introduced which correct the calibration constants by 0.956937799 for Digital Filter (callisto.rc) and 0.904159132 for Spline (callisto_Dec04Jan05.rc) calibration. The main advantage is, that both data types can be easily analysed together and compared to the same MC sample. The factors are choosen such, that the reference is now a Monte Carlo sample calibrated with Digital Filter (callisto.rc) - star: fixed a bug which caused the first bin of the histograms vs time to disapear in PostProcess. This gave wrong results on the screen. The output and all following programs not directly accessing the histograms haven't been affected - star, ganymed: Made sure that always the first Drive-tree event is read and Processed before the first data event was read. - ganymed: implemented the possibility to replace the standard false source plot with a different one. For example: If you want to use a Disp based FS plot use the resource: NameHistFS: MHDisp For details about the requirements of these plots look at the corresponding classes - MJOptimize: For On/Off and Wobble optimization MJOptimize has been replaced by MJOptimizeCuts. To use MHThetaSq instead of MHAlpha call MJOptimizeCuts("MHThetaSq"). Make sure in this case MAlphaFitter is setup correctly. For On-Only optimization MJOptimize has been Replaced by MJOptimizeCuts, too. Call RunOn() instead of Run(). For energy estimation MJOptimize has been replaced by MJOptimizeEnergy - sponde: The input MC spectrum can now be weighted to fake a different spectrum. This is done via MMcSpectrumWeight. For more details see the class description and sponde.rc - sponde: The paremeter comparsion plots are not scaled by their entries anymore. Instead the MC plot is scaled by using the result spectrum of the analysis. If the input MC spectrum and the result spectrum has different slopes the absolut normalization is normally wrong. *** Version 0.9.2 (2005/05/20) - general: Changed the default paths for calibrated data and image files. (The implemented access to these files doesn't yet exist) - general: support for MRunIter has been removed from the job classes (use the setter functions of MSeqeunce instead) - general: ProcessFile has been renamed to Process in all job classes, because ProcessFile is missleading - general: The storage of the palette in MHCamera is now possible - general: new bits describing unsuitable and unreliable pixels have been introduced in MBadPixelsPix: kPreviouslyExcluded, kDeadPedestalRms, kFluctuatingArrivalTimes - general: fixed reading of CC-REPORTS (weather data) for Arehucas file versions newer than V200404070 - general: support for cc file versions newer than V200504130. Added support for active loads (MCameraActiveLoad) and central pixel (MCameraCentralPixel) - general: added new histograms for image parameters versus size (MHVsSize) - general: The eventloop now automatically calls PrintStatistics - Status Display: Improved support for printing: + A default can now be set in .rootrc (for more details see MStatusDisplay::PrintPS) + A print dialog is opened so that printer and command line can be canged - showlog: improved such that it handles different verbosity levels more accurate now. This mean you can suppress output when using showlog. - showplot: improved + The new graphics formats have been implemented (pdf, svg, png, jpg and xpm) + Implemented an interface for printing. Because you can change the printing command from the command line you can use all the nice postscript tool. To print a booklet for example call: showplot -b --print --print-cmd="cat %f" filename.root | lpr showplot -b --print --print-cmd="psbook %f | psnup -2 | lpr" filename.root showplot -b --null --print --print-cmd="psbook %f" filename.root > book.ps - callisto: fixed a bug in the recognition of the calibration bit pattern. Concerns only intensity calibration. (The strength of the intensity has been updated in some cases) - callisto: add a filter against PIN Diode events when running over calibration runs since some of the recent calibration runs have been taken with Pin Diode. - callisto: added support for the runs 39942, 39944, 44834, 39941, 39943, 44833 in the calibration (MCalibColorSet) - callisto: MJCalibration.MHCalibrationChargeCam.ProbLimit has been set to 1e-18 in callisto_Dec04_Jan05.rc - callisto: in callisto_Dec04Jan05.rc: set value for MJPedestalY2.MaxEvents from 2000 to 5000 to get better statistics for the calculation of the mean pulse time of the cosmisc - callisto: the charge limit in the calibration has been raised from 2.5 to 4.5 - callisto: new setup read from callisto.rc + MCalibCalcFromPast.fNumEventsDump + MHCalibrationChargeCam.NumHiGainSaturationLimit + MHCalibrationChargeCam.NumLoGainSaturationLimit - callisto: MExtractTimeAndChargeSpline extractor: + The integration ranges were shifted by 0.2 FADC slices to the right. + unreliable handling of floating point values caused different results on different platform or with different compiler options: The new algorithm is numerically exact and more accurate because it doesn't calculate the integration position by multiple times adding the step-size (which results in numerical uncertanties exspecially if multiplied with large numbers) + A lot of fixes have been introduced which effects integrating the spline at the edges of the valid range. In this case any memory was randomly accessed. This behaviour can be tested replacing all MArrayF by TArrayF which perform a range check (but of course they are a lot slower) ! No result obtained with the Spline before can be trusted! Due to random memory access it might by completely random! - callisto: set new defaults in MExtractTimeAndChargeDigitalFilter: + extraction range in the high gain to 4. + weights file to cosmics_weights46.dat - callisto: + introduce the check for fluctuating arrival times. + set charge limit to from 2.5 to 4.5 + introduce asymmetric exclusion due to "deviating number of phes": Default: -9.0 +4.5 + make deviating number of phes unsuitable (see David's findings). - callisto: fixed the display of unsuitable pixels. The old change to a real profile in MHCamera broke it. - callisto: The cosmics filter is used in MJCalibration now independant of the pulser color (formaly it was used only for CT1-pulser data). The threshold of number of max empty pixels has been raised from 2% to 5% in MJCalibration. The maximum fraction of rejected event is 50% otherwise the calibration has failed. The filter now ignores unsuitable pixels. Setup the filter from callisto.rc using "ContCosmics" (see MFCosmics::ReadEnv) - callisto: changed default for fgOffsetFromLogain back from -2.8 to -1.8 in digital filter. - callisto: for the common extractors + MExtractFixedWindow * MExtractTimeAndChargeSlidingWindow * MExtractTimeAndChargeSpline * MExtractTimeAndChargeDigitalFilter the hi- and lo-gain reolution is stored in fResolutionPerPheHiGain and fResolutionPerPheLoGain - callisto: Updated the hi-/lo-gain intercalibration constants hilocalib_sp1.root, hilocalib_df46_mc.root, hilocalib_df4.root, hilocalib_df6.root - callisto: The default lo-gain extraction window for the MExtractTimeAndChargeSlidingWindow extractor has been increased from 6 to 8 to take the stretch of the pusle into account - callisto (!!!): fixed an important bug in the setting of the incoming pedestal pointer to the signal extractor extracting pedestals. This bug caused the pedestals not to be subtracted correctly in the calibration afterwards. The effect was about 10% too high conversion factors for the digital filter and the spline and more than 40% for the sliding window. The bug existed since end of February! (Markus G.) - star: added muon support to star. A new tab "MHMuonPar" is displayed. The lower right plot is an estimate of the point spread function. A reference value is displayed. To get the real PSF you must compare with MC. The setup for the muon analysis is done in star.rc. More informations can be found in MHSingleMuon and MHCalibParCalc - star: The weather data is now displayed in star - star: MEventRateCalc handles the calculation of the event rate more accurate now in case of the start of a new run inside a sequence - ganymed: a bug in MSrcPosCalc has been fixed (The changes were taken from a bugfix of Wolfgang to Loc0LocToCam; Wolfgang: the results are changed only minimally - ganymed: (MJCut and MJOptimize) now displayes the number of excess events versus size. The energy estimation is done in MJSpectrum (sponde) - ganymed: got support for using other variables than Alpha, eg. Theta. Therefor you need a class deriving from MHAlpha which supports this variable (one is already existing: MHTheta, which is now the default in ganymed). It is setup through ganymed.rc - added a full featured spectrum program (sponde) which reads ganymed output and monte carlos and compiles a spectrum *** Version 0.9.1 (2005/04/14) - Fix bug on the arrival time reconstruction when using Digital Filter (in some marginal cases (10%) times were reconstructed shifted by 0.2 slices) - all executables now return 2 where in previous versions -1 has been returned (gave problems with shell-scripts) - the Hi-/Lo-Gain intercalibration for monte carlo files is now also done with a intercalibration input file - a bug in the time fine adjustment of the digital filter has been fixed - a lot of small fixes to calling TPad::Divide with a margin==0 - MStatusDisplay now shows the memory usage - added a memory leak statistic after the eventloop - MHadronness replaced by MParameterD - MEnergyEst replaced by MParameterD - wobble mode can now be switched on from the data-set - switched on bad pixel detection for a pedestal level which is more than 5 times the variance - Fixed default paths to be correct for the new data center - Fixed handling of drive data. The pointing position in now copied to MPointingPos inside star for real and MC events - made sure, that the sequences in a dataset are sorted by their number to ensure the correct synchronization - added all resource files necessary to handle spline extraction of signal for the late 2004 and the early 2005 data - update the reference lines for the december data - changed default for fgHiGainFirst from 2 to 0 in spline extractor This is important for the Dec. and Jan. data where the calibration pulse position changes much. - changed default for fgOffsetFromLogain from -1.8 to -2.8 in digital filter. This corrects only an defective extraction of the MC at low-gain signals lower than 90 phes. - fixed some slowdown in calibrating data with interleaved events from Jan and Dec. As a workaround made the pretty palette the default. The inverse Deep Blue Sea has a bug which slows down long calibration runs a lot. - implemented new values from new starguider report as defined in TDAS00-07 V7.1 (eg SkyBrighness) - Fixed the formerly wrong unit of azimuth and zenith angle deviation in starguider report (If you merpp the same reports with this version you'll get the correct units (arcmin) but a different result than with old versions (wrong units)) - Now the status display can also write PNG, JPEG and XPM (other file formats are still unsupported by root) - added a lot of scripts and macros in directory datacenter used for automatic processing *** Version 0.9 (2005/03/23) - Calibration is now done autmatically into photo-electrons like decided by the Collaboration Board - Reference lines in the display can be read from resource file - Interlaced calibration events can be handled by callisto - Hi-Gain vs. Lo-Gain calibration constants can be calculated and applied in callisto. - class MJCalibTest can be called by callisto - callisto can now run with three data types: rawdata, rootdata, MC - added two classes mreport/MReportStarguider.cc and mreport/MReportStarguider.h for implementing starguider-data - the output of merpp-update now contains starguider information: MReportStarguider and MTimeStarguider - Fixed bug in MHHadronness.cc which made that the displayed Q-factor values were lower than they should. This was more visible for high energy (Size) events. - Made MExtractTimeAndChargeDigitalFilter the default for callisto - added a new loop to callisto to support the correct extraction of the pedestal and pedestal rms through the signal extractor - added class to perform fourier tranformation of a hexagonal structure (MHexagonalFT) - added class to perform fourier tranformation of a hexagonal structure in a tasklist (MHexagonalFTCalc) example: hft.C - added class to enhance the MCerPhotEvt from the Magic camera geometry MGeomCamMagic to a enhanced geometry MGeomCamMagicXT having only small pixels, example: extendcam.C - added possibility to write data to memory (TTree) using MWriteRootFile - added possibility to read a TTree stored only in memory by MReadTree - new classes to deal with the interleaved calibration events: MTriggerPattern, MTriggerPatternDecode and MFTriggerPattern - implemented filters to callisto to skip calibration events - changed callisto to calculate three kinds of pedestals and pedestal rms: + fundamental pedestal (MPedPhotFundamental): extracted directly from the slices by statistics + pedestal from extractor (MPedPhotFromExtractor): extracted with the signal extractor without randomization + random pedestal from extractor (MPedPhotFromExtractorRndm): extracted with the signal extractor with randomization (extraction window is randomly fixed) The three kind of pedestal is not yet implemented (for speed reasons) as long as nobody really needs it: + pedestal from extractor with randomizatiuon (MPedPhotFromExtractorRndm): extracted with the signal extractor with randomization - callisto now finds the pulse position in the data automatically - implemented data reduction in calibrated data by reducing the precision of the stored floating point values (pedestal, rms and signal) to roughly 0.5% - fixed showplot to make file format conversion (eg. converting a status display stored in a root file into a postscript file) in batch mode possible: showplot -b --save-as-ps[=outfile.ps] infile.root - Allow class names as part of filter rules, eg (MFSupercuts) && (MHillas.fSize>100) - fixed a lot of stuff to allow all programs to process MonteCarlo camera files. - enhanced possibility to debug reading of resource file - MDataChain should handle priorities of operator more accurate now - completely revised the container in which the signal is stored MCerPhotEvt/Pix, MArrivalTime --> MSignalCam/Pix * the new implementation is faster and * needs less storage space - FIRST version which can process Monte Carlos through the whole chain of programs (callisto, star, etc) - implemented new image parameters for the border length of the shower image (MNewImagePar2) - implemented wobble-mode in ganymed - new class (MJOptimize) taking care of all optimization processes *** Version 0.8.6 (2004/10/05) - New combined signal and time extractor MExtractTimeAndChargeDigitalFilter - The Report for the trigger section in the CC run summary has been updated, and now the IPRs (Individual Pixel Rates) are available. - new macros for database interaction: filldotrun.C, filldotrbk.C - added new program which can convert colored output which was redirected into a file back into colored text (for example to display it with more): showlog - added new program to display an MStatusArray of plots (stored with MStatusDisplay) from a file: showplot - Added support for Sequences (MSequence). Sequences are blocks of run files containing the same calibration and belonging to the same source - Added a new task (MTaskEnv) which can be used in setup files to switch between different tasks (for example to choose a signal extractor) - Implemented automatic file splitting in MWriteRootFile - After image cleaning an island index is assigned to all used pixels. The index corresponds to the order of the islands in size. - added a cleaning which takes signal height _and_ arrival time into account: probability cleaning (for more details see MImgCleanStd) - added a cleaning which takes takes the absolute number of photons times the area ratio as cleaning level (for more details see MImgCleanStd) - Changed calculation of image parameters such, that it can be done for all used pixels or the pixels with a defined island index only - implemented new image parameters displaying the number of islands, saturated hi-gain and lo-gain pixels (MImagePar, MHImagePar) - event display in executable changed to support also calibrated files (done with MJCalibrateSignal) - added program doing the calibration and the signal extraction and signal calibration: callisto Most part of the setup is done by a resource file: callisto.rc - implemented support for pixels with negative IDs (Raw file format version 4) - implemented an new option in merpp (--auto-time) to get the time range for cc and/or caco data from the run header of the raw data - New star-program (star and MJStar). Taking calibrated data from callisto/MJCalibrateSignal as input. The setup is done through a resource file: star.rc - Added possibility to setup the eventloop in the mars-executable Camera Display by a resource file: mars.rc - The the mars-executable Camera Display can now also read calibrated data files written by callisto/MJCalibrateSignal - Added a new class which can calculate the source position in the camera from a pointing model known to be correct and the pointing model used for observations (MSrcPosFromModel) - added a new version of the class calculating the effective on-time MHEffectiveOnTime. It unifies the old classes MHEffOnTime, MHEffOnTimeTime, MHEffOnTimeTheta, MHTimeDiff, MHTimeDiffTime and MHTimeDiffTheta. - added the possibility to count how often a signal is above (or below) a certain threshold in MHCamEvent and MHCamEventRot (this can replace MHTriggerLvl0) - added ore convinient ways to set the axis-titles of your histograms in your macro to some MH-classes like: MH3, MHVsTime, MHSectorVsTime, MHPixVsTime, MHVsTime, MHCamEvent and MHCamEventRot *** Version 0.8.5 (2004/08/06) - new Signal Extractors: MExtractFixedWindowSpline and MExtractAmplitudeSpline - implementes interleave in merpp to be able to merpp parts of a file - implemented force-functionality to merpp - star display to display star catalogs (MAstroCatalog) - star display to 'mirror' stars to the camera (MAstroCamera) - implemented a new cleaning option which allows cleaning scaled with the real ratio of the rms depending on the pixel size, not only the square root of the pixelsize (MImgCleanStd, MCameraData) - removed obsolete MBlind* classes - Signal extractor taking the AB flag into account implemented (this makes an odd number of slices for signal extraction possible (MExtractSignalABcorr) - implemented a class extracting the pedestal from the raw-data (events) itself using empty lo-gain (MpedCalcFromLoGain) - Added mean values to MPedPhotCam - Added Makefile for Darwin (this OS is NOT officially supported!) *** Version 0.8.4 (2004/04/19) - new fast arrival time extractor using cubic splines: MExtractTimeFastSpline - implementes multi-argument support in MDataChain ("pow(a, b)") - implemented double reference support in MDataChain ("MCameraLV.fPowerSupplyA.fVoltagePos5V") - added support in MF for expressiond like "MHillas.fWidth<2*2 - added a new classes storing the pedestals in units of photons: MPedPhotPix, MPedPhotCam - added support for DC current files from the camera control - added support for start- and stop-time when merpping report files - added MReportCC storing the weather data from the CC-REPORT - added class to fill trainings and test matrices (MTFillMatrix) - added a filter performing a software trigger (MFSoftwareTrigger) - Added classes to perform parts of the standard analysis (Jobs): + MJPedestals + MJCalibration + MJExtractSignal Note: All of them are preliminary! - Added Iterator to iterate over files giving only the run-number - Added class (MHSectorVsTime) and example (sectorvstime.C) to plot the evolution of a sector vs time *** Version 0.8.3 (2003/12/05) - adapted Random Forest classes to allow the use with MC multi-telescope files which can be produced with the coming camera version 0.7. - added classes to read and interprete central control report files (Directory: mreport, Base-Class: MReport, Reader: MReportFileRead, ...) - enhanced merpp (the executable) to support .raw and .rep files. - added classes for light calibration (MCalibration* and MHCalibration*) by Markus Gaug. Further work has to be and will be done soon. - Added a preliminary 'synchronizer' (MReadReports) which will replace MReadMarsFile as soon as it is finished. - Added a tutorial macro demonstrating how report files are merpped and how they can be read from the root file in the correct order of time (readrep.C) - Added a generalized histogram (similar to MH3) called MVsTime which allows to plot variables (or rules - MDataChain - of variables) vs time. For an example have a look at tempvstime.C. - Changed the name of the event trees: + Events --> Events + PedEvents --> Pedestals + CalEvents --> Calibration - changed name of MTime in the event trees from MRawEvtTime to MTime - added displaying the sector indices to the mars event display - Magic Online Analysis (MOnA) implemented in a first version (see mona.cc, MOnlineDump and MOnlineDisplay) - added classes to calculate event rate (preliminary: MEventRateCalc, MEventRate) - added new executable 'readdaq' to read *.raw files from the DAQ directly - added classes dealing with the telescope pointing position (MPointing*) - implemented the 'final' Mars time stamp based on some experiences with the new 'Synchonizer' *** Version 0.8.2 (2003/11/10) - accelerated standard analysis by a factor of 6-8 ... + doing precalculations in MGeomCam for the pixel area ratio + creating a look up table for the single pixels in MCerPhotEvt - added task to calculates weights in case you want to 'change' the energy spectrum of a monte carlo file (MMcWeightEnergySpecCalc - Great work from Marcos Lopez Moya) - added a new executable star which implements the star.C macro as precompiled executable. Currently a flexible setup is not possible, but a 'input card' setup will follow. - Starting to implement Multi-Telescope-Support based on the upcomming camera version 0.7. The base for a general support is implemented and the star-functionality is proven to work. - Replaced Event-Display in and Camera-Display in the Mars GUI executable by a more convinient display base on MStatusDisplay. - fixed the algorithm for the blind pixel treatment (MBlindPixelCalc) *** Version 0.8.1 (2003/10/20) - added signal subtraction for pure on data by means of fitting the background in the off region or by performing a combined signal/background fit. Provides necessary histograms for obtaining energy spectra and a light curve. - added classes to perform and study the selection of the 2nd Level Trigger on MC data (example in triglvl2.C macro) - added pedestal calculation - implemented "democratic cleaning" (tail cut value proportional to pixel area) according to Wolfgang's suggestion. - added Sigmabar treatment (calculation and basic histogramming) - added basic routines to apply padding - added first implementation of MARS-based source visibility plotter (needs to be linked against slalib, preliminary version) - enhanced functionality of data chains: random numbers, conversion functions and access to MHMatrix objects - fixed some bugs in the CT1 Preproc file reader, which gave wrong numbers under certain circumstances (runs with 0 events included) - fixed a bug in the general filter MF (didn't work on some systems at all) - fixed a bug in chaining files, which caused the analysis to crash or ignore files - implemented more geometry classes describing the parameters used to simulate the PMT camera - added new Monte Carlo classes containing the setup of the different programs in the MC chain. - added a (preliminary) general task to evaluate chi-square of a given parameter in an eventloop. - first implementation of a container describing the observatory location (Long, Lat, etc) - added Random Forest - method for g/h-separation - made compatible with the latest PRO version of root (3.04/02 and 3.05/07) (this means, that it is compiling, but not yet fully tested) - added a new status display which can show the present status of histograms while an eventloop is running (MStatusDisplay, an example can be found at status.C) - reorganized directories: classes describing the image --> mimage classes containing Monte Carlo Histograms --> mhistmc classes for Random Forest method --> mranforest - added (event-)weights to fill histograms - colors in logging output to screen - changes to the Image Parameter declaration: + moved fConc, fConc1 from MHillasSrc to MNewImagePar + moved fNumUsedPix, fNumCorePix from MHillas to MNewImagePar + MHillasExt now derives from MParContainer instead of MHillas --> Files written with the old definition are more or less unreadable - reading of reflector files - display data from reflector files in the camera - implemented currents (and display them in the camera) - logarithmic scale in camera - added class to iterate through directory contents (MDirIter) *** Version 0.8 (2002/11/18) - added all subdirectories as Include-Paths for ACLIC (s. rootlogon.C) - corrected 48(!) wrong entries in the Next Neighbor table of the Magic Camera (all in the inner part of the outer ring, mostly missing a single NN) - Fixed a bug in the table describing the Next Neighbours of the CT1 camera (a pixel 127 doesn't exist and the pixel 126 didn't have any neighbour) - changed trigrate.C: now it calculates the pure NSB triggers from a camera file (generated with no showers), so there is no need to introduce them by hand in the BgR array (for more details please ask Abelardo) - added MHHadronness (and MHadronness) as a general facility to evaluate the quality of a gamma-hadron seperation method - changed MWriteAsciiFile to accept rules (MDataChain) - Calls to MWriteAsciiFile::AddContainer and MWriteAsciiFile::AddRule must be replaced by calles to MWriteAsciiFile::AddColumn and MWriteAsciiFile::AddColumns. Be carefull, the arguments have slightly changed. - Implemented generalized event-matrices (one row per event) (MHMatrix) - implemented the one dimensional composite probabilities (MHCompProb, MCompProbCalc, comprob.C) - implemented the Multidimensional Distances (Next Neighbours, Kernel) (MMultiDimDistCalc, multidimdist.C, multidimdist2.C, MHMatrix) - Added a camera display displaying the pixel numbers to the event display gui. - Added Monte Carlo Informations to event display gui - Changed the camera display to display the pixel numbering - Added three buttons to the camera display to change the palette - Added the number of used and core pixels after image cleaning to MHillas - Changed the algorithm used in MHillas according to TDAS 02-03 - Changed the Alpha range according to TDAS 02-03 to [-90°,90°] - Changed the algorithm used in MHillasSrc according to TDAS 02-03 - Added fCosDeltaAlpha to MHillasSrc - The numbers of photons used to calculate fConc and fConc1 in MHillasExt are now scaled with the pixel size, so that one get a four times smaller value for the bigger pixels in the outer ring. - added new task to smooth the camera contents (MCameraSmooth) - added possibility to use interpolated pixel values for blind pixels instead of removing it completely from the analysis - Implemented the possibility to save the whole eventloop with its setup to a file. This information can be read and from it you can (re)create a Macro. See MEvtLoop::Read, MEvtLoop::Write and MEvtLoop::MakeMacro. If you find something not working, please report - this stuff is still in a beta phase. - MBlindPixelCalc set all Ceta-Tauri pixels to unused not only for the file having crab starfield, but also for all following files - fixed - MTaskList::PrintStatistics can now be instructud to print also the title, too: use PrintStatistics(0, kTRUE) - Changed the image cleaning so that pixels with to many 'used' neighbors are left used (to get rid of 'holes' in events) - Introduced more output to the camera displays - Added an array of histograms (eg one hist per run), MHArray - Added a _preliminary_ version of the reader for CT1 PreProc files (MCT1ReadPreProc) - Fixed the error calculation of MHMCollectionArea and MHMcIntRate (thanks to Raquel) - added the first energy estimator (MEnergyEstParam, estimate.C, estfit.C) using a parametrization - Added some new Monte Carlo paremeter containers used to store setup information from the MC chain (MMcConfigRunHeader, MMcCorsikaRunHeader, MGeomPMT, MGeomMirror) *** Version 0.7 (2002/04/30) - added a bugfix to MCerPhotCalc. In older camera versions (<=40) the pedestal mean value was saved incorrectly. For files from this versions we substract 0.5 from the pedestal mean. WARNING: This may effect your results, so don't wonder... - First implementation of an algorithm using only triggered events for the collection area calculation - Ascii Output can now also be used for parameter containers which doesn't overload MParCointainer::AsciiWrite - The Ascii Output is now also capable of writing single data members of one container - You are now able to change the order of the values written to the ascii file - You can now specify a conversion factor for each data member written to an ascii file. This may be usefull to change the units of the data member (eg. degrees instead of millimeters in case of the hillas parameters) - Replaced old MHillas by a new structure which allows you to extend the parameters stored in MHillas very easily: see MHillas and MHillasExt - Added classes to handle source dependancy of image parameters: see MHillasSrc - Added container (MBinning) to have a standard input for the binning in different histograms (eg. the Energy bins should be the same in all histograms) - Changed Hillas histograms from mm to deg - Added the flexible binning to the hillas histograms - Added a filter for the alpha parameter (MFAlpha) - It is now possible to write single data members of a class object to an output stream instead of the whole container only - Added a generalized filter for a data member: MFDataMember filter("MHillas.fWidth", '<', 0.5); - Added a generalized Filter parser for more difficult filter rules MF filter("MHillas.fWidth<0.5 && MHillas.fLength>0.5"); - Added new Monte Carlo histograms: MHMcEnergyImpact and MHMcEfficiency - Added many new histograms needed for the flux calculation. - Added a generalized histograms which can fill and show up to three data members in either a one-, two- or three-dimensional histogram, eg: MH3 mh3("MHillas.fWidth", "MHillas.fLength"); - Added: * calculation of as a function of Theta (MHThetabarTheta) * calculation of as a function of time (MHThetabarTime) they are needed in the flux calculation in order to select for a given bin in Theta (or time) the appropriate effective collection area, which is assumed to be given as a function of Theta and the true energy - Added calculation of the migration matrix in the energy (MHMcEnergyMigration): the migration matrix describes the migration from the true (E_true) to the estimated energy (E_est); it is needed to determine the distribution of E_true from the measured distribution of E_est by unfolding - changed the color palette in the camera display to DeapSea. *** Version 0.6 (2002/01/15) - Introduce the option of disable pixels (MBlindPixels and MBlindPixelCalc) for the analysis (eg MHillasCalc) to be able to deal with Star Field NSB. - Fixed a bug in the pedestals substraction - Introduced verbosity levels - Introduced a task (MReadMarsFile) which reads the RunHeader tree, too. - Fixed several bugs in MFTriggerLvl1 which caused to filter not to work correctly (thanks to Abelardo) - Introduced correct treatment of the diffuse Night Sky Background and NSB (MMcPedestalNSB) - Corrected treatment of the electronic noise (MMcPedestalCopy) - Introduced MMcRunHeaders which contains monte carlo run informations - Added a 'Print'-Task (MPrint) which calls the Print function of a parameter container for each event - Removed MHtml (was replaced by THtml of root 3.02) in dohtml.C - changes to be more efficient with root 3.02/06 - root 3.02/06 fixes: + the memory leak when reading MRawEvtData + loosing more time than necessary to update the progress bar - MWriteAsciiFile is now capable of writing more than one container in a line. For example: To be able to write Monte Carlo and Hillas values (energy and alpha) in one line. *** Version 0.5 (2001/11/06) - Added new GUI functionality (Analysis) - Added a camera display to be able to display events in the camera together with the calculated hillas ellipse - Added a 'Clone'-Task (MClone) which can clone a parameter container object at any state of the analysis, so that the output are several states - Fixed a bug in the collection area error calculation (Thanks to Ciro and Abelardo) - Fixed a bug which causes merpp to crash in some environments - Implemented auto enabling scheme for Branches to speed up reading a lot (see MReadTree and MTask) - Fixed a bug in the Histogram classes which caused histograms to be written to a file by MWriteRootFile without request - changed the object I/O from the old stylish root I/O to the new 'auto evolution scheme' This was done only for classes which are not yet used in Monte Carlo files, so that these files are still readable. - Added support for a progress bar in MEvtLoop and MReadTree (see the Analysis Window in Mars for an example) - Fixed a bug in the package creation which disturbed the conversion between a mars version unpacked from a tar file and the repository. - Changed the code to writer merpped (converted into root format) raw files, to get faster (around 10%) *** Version 0.4 (2001/09/20) - This release is made to compile on a root version >= 3.00 - Fixed a bug which causes MReadTree to read the first file only - Added a task to compute the trigger rate (MMcTriggerRateCalc) - Added a task to write a container to an Ascii file (MWriteAsciiFile) - Added a task to write several container to a root file (MWriteRootFile) - Added calculation of the Enegry Threshold (MMcThresholdCalc) - Added calculation of the collection area (MMcCollectionAreaCalc) - fixed some bugs in the Hillas calculation - added filters to be able to control the task execution dependent on a parameter (for example: the number of level 1 triggers in a MC-file) *** Version 0.3 (2001/04/23) - Many demo macros added - MCT1ReadAscii is now able to handle more than one file (s. ::AddFile) - Hillas Calculation added - Standard image cleaning available - MReadTree is now able to handle more than one file (Remark: of the same structure) - Now we are able to display events in a first version of the Camera event display. To do this we must run the macro "macros/readCT1.C" to read data from CT1. *** Version 0.2 (2001/01/24) - First Implementation of a Gui to read the raw data. Start the gui with the command mars. *** Version 0.1 (2000/12/20) - First official release 0.1 - Changes: + changed calling style of MRawPixelIterator from do...while to while-loop