Changeset 7205


Ignore:
Timestamp:
07/21/05 17:45:25 (19 years ago)
Author:
tbretz
Message:
*** empty log message ***
Location:
trunk/MagicSoft/Mars
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/MagicSoft/Mars/Changelog

    r7204 r7205  
    6969   * ganymed_onoff.rc, ganymed_wobble.rc:
    7070     - added
     71
     72   * ganymed.rc:
     73     - updated
    7174
    7275
  • trunk/MagicSoft/Mars/NEWS

    r7204 r7205  
    9393     photo-electrons for the spline extractor by 1-2% (correctly).
    9494
     95   - callisto: The intercalibration is now done using a full f-factor
     96     method instead of a simple update. This makes things slower but
     97     more reliable in terms of gain-fluctuations and sudden VCSEL gain
     98     changes.
     99
     100   - callisto: MPedestalY3 now uses the same extraction range as the data
     101     as calculated by MPedestalY2
     102
     103   - callisto: A check of the fraction of allowed unsuitable (10%) and
     104     unreliable (30%) pixels has been addded when the conversion is
     105     calculated from interleaved events
     106
    95107   - star: fixed a bug which caused MEffectiveOnTime containers not to
    96108     be written. In the worst case they were skipped almost all, in the
     
    103115   - star: corrects now (correctly?) for the misspointing in May/April 05
    104116
     117   - star: Output now contains MReportStarguider
     118
    105119   - ganymed: Two new default templates for ganymed.rc are avilable:
    106120              ganymed_onoff.rc and ganymed_wobble.rc
    107121
    108    - ganymed: The first version of MFMagicCuts have been released
     122   - ganymed: The first version of MFMagicCuts has been released
    109123
    110124   - ganymed: the Conc1 plot was incorrectly scaled in MHVsSize
     
    116130   - ganymed: optimized palettes for MHDisp
    117131
    118    - ganymed: MPedestalY3 now uses the same extraction range as the data
    119      as calculated by MPedestalY2
    120 
    121    - ganymed: A check of the fraction of allowed unsuitable (10%) and
    122      unreliable (30%) pixels has been addded when the conversion is
    123      calculated from interleaved events
    124 
    125132   - ganymed: Fixed an important bug when using ThetaSq as fit function:
    126133     The result for the sigma of the gauss(sqrt(x)) fit was a factor
    127134     sqrt(2) to large
    128135
    129    - ganymed: The intercalibration is now done using a full f-factor
    130      method instead of a simple update. This makes things slower but
    131      more reliable in terms of gain-fluctuations and sudden VCSEL gain
    132      changes.
    133 
    134136   - ganymed: The false source plot (MHDisp) is now based on Disp
    135      and a background model determied in the first loop is
     137     and a background model determined in the first loop is
    136138     subtracted
     139
     140   - ganymed: MFMagicCuts are now available in the cvs. The correct
     141     solution for the disp ambiguity problem is now calculated using
     142     the third moment. The third moment cut therefor is skipped.
     143
     144   - ganymed: Output now contains "Disp [MParameterD]" which sign is
     145     already determined by the third moment along the major axis and
     146     so its actual sign is aligned along the major axis of the shower.
    137147
    138148   - sponde: the zenith angle distribution is now weighted instead of
  • trunk/MagicSoft/Mars/ganymed.rc

    r6988 r7205  
    3232# Use this to setup binnings. For more details see: MBinning::ReadEnv
    3333# -------------------------------------------------------------------------
    34 #BinningAlpha.Raw:        9   0    90
    35 #BinningFalseSource.Raw: 30  -1.2  1.2
    36 #BinningEnergyEst.Raw:   25   10   1000000 log
    37 #BinningTheta.Raw:       50   0    60      cos
     34BinningAlpha.Raw:        36    0    90
     35BinningFalseSource.Raw:  91   -1.5  1.5
     36#BinningTheta.Raw:       50    0    60      cos
     37BinningWidth.Raw:        50    0    1
     38BinningLength.Raw:       25    0    1
     39BinningDist.Raw:         25    0    2
     40BinningMaxDist.Raw:      25    0    2
    3841
    3942# -------------------------------------------------------------------------
     
    4750#MAlphaFitter.ScaleMax:             80
    4851#MAlphaFitter.PolynomOrder:         2
    49 #MAlphaFitter.ScaleMode:            kSignificance
     52#MAlphaFitter.ScaleMode:            None
    5053
    5154# -------------------------------------------------------------------------
     
    5558#MJCut.NameHist: MHAlpha
    5659
     60# -------------------------------------------------------------------------
     61# To get a meaningfull false source plot in wobble mode use magic cuts
     62# and the following two lines. Remark: You'll get worse results
     63# for you significance
     64# -------------------------------------------------------------------------
     65MJCut.NameHistFS: MHDisp
     66#Cut1.HadronnessCut: Area
     67
     68MHDisp.Smearing: 0.03
     69#MHDisp.Wobble:   Yes
    5770
    5871# -------------------------------------------------------------------------
     
    6982Cut3.Inverted: Yes
    7083
    71 #Cut0.Condition: MCameraCooling.fTempCenter < 55
     84# Get rid of triangular events...
     85Cut0.Condition: ({0} || {1}) && {2} && {3} && {4} && {5}
     86Cut0.0: MImagePar.fNumSatPixelsHG < 1
     87Cut0.1: MHillas.GetArea*(MGeomCam.fConvMm2Deg^2) > (0.0014*MImagePar.fNumSatPixelsHG) + 0.02
     88Cut0.2: MNewImagePar.fNumUsedPixels>5
     89Cut0.3: MNewImagePar.fLeakage1 < 0.3
     90Cut0.4: MImagePar.fNumSatPixelsLG<2
     91Cut0.5: MImagePar.fNumIslands<3
    7292
    73 # Get rid of triangular events...
    74 Cut0.Condition: {0}
    75 Cut0.0: log10(MNewImagePar.fConc1) < (-0.467)*log10(MHillas.fSize) +0.75
     93# ---------- SETUP FOR ONOFF-MODE -----------
     94MAlphaFitter.BackgroundFitMin: 0.137
     95MAlphaFitter.BackgroundFitMax: 0.64
     96MAlphaFitter.PolynomOrder: 1
     97MAlphaFitter.ScaleMode: Background
     98MAlphaFitter.SignalFunction: ThetaSq
    7699
    77 # If you could setup MFEventSelector by resource file you could use it here
    78 # To produce trainings and test sample use:  "{MMcEvt.fEvtNumber%2}>0.5"
    79 #Cut1.Condition: <MFSupercuts>
    80 #Cut1.Param0:  0.056
    81 #Cut1.Param8:  0.222
    82 #Cut1.Param16: 0.042
    83 #Cut1.Param24: 0.087
    84 #Cut1.Param32: 0.33
     100Cut1.Condition: MFMagicCuts
     101Cut1.ThetaCut: None
     102Cut1.Param0:  1.3245
     103Cut1.Param1:  0.189
     104Cut1.Param2:  0.230
     105Cut1.Param3:  5.320
     106Cut1.Param4:  0.100
     107Cut1.Param5: -0.0636
     108Cut1.Param6:  8.2957
     109Cut1.Param7:  0.8677
    85110
    86 Cut1.Condition: {0} && {1} && {2} && {3} && {4}
     111# ---------- SETUP FOR WOBBLE-MODE -----------
     112#MAlphaFitter.ScaleMode: none
     113#MAlphaFitter.BackgroundFitMin: 0.09
     114#MAlphaFitter.BackgroundFitMax: 0.25
     115#MAlphaFitter.SignalFunction: ThetaSq
     116#Cut1.Condition: MFMagicCuts
     117#Cut1.ThetaCut: Off
     118#Cut1.Param0:  1.221
     119#Cut1.Param1:  0.233161
     120#Cut1.Param2:  0.234233
     121#Cut1.Param3:  5.23611
     122#Cut1.Param4:  0.109593
     123#Cut1.Param5: -0.095321
     124#Cut1.Param6:  13.425
     125#Cut1.Param7:  1.04343
    87126
    88 Cut1.0: MHillas.fLength*MGeomCam.fConvMm2Deg > 0.0063*log10(MHillas.fSize)+0.0974
    89 Cut1.1: MHillas.fLength*MGeomCam.fConvMm2Deg < 0.0040*log10(MHillas.fSize)+0.1791
    90 Cut1.2: MHillas.fWidth *MGeomCam.fConvMm2Deg > 0.0067*log10(MHillas.fSize)+0.0511
    91 Cut1.3: MHillas.fWidth *MGeomCam.fConvMm2Deg < 0.0050*log10(MHillas.fSize)+0.1203
    92 Cut1.4: MHillas.fSize>95
    93 
    94 Cut2.Condition: MHillasSrc.fDist*MGeomCam.fConvMm2Deg>0.55
    95 
    96 Cut3.Condition: abs(MHillasSrc.fAlpha)<10
     127# Be carefull: The spectrum might be done with a different binning
     128# This might change the scale factor
     129MHThetaSq.NumBinsSignal:   3
     130MHThetaSq.NumBinsTotal:   75
    97131
    98132# -------------------------------------------------------------------------
     
    101135#MHFalseSource.DistMin: 0.55
    102136#MHFalseSource.DistMax: 0.55
    103 #MHFalseSource.DWMin: 0.55
    104 #MHFalseSource.DWMax: 0.55
     137#MHFalseSource.DWMin:   0.55
     138#MHFalseSource.DWMax:   0.55
    105139
    106140# -------------------------------------------------------------------------
  • trunk/MagicSoft/Mars/mpointing/MPointingDevCalc.cc

    r7203 r7205  
    2727// MPointingDevCalc
    2828//
     29// Calculates the pointing deviation from the starguider information.
     30//
     31// There are some quality parameters to steer which are the valid
     32// starguider data points:
     33//  * MPointingDevCalc.NumMinStars: 8
     34//    Minimum number of identified stars required to accep the data
     35//  * MPointingDevCalc.NsbLevel:    3.0
     36//    Minimum deviation (in rms) from the the mean allowed for the measured
     37//    NSB (noise in the ccd camera)
     38//  * MPointingDevCalc.NsbMin:      30
     39//    - minimum NSB to be used in mean/rms calculation
     40//  * MPointingDevCalc.NsbMax:      60
     41//    - maximum NSB to be used in mean/rms calculation
     42//  * MPointingDevCalc.MaxAbsDev:   15
     43//    - Maximum absolute deviation which is consideres as valid (arcmin)
     44//
     45// Starguider data which doens't fullfill this requirements is ignored.
     46// If the measures NSB==0 (file too old, starguider didn't write down
     47// these values) the checks based on NSB and NumMinStar are skipped.
     48//
     49// The calculation of NSB mean and rms is reset for each file (ReInit)
     50//
     51//
    2952// Input Container:
    3053//   MReportStarguider
     
    129152    if (nsb>0)
    130153    {
    131         if (nsb>30 && nsb<60)
     154        if (nsb>fNsbMin && nsb<fNsbMax)
    132155        {
    133156            fNsbSum += nsb;
     
    141164            const Double_t sq  = fNsbSq /fNsbCount;
    142165
    143             const Double_t rms = TMath::Sqrt(sq - sum*sum);
    144 
    145             if (nsb<sum-3*rms || nsb>sum+3*rms)
     166            const Double_t rms = fNsbLevel*TMath::Sqrt(sq - sum*sum);
     167
     168            if (nsb<sum-rms || nsb>sum+rms)
    146169            {
    147170                fSkip[2]++;
     
    150173        }
    151174
    152         if (fReport->GetNumIdentifiedStars()<8)
     175        if (fReport->GetNumIdentifiedStars()<fNumMinStars)
    153176        {
    154177            fSkip[3]++;
     
    166189
    167190    // Sanity check... larger deviation are strange and ignored
    168     if (dev>0.25)
     191    if (dev*60>fMaxAbsDev)
    169192    {
    170193        fSkip[4]++;
     
    213236    *fLog << GetDescriptor() << " execution statistics:" << endl;
    214237    PrintSkipped(fSkip[1], "Starguider deviation not set, is exactly 0/0");
    215     PrintSkipped(fSkip[2], "NSB out of 3 sigma range");
    216     PrintSkipped(fSkip[3], "Number of identified stars < 8");
    217     PrintSkipped(fSkip[4], "Absolute deviation > 0.25deg");
     238    PrintSkipped(fSkip[2], Form("NSB out of %.1f sigma range", fNsbLevel));
     239    PrintSkipped(fSkip[3], Form("Number of identified stars < %d", fNumMinStars));
     240    PrintSkipped(fSkip[4], Form("Absolute deviation > %.1farcmin", fMaxAbsDev));
    218241    *fLog << " " << (int)fSkip[0] << " (" << Form("%5.1f", 100.*fSkip[0]/GetNumExecutions()) << "%) Evts survived calculation!" << endl;
    219242    *fLog << endl;
     
    221244    return kTRUE;
    222245}
     246
     247// --------------------------------------------------------------------------
     248//
     249// MPointingDevCalc.NumMinStars: 8
     250// MPointingDevCalc.NsbLevel:    3.0
     251// MPointingDevCalc.NsbMin:      30
     252// MPointingDevCalc.NsbMax:      60
     253// MPointingDevCalc.MaxAbsDev:   15
     254//
     255Int_t MPointingDevCalc::ReadEnv(const TEnv &env, TString prefix, Bool_t print)
     256{
     257    Bool_t rc = kFALSE;
     258    if (IsEnvDefined(env, prefix, "NumMinStars", print))
     259    {
     260        SetNumMInStars(GetEnvValue(env, prefix, "NumMinStars", fNumMinStars));
     261        rc = kTRUE;
     262    }
     263    if (IsEnvDefined(env, prefix, "NsbLevel", print))
     264    {
     265        SetNsbLevel(GetEnvValue(env, prefix, "NsbLevel", fNsbLevel));
     266        rc = kTRUE;
     267    }
     268    if (IsEnvDefined(env, prefix, "NsbMin", print))
     269    {
     270        SetNsbMin(GetEnvValue(env, prefix, "NsbMin", fNsbMin));
     271        rc = kTRUE;
     272    }
     273    if (IsEnvDefined(env, prefix, "NsbMax", print))
     274    {
     275        SetNsbMax(GetEnvValue(env, prefix, "NsbMax", fNsbMax));
     276        rc = kTRUE;
     277    }
     278    if (IsEnvDefined(env, prefix, "MaxAbsDev", print))
     279    {
     280        SetMaxAbsDev(GetEnvValue(env, prefix, "MaxAbsDev", fMaxAbsDev));
     281        rc = kTRUE;
     282    }
     283
     284    return rc;
     285}
  • trunk/MagicSoft/Mars/mpointing/MPointingDevCalc.h

    r7203 r7205  
    2727    TArrayI  fSkip;                //! Counter for execution statistics
    2828
     29    UInt_t  fNumMinStars;          // Minimum number of identified stars
     30    Float_t fNsbLevel;             // Minimum deviation from mean in sigma
     31    Float_t fNsbMin;               // Minimum NSB to calc mean and rms
     32    Float_t fNsbMax;               // Maximum NSB to calc mean and rms
     33    Float_t fMaxAbsDev;            // [arcmin] Maximum considered absolute deviation
     34
    2935    // MPointingDevCalc
    3036    Int_t ProcessStarguiderReport();
     37
     38    // MParContainer
    3139
    3240    // MTask
     
    3745
    3846public:
    39     MPointingDevCalc() : fReport(0), fDeviation(0), fSkip(5)
     47    MPointingDevCalc() : fReport(0), fDeviation(0), fSkip(5), fNumMinStars(8),
     48        fNsbLevel(3), fNsbMin(30), fNsbMax(60), fMaxAbsDev(15)
    4049    {
    4150        fName  = "MPointingDevCalc";
     
    4352    }
    4453
     54    void SetNumMinStars(UInt_t n)  { fNumMinStars=8; }
     55    void SetNsbLevel(Float_t lvl)  { fNsbLevel=lvl;  }
     56    void SetNsbMin(Float_t nsb)    { fNsbMin=nsb;    }
     57    void SetNsbMax(Float_t nsb)    { fNsbMax=nsb;    }
     58    void SetMaxAbsDev(Float_t max) { fMaxAbsDev=max; }
     59
    4560    ClassDef(MPointingDevCalc, 0) //Task calculating the pointing deviation
    4661};
  • trunk/MagicSoft/Mars/mpointing/MPointingPos.h

    r7178 r7205  
    66#endif
    77
    8 // FIXME: Should not be here...
     8// FIXME: Should not be here... (ZdAz)
    99#ifndef MARS_MPointing
    1010#include "MPointing.h"
  • trunk/MagicSoft/Mars/mpointing/MPointingPosCalc.h

    r5935 r7205  
    1 #ifndef MARS_MPointingPositionCalc
    2 #define MARS_MPointingPositionCalc
     1#ifndef MARS_MPointingPosCalc
     2#define MARS_MPointingPosCalc
    33
    44#ifndef MARS_MTask
Note: See TracChangeset for help on using the changeset viewer.