Changeset 7126


Ignore:
Timestamp:
06/02/05 16:16:04 (20 years ago)
Author:
tbretz
Message:
*** empty log message ***
Location:
trunk/MagicSoft/Mars
Files:
12 edited

Legend:

Unmodified
Added
Removed
  • trunk/MagicSoft/Mars/Changelog

    r7125 r7126  
    2121
    2222                                                 -*-*- END OF LINE -*-*-
     23 2005/06/02 Markus Gaug (2005/06/01)
     24
     25   * mcalib/MCalibrationChargeCalc.cc
     26     - lower fgPheErrLowerLimit from 9.0 to 6.0. This is necessary to
     27       exclude 2 very ringing pixels in September which - when kept -
     28       destroy the image cleaning around them.
     29
     30
     31
     32 2005/06/02 Markus Gaug (2005/05/31)
     33
     34   * mjobs/MJCalibration.cc
     35     - The MFTriggerPattern filters out all events taken with the
     36       CT1-pulser and data format version greater than 4.
     37       Demand now that the filter is put into the task list only if the
     38       calibration colour is not kCT1.
     39
     40
     41
     42 2005/06/02 Markus Gaug (2005/05/26)
     43
     44   * mpedestal/MPedCalcPedRun.cc
     45     - fixed bug in recognition of pedestal bit - affects only intensity
     46       calibration.
     47
     48   * mhcalib/MHCalibrationChargeCam.cc,
     49     mhcalib/MHCalibrationRelTimeCam.cc:
     50     - do not draw to status display if histogram is empty. This
     51       caused some error messages from root.
     52
     53
     54
    2355 2005/06/02 Thomas Bretz
    2456
     
    4274   * mjobs/MJPedestal.[h,cc]:
    4375     - implemented a possible deadpixel check
     76
     77   * star.rc:
     78     - added a missing template line
     79
     80   * mbadpixels/MBadPixelsCalc.[h,cc]:
     81     - changed to allow different upper and lower cuts in pedestal
     82       variance
     83
     84   * mfilter/MFCosmics.cc:
     85     - allpix were not increased correctly if a saturated pixel
     86       was skipped
     87
     88   * mjobs/MJCalibrateSignal.cc:
     89     - changed name of "Interp'd" to something more accurate
     90
     91   * msignal/MExtractFixedWindow.cc:;
     92     - removed case 12 for logain resolution as it is in bcn cvs
     93       but nowhere documented
    4494
    4595
  • trunk/MagicSoft/Mars/NEWS

    r7125 r7126  
    5959   - callisto: In the resource file callisto_Dec04Jan05.rc
    6060     MJPedestalY2.ExtractWinRight has been reduced from 4.0 to 2.0
     61
     62   - callisto: in  MCalibrationChargeCalc the limit fgPheErrLowerLimit
     63     has changed from 9.0 to 6.0. This is necessary to exclude two very
     64     ringing pixels in September which - when kept - destroy the image
     65     cleaning around them (Markus G.)
    6166
    6267   - star: fixed a bug which caused the first bin of the histograms
  • trunk/MagicSoft/Mars/mbadpixels/MBadPixelsCalc.cc

    r7109 r7126  
    8686//
    8787MBadPixelsCalc::MBadPixelsCalc(const char *name, const char *title)
    88     : fPedestalLevel(3), fPedestalLevelVariance(5), fNamePedPhotCam("MPedPhotCam"),
     88    : fPedestalLevel(3), fPedestalLevelVarianceLo(5),
     89    fPedestalLevelVarianceHi(5), fNamePedPhotCam("MPedPhotCam"),
    8990    fCheckInProcess(kTRUE), fCheckInPostProcess(kFALSE)
    9091{
     
    120121
    121122    *fLog << inf << "Name of MPedPhotCam to get pedestal rms from: " << fNamePedPhotCam << endl;
    122     if (fPedestalLevel)
     123    if (fPedestalLevel>0)
    123124        *fLog << "Checking mean 'pedestal rms' against absolute value with level " << fPedestalLevel << endl;
    124     if (fPedestalLevelVariance)
    125         *fLog << "Checking mean 'pedestal rms' against its variance with level " << fPedestalLevelVariance << endl;
     125    if (fPedestalLevelVarianceLo>0)
     126        *fLog << "Checking mean 'pedestal rms' against its lower variance with level " << fPedestalLevelVarianceLo << endl;
     127    if (fPedestalLevelVarianceHi>0)
     128        *fLog << "Checking mean 'pedestal rms' against its upper variance with level " << fPedestalLevelVarianceHi << endl;
    126129
    127130    return kTRUE;
     
    142145    }
    143146
    144     if (fPedestalLevel<=0 && fPedestalLevelVariance<=0)
     147    const Bool_t checklo  = fPedestalLevelVarianceLo>0;
     148    const Bool_t checkhi  = fPedestalLevelVarianceHi>0;
     149
     150    if (fPedestalLevel<=0 && !checklo && !checkhi)
    145151        return kTRUE;
    146152
     
    219225        }
    220226
    221         if (fPedestalLevelVariance>0)
     227        if (checklo || checkhi)
    222228        {
    223229            varrms2[i] /= npix[i];
    224230            varrms2[i]  = TMath::Sqrt(varrms2[i]-meanrms2[i]*meanrms2[i]);
    225231
    226             lolim2[i]   = meanrms2[i]-fPedestalLevelVariance*varrms2[i];
    227             uplim2[i]   = meanrms2[i]+fPedestalLevelVariance*varrms2[i];
     232            lolim2[i]   = meanrms2[i]-fPedestalLevelVarianceLo*varrms2[i];
     233            uplim2[i]   = meanrms2[i]+fPedestalLevelVarianceHi*varrms2[i];
    228234        }
    229235    }
     
    240246        const Byte_t  aidx = (*fGeomCam)[i].GetAidx();
    241247
    242         if ((fPedestalLevel<=0         || (rms>lolim1[aidx] && rms<=uplim1[aidx])) &&
    243             (fPedestalLevelVariance<=0 || (rms>lolim2[aidx] && rms<=uplim2[aidx])))
     248        if ((fPedestalLevel<=0 || (rms> lolim1[aidx] && rms<=uplim1[aidx])) &&
     249            (!checklo          ||  rms> lolim2[aidx])                       &&
     250            (!checkhi          ||  rms<=uplim2[aidx])
     251           )
    244252            continue;
    245253
     
    303311// Read the setup from a TEnv, eg:
    304312//   MBadPixelsCalc.PedestalLevel:         3.0
    305 //   MBadPixelsCalc.PedestalLevelVariance: 3.0
     313//
     314//   MBadPixelsCalc.PedestalLevelVariance:   5.0
     315//     overwrites
     316//   MBadPixelsCalc.PedestalLevelVarianceLo: 5.0
     317//     and
     318//   MBadPixelsCalc.PedestalLevelVarianceHi: 5.0
    306319//
    307320Int_t MBadPixelsCalc::ReadEnv(const TEnv &env, TString prefix, Bool_t print)
     
    313326        SetPedestalLevel(GetEnvValue(env, prefix, "PedestalLevel", fPedestalLevel));
    314327    }
     328    if (IsEnvDefined(env, prefix, "PedestalLevelVarianceLo", print))
     329    {
     330        rc = kTRUE;
     331        SetPedestalLevelVarianceLo(GetEnvValue(env, prefix, "PedestalLevelVarianceLo", fPedestalLevelVarianceLo));
     332    }
     333    if (IsEnvDefined(env, prefix, "PedestalLevelVarianceHi", print))
     334    {
     335        rc = kTRUE;
     336        SetPedestalLevelVarianceHi(GetEnvValue(env, prefix, "PedestalLevelVarianceHi", fPedestalLevelVarianceHi));
     337    }
    315338
    316339    if (IsEnvDefined(env, prefix, "PedestalLevelVariance", print))
    317340    {
    318341        rc = kTRUE;
    319         SetPedestalLevelVariance(GetEnvValue(env, prefix, "PedestalLevelVariance", fPedestalLevelVariance));
     342        SetPedestalLevelVariance(GetEnvValue(env, prefix, "PedestalLevelVariance", -1));
    320343    }
    321344    return rc;
  • trunk/MagicSoft/Mars/mbadpixels/MBadPixelsCalc.h

    r7109 r7126  
    2222
    2323    Float_t fPedestalLevel;
    24     Float_t fPedestalLevelVariance;
     24    Float_t fPedestalLevelVarianceLo;
     25    Float_t fPedestalLevelVarianceHi;
    2526
    2627    TString fNamePedPhotCam; // name of the 'MPedPhotCam' container
     
    4142
    4243    // Setter
    43     void SetPedestalLevel(Float_t f)         { fPedestalLevel=f; }
    44     void SetPedestalLevelVariance(Float_t f) { fPedestalLevelVariance=f; }
    45     void SetNamePedPhotCam(const char *name) { fNamePedPhotCam = name; }
     44    void SetPedestalLevel(Float_t f=-1)           { fPedestalLevel=f; }
     45    void SetPedestalLevelVariance(Float_t f=-1)   { fPedestalLevelVarianceLo=fPedestalLevelVarianceHi=f; }
     46    void SetPedestalLevelVarianceLo(Float_t f=-1) { fPedestalLevelVarianceLo=f; }
     47    void SetPedestalLevelVarianceHi(Float_t f=-1) { fPedestalLevelVarianceHi=f; }
    4648
    47     void SetGeomCam(const MGeomCam *geom) { fGeomCam = geom; }
     49    void SetNamePedPhotCam(const char *name)      { fNamePedPhotCam = name; }
     50    void SetGeomCam(const MGeomCam *geom)         { fGeomCam = geom; }
    4851
    4952    void EnableCheckInProcess(Bool_t b=kTRUE)     { fCheckInProcess = b; }
  • trunk/MagicSoft/Mars/mcalib/MCalibrationChargeCalc.cc

    r7099 r7126  
    243243const Float_t MCalibrationChargeCalc::fgLambdaErrLimit         = 0.2;
    244244const Float_t MCalibrationChargeCalc::fgLambdaCheckLimit       = 0.5;
    245 const Float_t MCalibrationChargeCalc::fgPheErrLowerLimit       = 9.0;
     245const Float_t MCalibrationChargeCalc::fgPheErrLowerLimit       = 6.0;
    246246const Float_t MCalibrationChargeCalc::fgPheErrUpperLimit       = 5.5;
    247247const Float_t MCalibrationChargeCalc::fgFFactorErrLimit        = 4.5;
    248248const Float_t MCalibrationChargeCalc::fgArrTimeRmsLimit        = 3.5;
    249249const TString MCalibrationChargeCalc::fgNamePedestalCam = "MPedestalCam";
     250
    250251
    251252// --------------------------------------------------------------------------
  • trunk/MagicSoft/Mars/mfilter/MFCosmics.cc

    r7122 r7126  
    187187        const MExtractedSignalPix &sig = (*fSignals)[idx];
    188188
     189        allpix++;
     190
    189191        //
    190192        // Check whether the pixel has a saturating hi-gain. In
     
    198200        const Float_t pedrms = ped.GetPedestalRms()*fSqrtHiGainSamples;
    199201        const Float_t sumhi  = sig.GetExtractedSignalHiGain();
    200 
    201         allpix++;
    202202
    203203        //
  • trunk/MagicSoft/Mars/mhcalib/MHCalibrationChargeCam.cc

    r7028 r7126  
    12281228void MHCalibrationChargeCam::DrawDataCheckPixel(MHCalibrationChargePix &pix, const Float_t refline)
    12291229{
     1230    if (pix.IsEmpty())
     1231        return;
    12301232 
    12311233  TVirtualPad *newpad = gPad;
  • trunk/MagicSoft/Mars/mhcalib/MHCalibrationRelTimeCam.cc

    r6969 r7126  
    720720void MHCalibrationRelTimeCam::DrawDataCheckPixel(MHCalibrationPix &pix, const Float_t refline)
    721721{
     722
     723    if (pix.IsEmpty())
     724        return;
    722725 
    723726  TVirtualPad *newpad = gPad;
  • trunk/MagicSoft/Mars/mjobs/MJCalibration.cc

    r7095 r7126  
    18941894
    18951895    tlist.AddToList(&trgpat);
    1896     tlist.AddToList(&ccalib);
     1896    if (fColor != MCalibrationCam::kCT1)
     1897        tlist.AddToList(&ccalib);
    18971898    tlist.AddToList(&decode);
    18981899    tlist.AddToList(&merge);
     
    19061907
    19071908    MCalibColorSet colorset;
     1909    if (fColor != MCalibrationCam::kNONE)
     1910        colorset.SetExplicitColor(fColor);
    19081911    tlist.AddToList(&colorset);
    19091912
  • trunk/MagicSoft/Mars/mpedestal/MPedCalcPedRun.cc

    r7005 r7126  
    473473Bool_t MPedCalcPedRun::IsPedBitSet()
    474474{
    475 
    476   if (!fTrigPattern)
    477     return kTRUE;
    478 
    479   if (fRunHeader->GetRunNumber() < gkFirstRunWithFinalBits)
    480     return kTRUE;
    481  
    482   return (fTrigPattern->GetPrescaled() & MTriggerPattern::kPedestal) ? kTRUE : kFALSE;
     475    if (!fTrigPattern)
     476        return kFALSE;
     477 
     478    if (fRunHeader->GetRunNumber() < gkFirstRunWithFinalBits)
     479        return kFALSE;
     480
     481    return (fTrigPattern->GetPrescaled() & MTriggerPattern::kPedestal) ? kTRUE : kFALSE;
    483482}
    484483
  • trunk/MagicSoft/Mars/msignal/MExtractFixedWindow.cc

    r7098 r7126  
    181181    case 8:
    182182    case 10:
    183     case 12:
    184183      SetResolutionPerPheLoGain(0.011);     
    185184      break;
  • trunk/MagicSoft/Mars/star.rc

    r7034 r7126  
    7777MImgCleanStd.CleanLevel2: 4.0
    7878MImgCleanStd.CleanMethod: Absolute
     79#MImgCleanStd.KeepSinglePixels: No
    7980
    8081# -------------------------------------------------------------------------
Note: See TracChangeset for help on using the changeset viewer.