Ignore:
Timestamp:
12/18/01 12:07:26 (23 years ago)
Author:
tbretz
Message:
*** empty log message ***
Location:
trunk/MagicSoft/Mars/manalysis
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/MagicSoft/Mars/manalysis/MMcPedestalCopy.cc

    r1112 r1118  
    6565    MRawRunHeader *run = (MRawRunHeader*)pList->FindObject("MRawRunHeader");
    6666    if (run)
    67     {
    6867        if (run->GetRunType() != kRTMonteCarlo)
    6968        {
    70             *fLog << "No Monte Carlo File - MMcPedestalCopy skipped." << endl;
    71             return kTRUE;
     69            *fLog << warn << dbginf << "MMcPedestalCopy is for Monte Carlo files only... removing this task from list." << endl;
     70            return kSKIP;
    7271        }
    73     }
     72    else
     73        *fLog << warn << dbginf << "Warning - cannot check file type, MRawRunHeader not found." << endl;
    7474
    7575    const MMcFadcHeader *mcped = (MMcFadcHeader*)pList->FindObject("MMcFadcHeader");
    7676    if (!mcped)
    7777    {
    78         *fLog << dbginf << "MMcFadcHeader not found... aborting." << endl;
     78        *fLog << warn << dbginf << "MMcFadcHeader not found... aborting." << endl;
    7979        return kFALSE;
    8080    }
  • trunk/MagicSoft/Mars/manalysis/MMcPedestalNSB.cc

    r1097 r1118  
    6060    AddToBranchList("fElecNoise");
    6161
    62     fdnsb_pixel=difnsb;
     62    fdnsb_pixel = difnsb;
    6363}
    6464
     
    6666{
    6767    MRawRunHeader *run = (MRawRunHeader*)pList->FindObject("MRawRunHeader");
    68     if (run)
     68    if (!run)
    6969    {
    70         if (run->GetRunType() != kRTMonteCarlo){
    71             *fLog << dbginf << "This task is only for Monte Carlo files, therefore the RunType should be "<<kRTMonteCarlo<<" and it is: "<<run->GetRunType()<<" ... aborting"<<endl;
    72             return kFALSE;
    73         }
    74     }
    75     else
    76     {
    77         *fLog << dbginf << "MRawRunHeader not found... aborting." << endl;
     70        *fLog << err << dbginf << "MRawRunHeader not found... aborting." << endl;
    7871        return kFALSE;
    7972    }
    8073
     74    if (run->GetRunType() != kRTMonteCarlo)
     75    {
     76        *fLog << warn << dbginf << "Warning - MMcPedestalNSB is for Monte Carlo files only... removing this task from list." << endl;
     77        return kSKIP;
     78    }
     79
    8180    const MMcFadcHeader *mcped = (MMcFadcHeader*)pList->FindObject("MMcFadcHeader");
    82 
    8381    if (!mcped)
    8482    {
    85         *fLog << dbginf << "MMcFadcHeader not found... aborting." << endl;
     83        *fLog << err << dbginf << "MMcFadcHeader not found... aborting." << endl;
    8684        return kFALSE;
    8785    }
    8886
    8987    MMcRunHeader *mcrun = (MMcRunHeader*)pList->FindObject("MMcRunHeader");
     88    if (!mcrun && fdnsb_pixel < 0)
     89    {
     90        *fLog << err << dbginf << "Using the default argument of MMcPedestalNSB::MMcPedestalNSB() ";
     91        *fLog << "only allowed if MMcRunHeader is available... aborting." << endl;
     92        return kFALSE;
     93    }
     94
    9095    if (mcrun)
    9196    {
    92         if (fdnsb_pixel >= 0 && fdnsb_pixel != mcrun->GetNumPheFromDNSB()){
    93             *fLog<< dbginf <<endl<< "The MC file has been generated with diffuse nsb : "<<mcrun->GetNumPheFromDNSB()<<" but you set up the diffuse NSB to :"<<fdnsb_pixel<<endl;
    94         fdnsb_pixel = fdnsb_pixel*50.0/15.0;
    95         }
    96         else
    97             fdnsb_pixel = mcrun->GetNumPheFromDNSB()*50.0/15.0;
     97        if (fdnsb_pixel >= 0 && fdnsb_pixel != mcrun->GetNumPheFromDNSB())
     98        {
     99            *fLog << warn << dbginf << "The MC file has been generated with diffuse nsb " << mcrun->GetNumPheFromDNSB();
     100            *fLog <<" but you set up the diffuse NSB to " << fdnsb_pixel << endl;
     101        }
     102
     103        fdnsb_pixel = mcrun->GetNumPheFromDNSB();
    98104    }
    99     else
    100     {
    101         if (fdnsb_pixel < 0 ){
    102             *fLog << dbginf << "MMcRunHeader not found... aborting." << endl;
    103             return kFALSE;
    104         }
    105         else {
    106             *fLog<< dbginf <<endl<< "The MC file has been generated with diffuse nsb : "<<mcrun->GetNumPheFromDNSB()<<" but you set up the diffuse NSB to :"<<fdnsb_pixel<<endl;
    107             fdnsb_pixel = fdnsb_pixel*50.0/15.0;
    108         }
    109     }
     105
     106    fdnsb_pixel *= 50.0/15.0;
    110107
    111108    MPedestalCam *pedcam = (MPedestalCam*)pList->FindCreateObj("MPedestalCam");
     
    122119
    123120        const Float_t pedrms = mcped->GetPedestalRms(i);
     121        const Float_t sigrms = pedrms/sqrt(run->GetNumSamplesHiGain()*2);
     122        const Float_t ampl   = mcped->GetAmplitud();
    124123
    125         const Float_t sigrms = pedrms/sqrt(run->GetNumSamplesHiGain()*2);
     124        //
     125        // check for central pixel (i<397)
     126        //
    126127
    127         if (i<397) // Central Pixels
    128         {
    129             pix.SetPedestalRms(sqrt(pedrms*pedrms+fdnsb_pixel*mcped->GetAmplitud()*mcped->GetAmplitud()), sigrms);
    130         }
    131         else
    132         {
    133             pix.SetPedestalRms(sqrt(pedrms*pedrms+fdnsb_pixel*mcped->GetAmplitud()*mcped->GetAmplitud()*4), sigrms);
    134         }
     128        const Double_t value = pedrms*pedrms + fdnsb_pixel*ampl*ampl;
    135129
     130        pix.SetPedestalRms(sqrt(i<397 ? value : value*4), sigrms);
    136131    }
    137132
    138133    return kTRUE;
    139134}
    140 
    141 
    142 
Note: See TracChangeset for help on using the changeset viewer.