Changeset 9216


Ignore:
Timestamp:
01/09/09 21:58:48 (16 years ago)
Author:
hoehne
Message:
*** empty log message ***
Location:
trunk/MagicSoft/Mars
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/MagicSoft/Mars/Changelog

    r9215 r9216  
    1818
    1919                                                 -*-*- END OF LINE -*-*-
     20
     21 2009/01/09 Daniel Hoehne-Moench
     22
     23   * datacenter/macros/fillcamera.C
     24     - implemented new variables: zbinmin, zbinmax, number of
     25       sumtriggers, sum trigger flag
     26     - bugfix: for P and C runs the mirror fraction and the impact
     27       parameter had unreasonable values (negative) which were filled
     28       into the mcdb, now->0
     29
     30
    2031
    2132 2009/01/09 Stefan Ruegamer
  • trunk/MagicSoft/Mars/datacenter/macros/fillcamera.C

    r9144 r9216  
    5050#include <iomanip>
    5151
     52#include <TEnv.h>
    5253#include <TRegexp.h>
    5354#include <TObjectTable.h>
     
    222223    TString psfy      = Form("%5.2f", pointspready);
    223224    TString psfadd    = Form("%5.2f", TMath::Hypot(runheader2->GetPointSpreadX(), runheader2->GetPointSpread()));
     225    Int_t mirr = runheader2->GetMirrorFraction();
    224226    TString mirrfrac  = Form("%5.2f", runheader2->GetMirrorFraction());
     227    if (mirr < 0 )
     228        mirrfrac = "NULL";
    225229    TString misx      = Form("%5.2f", misptx);
    226230    TString misy      = Form("%5.2f", mispty);
    227231    TString reflector = Form("%5.0i", reflvers);
    228232    TString camera    = Form("%5.0i", camvers);
     233    Int_t impact = runheader3->GetImpactMax();
    229234    TString imax      = Form("%5.1f", runheader3->GetImpactMax());
     235    if (impact < 0)
     236        imax = "NULL";
    230237    TString numphe    = Form("%5.1f", runheader3->GetNumPheFromDNSB());
    231238    TString pmin      = Form("%5.1f", runheader3->GetShowerPhiMin());
     
    257264//    TString numtrig   = Form("%7.0i", TMath::Nint(h.GetBinContent(2)));
    258265
     266    UInt_t nsumtrig = (UInt_t)tree2->Draw("Length$(MRawEvtHeader.fTrigPattern[0])","(MRawEvtHeader.fTrigPattern[0]==0xffffdfdf) || (MRawEvtHeader.fTrigPattern[0]==0xffffdede)","goff");
     267    if (nsumtrig<0)
     268    {
     269        cout << "ERROR - Evaluating sumtrigger events in file: " << fname << endl;
     270        return 2;
     271    }
     272    TString numsumtrig   = Form("%7.0i", nsumtrig);
     273    if (nsumtrig==0)
     274        numsumtrig = "0";
     275
    259276    // Determine observation mode, fake wobble means On mode with mispointing
    260277    TString wobblemod="Wobble";
     
    280297    // Get zbin
    281298    Float_t zBin=TMath::Nint((1-((TMath::Cos(tmin*TMath::Pi()/180)+TMath::Cos(tmax*TMath::Pi()/180))/2))*100);
     299    Float_t zBinmin=TMath::Nint((1-(TMath::Cos(tmin*TMath::Pi()/180)))*100);
     300    Float_t zBinmax=TMath::Nint((1-(TMath::Cos(tmax*TMath::Pi()/180)))*100);
    282301    Int_t zBin2=TMath::Nint(zBin);
     302    Int_t zBin2Min=TMath::Nint(zBinmin);
     303    Int_t zBin2Max=TMath::Nint(zBinmax);
    283304
    284305    // Definition of keys
     
    294315    Int_t viewconeangleokey;
    295316    Int_t spectrumkey;
     317    Int_t triggerkey;
    296318
    297319    // Definition of variables to be filled in the db
     
    317339        cout << "NumEvents       " << numevt    << endl;
    318340        cout << "NumTriggers     " << numtrig   << endl;
     341        cout << "NumSumTriggers  " << numsumtrig   << endl;
    319342        cout << "NumPheFromDNSB  " << numphe    << endl;
    320343        cout << "ViewconeAngleInner  " << coneanglei << endl;
     
    359382        viewconeangleokey = serv.QueryKeyOfName("ViewconeAngleO", coneangleo.Data());
    360383        spectrumkey    = 1;
     384        triggerkey = nsumtrig == 0 ? 2 : 3;
    361385        psfkey         = 1;
    362386        spotsizekey    = 1;
     
    398422        cout << "coneangleokey:  " << viewconeangleokey << endl;
    399423        cout << "spectrumkey:    " << spectrumkey << endl;
     424        cout << "triggerkey:     " << triggerkey << endl;
    400425        cout << endl;
    401426
     
    432457        cout << "NumEvents       " << numevt    << endl;
    433458        cout << "NumTriggers     " << numtrig   << endl;
     459        cout << "NumSumTriggers  " << numsumtrig   << endl;
    434460        cout << "NumPheFromDNSB  " << numphe    << endl;
    435461        cout << "ViewconeAngleInner  " << coneanglei << endl;
     
    465491        spotsizekey    = serv.QueryKeyOfName("AddSpotSize", addspot);
    466492        spectrumkey    = serv.QueryKeyOfName("Spectrum", slope);
     493        triggerkey = nsumtrig == 0 ? 2 : 3;
     494
    467495
    468496        if (corsvers==0)
     
    502530        cout << "coneangleokey:  " << viewconeangleokey << endl;
    503531        cout << "spectrumkey:    " << spectrumkey << endl;
     532        cout << "triggerkey:     " << triggerkey << endl;
    504533        cout << endl;
    505534
     
    555584            Form("fELowLim=%s, fEUppLim=%s, fSlopeSpec=%5.2f, "
    556585                 "fImpactMax=%s, fNumSimulatedShowers=%d, fNumEvents=%d, "
    557                  "fNumPheFromDNSB=%s, fZBin=%d, fThetaMin=%s, "
     586                 "fNumPheFromDNSB=%s, fZBin=%d, fZBinMin=%d, fZBinMax=%d, fThetaMin=%s, "
    558587                 "fThetaMax=%s, fPointSpread=%s, "
    559588                 "fPedesMean=%s, fLow2HighGain=%s, "
     
    561590                 elow.Data(), eupp.Data(), spectrum,
    562591                 imax.Data(), numsimshow, numevents,
    563                  numphe.Data(), zBin2, thetamin.Data(),
     592                 numphe.Data(), zBin2, zBin2Min, zBin2Max, thetamin.Data(),
    564593                 thetamax.Data(), psf.Data(),
    565594                 ped.Data(), low2high.Data(),
     
    571600                 "fReflectorVersionKEY=%d, fCameraVersionKEY=%d, "
    572601                 "fObservationModeKEY=%d, fMCParticleKEY=%d, "
    573                  "fSequenceFirst=0, fNumTriggers=%d, fViewconeAngleInner=%5.2f, fViewconeAngleOuter=%5.2f, "
     602                 "fSequenceFirst=0, fNumTriggers=%d, fNumSumTriggers=%d, fViewconeAngleInner=%5.2f, fViewconeAngleOuter=%5.2f, "
    574603                 "fAtmosphericModelKEY=%d, fAmplFadcKEY=%d, fAddSpotSizeKEY=%d, "
    575                  "fPSFKEY=%d, fViewconeAngleOKEY=%d, fSpectrumKEY=%d ",
     604                 "fPSFKEY=%d, fViewconeAngleOKEY=%d, fSpectrumKEY=%d, fTriggerFlagKEY=%d ",
    576605                 enoise.Data(),
    577606                 dnoise.Data(), RunNum,
     
    579608                 reflectorkey, camerakey,
    580609                 observationkey, particlekey,
    581                  ntrig, coneai, coneao,
     610                 ntrig, nsumtrig, coneai, coneao,
    582611                 atmomodelkey, amplfadckey, spotsizekey,
    583                  psfkey, viewconeangleokey, spectrumkey);
     612                 psfkey, viewconeangleokey, spectrumkey, triggerkey);
    584613
    585614        TString vars2 =
     
    625654                Form("fELowLim=%s, fEUppLim=%s, fSlopeSpec=%5.2f, "
    626655                     "fImpactMax=%s, fNumSimulatedShowers=%d, fNumEvents=%d, "
    627                      "fNumPheFromDNSB=%s, fZBin=%d, fThetaMin=%s, "
     656                     "fNumPheFromDNSB=%s, fZBin=%d, fZBinMin=%d, fZBinMax=%d, fThetaMin=%s, "
    628657                     "fThetaMax=%s, fPointSpread=%s, "
    629658                     "fPedesMean=%s, fLow2HighGain=%s, "
     
    631660                     elow.Data(), eupp.Data(), spectrum,
    632661                     imax.Data(), numsimshow, numevents,
    633                      numphe.Data(), zBin2, thetamin.Data(),
     662                     numphe.Data(), zBin2, zBin2Min, zBin2Max, thetamin.Data(),
    634663                     thetamax.Data(), psf.Data(),
    635664                     ped.Data(), low2high.Data(),
     
    641670                     "fReflectorVersionKEY=%d, fCameraVersionKEY=%d, "
    642671                     "fObservationModeKEY=%d, fMCParticleKEY=%d, "
    643                      "fSequenceFirst=0, fNumTriggers=%d, fViewconeAngleInner=%5.2f, fViewconeAngleOuter=%5.2f, "
     672                     "fSequenceFirst=0, fNumTriggers=%d, fNumSumTriggers=%d, fViewconeAngleInner=%5.2f, fViewconeAngleOuter=%5.2f, "
    644673                     "fAtmosphericModelKEY=%d, fAmplFadcKEY=%d, fAddSpotSizeKEY=%d, "
    645                      "fPSFKEY=%d, fViewconeAngleOKEY=%d, fSpectrumKEY=%d ",
     674                     "fPSFKEY=%d, fViewconeAngleOKEY=%d, fSpectrumKEY=%d, fTriggerFlagKEY=%d ",
    646675                     enoise.Data(),
    647676                     dnoise.Data(), RunNum,
     
    649678                     reflectorkey, camerakey,
    650679                     observationkey, particlekey,
    651                      ntrig, coneai, coneao,
     680                     ntrig, nsumtrig, coneai, coneao,
    652681                     atmomodelkey, amplfadckey, spotsizekey,
    653                      psfkey, viewconeangleokey, spectrumkey);
     682                     psfkey, viewconeangleokey, spectrumkey, triggerkey);
    654683
    655684            TString vars2 =
     
    686715//    delete row;
    687716
    688     //link file geht nur für data files, cal und ped haben keine psf... müssen aber in alle verzeichnisse verlinkt werden
     717    //link file geht nur fuer data files, cal und ped haben keine psf... muessen aber in alle verzeichnisse verlinkt werden
    689718    //wieder mit if point 0.5/-1.0 else
    690719
     
    717746    TString particle = (*row)[0];    //ParticleName abfragen
    718747    TString spec     = (*row)[1];    //Spectrum.fSpectrum abfragen
    719     TString obsmode;             //wird über obskey präzisiert
     748    TString obsmode;             //wird ueber obskey praezisiert
     749    TString trigmode;            //wird ueber triggerkey praezisiert
    720750    TString mkdir;
    721751    TString link;
     
    778808    }
    779809
     810    switch(triggerkey)
     811    {
     812    case 2:
     813        obsmode += "";
     814        break;
     815    case 3:
     816        obsmode += "SUM";
     817        break;
     818    default:
     819        cout << "ERROR - TriggerFlagKEY wrong value" << endl;
     820        return 2;
     821    }
     822
    780823    if (observationkey!=1)
    781824    {
     
    858901{
    859902//    TEnv env("mcsql.rc");
    860 //    TEnv env("sql.rc");
    861 
    862 //    MSQLMagic serv(env);
    863     MSQLMagic serv("sql.rc");
     903    TEnv env("sql.rc");
     904
     905    MSQLMagic serv(env);
     906//    MSQLMagic serv("sql.rc");
    864907    if (!serv.IsConnected())
    865908    {
Note: See TracChangeset for help on using the changeset viewer.