Changeset 2997
- Timestamp:
- 01/30/04 21:30:15 (21 years ago)
- Location:
- trunk/MagicSoft/Mars
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/MagicSoft/Mars/Changelog
r2996 r2997 87 87 88 88 * mcalib/MCalibrationCalc.[h,cc] 89 * mcalib/MHCalibrationBlindPixel.[h,cc] 89 90 - fBlindPixelId and fPINDiodeId now like in PedestalCam 90 91 - fill Blind Pixel with information about its fitted pedestal if -
trunk/MagicSoft/Mars/manalysis/MHPedestalPixel.h
r2973 r2997 53 53 void ChangeHistId(Int_t i); 54 54 55 // Setters56 const TH1F *GetHPedestalCharge() const { return fHPedestalCharge;}55 // Getters 56 const TH1F *GetHPedestalCharge() const { return fHPedestalCharge; } 57 57 58 Double_t GetChargeMean() const { return fChargeMean; } 59 Double_t GetChargeMeanErr() const { return fChargeMeanErr; } 60 Double_t GetChargeSigma() const { return fChargeSigma; } 61 Double_t GetChargeSigmaErr() const { return fChargeSigmaErr; } 62 Double_t GetChargeChiSquare() const { return fChargeChisquare; } 63 Double_t GetChargeProb() const { return fChargeProb; } 64 Int_t GetChargeNdf() const { return fChargeNdf; } 58 Double_t GetChargeMean() const { return fChargeMean; } 59 Double_t GetChargeMeanErr() const { return fChargeMeanErr; } 60 Double_t GetChargeSigma() const { return fChargeSigma; } 61 Double_t GetChargeSigmaErr() const { return fChargeSigmaErr; } 62 Double_t GetChargeChiSquare() const { return fChargeChisquare; } 63 Double_t GetChargeProb() const { return fChargeProb; } 64 Int_t GetChargeNdf() const { return fChargeNdf; } 65 66 Int_t GetTotalEntries() const { return fTotalEntries; } 65 67 66 68 Bool_t IsFitOK() const; -
trunk/MagicSoft/Mars/manalysis/MPedCalcPedRun.cc
r2991 r2997 39 39 // Actually, MPedCalcPedRun applies the following formula (1): 40 40 // 41 // PedRMS = Sqrt( (sum(x_i 2) - sum(x_i)/n) / n-1 / 14 )41 // PedRMS = Sqrt( (sum(x_i^2) - sum(x_i)/n) / n-1 / 14 ) 42 42 // 43 43 // where x_i is the sum of 14 FADC slices and sum means the sum over all -
trunk/MagicSoft/Mars/manalysis/MPedestalPix.h
r2969 r2997 47 47 48 48 // Getters 49 MHPedestalPixel *GetHist() const { return fHist; } 50 49 51 Float_t GetPedestal() const { return fPedestal; } 50 52 Float_t GetPedestalRms() const { return fPedestalRms; } -
trunk/MagicSoft/Mars/mcalib/MHCalibrationBlindPixel.cc
r2980 r2997 34 34 // 2) at least 100 events are in the single Photo-electron peak 35 35 // 36 // Used numbers are the following: 37 // 38 // Electronic conversion factor: 39 // Assume, we have N_e electrons at the anode, 40 // thus a charge of N_e*e (e = electron charge) Coulomb. 41 // 42 // This charge is AC coupled and runs into a R_pre = 50 Ohm resistency. 43 // The corresponding current is amplified by a gain factor G_pre = 400 44 // (the precision of this value still has to be checked !!!) and again AC coupled to 45 // the output. 46 // The corresponding signal goes through the whole transmission and 47 // amplification chain and is digitized in the FADCs. 48 // The conversion Signal Area to FADC counts (Conv_trans) has been measured 49 // by David and Oscar to be approx. 3.9 pVs^-1 50 // 51 // Thus: Conversion FADC counts to Number of Electrons at Anode: 52 // FADC counts = (1/Conv_tran) * G_pre * R_pre * e * N_e = 8 * 10^-4 N_e. 53 // 54 // Also: FADC counts = 8*10^-4 * GAIN * N_phe 55 // 56 // In the blind pixel, there is an additional pre-amplifier with an amplification of 57 // about 10. Therefore, we have for the blind pixel: 58 // 59 // FADC counts (Blind Pixel) = 8*10^-3 * GAIN * N_phe 60 // 36 61 ////////////////////////////////////////////////////////////////////////////// 37 62 #include "MHCalibrationBlindPixel.h" … … 53 78 using namespace std; 54 79 80 const Int_t MHCalibrationBlindPixel::fgBlindPixelChargeNbins = 1000; 81 const Int_t MHCalibrationBlindPixel::fgBlindPixelTimeNbins = 32; 82 const Int_t MHCalibrationBlindPixel::fgBlindPixelChargevsNbins = 10000; 83 const Axis_t MHCalibrationBlindPixel::fgBlindPixelTimeFirst = -0.25; 84 const Axis_t MHCalibrationBlindPixel::fgBlindPixelTimeLast = 15.75; 85 const Double_t MHCalibrationBlindPixel::fgBlindPixelElectronicAmp = 0.008; 86 const Double_t MHCalibrationBlindPixel::fgBlindPixelElectronicAmpError = 0.002; 87 55 88 // -------------------------------------------------------------------------- 56 89 // … … 58 91 // 59 92 MHCalibrationBlindPixel::MHCalibrationBlindPixel(const char *name, const char *title) 60 : fBlindPixelChargeNbins(1000), 61 fBlindPixelTimeNbins(32), 62 fBlindPixelChargevsNbins(10000), 63 fBlindPixelTimeFirst(-0.25), 64 fBlindPixelTimeLast(15.75), 65 fHBlindPixelPSD(NULL), 93 : fHBlindPixelPSD(NULL), 66 94 fSinglePheFit(NULL), 67 95 fTimeGausFit(NULL), … … 78 106 79 107 fHBlindPixelCharge = new TH1F("HBlindPixelCharge","Distribution of Summed FADC Slices", 80 f BlindPixelChargeNbins,fBlindPixelChargefirst,fBlindPixelChargelast);108 fgBlindPixelChargeNbins,fBlindPixelChargefirst,fBlindPixelChargelast); 81 109 fHBlindPixelCharge->SetXTitle("Sum FADC Slices"); 82 110 fHBlindPixelCharge->SetYTitle("Nr. of events"); … … 85 113 86 114 fHBlindPixelTime = new TH1F("HBlindPixelTime","Distribution of Mean Arrival Times", 87 f BlindPixelTimeNbins,fBlindPixelTimeFirst,fBlindPixelTimeLast);115 fgBlindPixelTimeNbins,fgBlindPixelTimeFirst,fgBlindPixelTimeLast); 88 116 fHBlindPixelTime->SetXTitle("Mean Arrival Times [FADC slice nr]"); 89 117 fHBlindPixelTime->SetYTitle("Nr. of events"); … … 92 120 93 121 fHBlindPixelChargevsN = new TH1I("HBlindPixelChargevsN","Sum of Charges vs. Event Number", 94 f BlindPixelChargevsNbins,-0.5,(Axis_t)fBlindPixelChargevsNbins-0.5);122 fgBlindPixelChargevsNbins,-0.5,(Axis_t)fgBlindPixelChargevsNbins-0.5); 95 123 fHBlindPixelChargevsN->SetXTitle("Event Nr."); 96 124 fHBlindPixelChargevsN->SetYTitle("Sum of FADC slices"); … … 431 459 const Double_t delta1_guess = 8.; 432 460 const Double_t delta2_guess = 5.; 433 const Double_t electronicAmp_guess = 0.0025; 461 const Double_t electronicAmp_guess = fgBlindPixelElectronicAmp; 462 const Double_t electronicAmp_limit = fgBlindPixelElectronicAmpError; 434 463 435 464 // … … 481 510 482 511 case kEPolya: 483 fSinglePheFit->SetParameters(lambda_guess, excessPoisson_guess, 484 delta1_guess,delta2_guess, 485 electronicAmp_guess, 486 si_0_guess, 487 norm, mu_0_guess); 512 if ((fMeanPedestal) && (fSigmaPedestal)) 513 fSinglePheFit->SetParameters(lambda_guess, excessPoisson_guess, 514 delta1_guess,delta2_guess, 515 electronicAmp_guess, 516 fSigmaPedestal, 517 norm, 518 fMeanPedestal); 519 else 520 fSinglePheFit->SetParameters(lambda_guess, excessPoisson_guess, 521 delta1_guess,delta2_guess, 522 electronicAmp_guess, 523 si_0_guess, 524 norm, mu_0_guess); 488 525 fSinglePheFit->SetParNames("#lambda","b_{tot}", 489 526 "#delta_{1}","#delta_{2}", … … 494 531 fSinglePheFit->SetParLimits(2,6.,12.); 495 532 fSinglePheFit->SetParLimits(3,3.,8.); 496 fSinglePheFit->SetParLimits(4,0.,0.005); 497 fSinglePheFit->SetParLimits(5,min,(max-min)/1.5); 533 fSinglePheFit->SetParLimits(4,electronicAmp_guess-electronicAmp_limit, 534 electronicAmp_guess+electronicAmp_limit); 535 if ((fMeanPedestal) && (fSigmaPedestal)) 536 fSinglePheFit->SetParLimits(5, 537 fSigmaPedestal-3.*fSigmaPedestalErr, 538 fSigmaPedestal+3.*fSigmaPedestalErr); 539 else 540 fSinglePheFit->SetParLimits(5,min,(max-min)/1.5); 541 498 542 fSinglePheFit->SetParLimits(6,norm-0.1,norm+0.1); 499 fSinglePheFit->SetParLimits(7,-35.,15.); 543 if ((fMeanPedestal) && (fSigmaPedestal)) 544 fSinglePheFit->SetParLimits(7, 545 fMeanPedestal-3.*fMeanPedestalErr, 546 fMeanPedestal+3.*fMeanPedestalErr); 547 else 548 fSinglePheFit->SetParLimits(7,-35.,15.); 500 549 break; 501 550 -
trunk/MagicSoft/Mars/mcalib/MHCalibrationBlindPixel.h
r2972 r2997 17 17 private: 18 18 19 const Int_t fBlindPixelChargeNbins; 20 const Int_t fBlindPixelTimeNbins; 21 const Int_t fBlindPixelChargevsNbins; 22 const Axis_t fBlindPixelTimeFirst; 23 const Axis_t fBlindPixelTimeLast; 19 static const Int_t fgBlindPixelChargeNbins; 20 static const Int_t fgBlindPixelTimeNbins; 21 static const Int_t fgBlindPixelChargevsNbins; 22 static const Axis_t fgBlindPixelTimeFirst; 23 static const Axis_t fgBlindPixelTimeLast; 24 static const Double_t fgBlindPixelElectronicAmp; 25 static const Double_t fgBlindPixelElectronicAmpError; 24 26 25 27 TH1F* fHBlindPixelCharge; // Histogram with the single Phe spectrum
Note:
See TracChangeset
for help on using the changeset viewer.