#include <iostream>
#include <iomanip>
#include <fstream>
#include <cmath>
#include <vector>
#include <cstring>
#include <sstream>
#include <TFile.h>
#include <TCanvas.h>
#include <TMath.h>
#include <TF1.h>
#include "Math/WrappedTF1.h"
#include "Math/Integrator.h"
#include <TH1D.h>
#include <TNtupleD.h>
#include <TMinuit.h>
#include <TGraphAsymmErrors.h>
#include <TGraphErrors.h>
#include <TGraph.h>
#include <TAxis.h>
#include <TMatrixD.h>
#include <TVectorD.h>
#include <TApplication.h>
#include <TImage.h>
#include <TROOT.h>
#include <TStyle.h>
#include <TLegend.h>
#include "UnfoldUtilities.icc"
#include "FittingFunctions.icc"
#include "Statistics.icc"
Go to the source code of this file.
Functions | |
void | FitFCN (Int_t &npar, Double_t *gin, Double_t &f, Double_t *par, Int_t iflag) |
double | Likelihood (double *pars) |
int | main (void) |
TVectorD | MinuitMinimization (double *start, bool computeCovStat) |
TVectorD | parsErrorsFit (Npar) |
TVectorD | parsFit (Npar) |
void | PrintResults () |
Variables | |
const int | BinNum [2] = {14, 14} |
const bool | DoArray [2] = {true, true} |
double | exposure |
double | fParFit [Npar] |
double | fParFitErrors [Npar] |
double | fParFitInit [Npar] |
const bool | HeraldAnalysis = false |
int | iarray = 0 |
const char * | InfillDataFileName = "Events_SD750_ICRC2017_Offline.dat" |
const int | IntegrationSteps = 10 |
const double | IntXmax [2] = {20.9, 19.9} |
const double | IntXmin [2] = {17.9, 16.9} |
TMatrixD | kmatrix |
const modeltype | modelfunctions [2] = {StandardMultiSmooth, InfillHard} |
const int | Npar = 8 |
const int | NParArray [2] = {modelfunctions[0] == StandardMultiSmooth ? 8 : 6, 4} |
TVectorD | raw_flux |
TVectorD | raw_flux_rebinned |
TVectorD | raw_lgEs |
TVectorD | raw_lgEs_rebinned |
TVectorD | raw_nevents |
TVectorD | raw_nevents_rebinned |
TVectorD | raw_staterrlow |
TVectorD | raw_staterrlow_rebinned |
TVectorD | raw_staterrup |
TVectorD | raw_staterrup_rebinned |
TAxis * | rawAxis_lgE |
const bool | Rebinning [2] = {true, true} |
const char * | RegularDataFileName = "Events_SD1500_ICRC2017_Offline.dat" |
const bool | ResolutionFromData = false |
const double | SpectrumBins [15][15] |
const double | SpectrumBinSize [2] = {0.1, 0.1} |
const double | SpectrumMax [2] = {20.2, 19.7} |
const double | SpectrumMin [2] = {18.4, 17.5} |
TAxis * | thLgE |
TVectorD | UnfoldCorrectionFactor |
TMatrixD | UnfoldCorrectionFactorCoV |
TVectorD | UnfoldCorrectionFactorMax |
TVectorD | UnfoldCorrectionFactorMin |
TVectorD | vecLgE |
void FitFCN | ( | Int_t & | npar, |
Double_t * | gin, | ||
Double_t & | f, | ||
Double_t * | par, | ||
Int_t | iflag | ||
) |
Definition at line 581 of file ICRC2017/UnfoldSpectrum.cc.
References Likelihood().
Referenced by MinuitMinimization().
double Likelihood | ( | double * | pars | ) |
Definition at line 587 of file ICRC2017/UnfoldSpectrum.cc.
References FluxModel(), iarray, kmatrix, modelfunctions, std::pow(), raw_nevents, rawAxis_lgE, thLgE, and vecLgE.
Referenced by FitFCN(), and MdLDFFinderAG::MdLDFFinder::Init().
int main | ( | void | ) |
Definition at line 114 of file ICRC2017/UnfoldSpectrum.cc.
References BinNum, DoArray, exposure, FluxModels, fParFitInit, GetSDCalPars(), HeraldAnalysis, iarray, InfillDataFileName, IntegrationSteps, IntXmax, IntXmin, kmatrix, kResolutionMatrix(), MinuitMinimization(), modelfunctions, NParArray, out, poisson_uncertainty(), std::pow(), PrintResults(), raw_flux, raw_flux_rebinned, raw_lgEs, raw_lgEs_rebinned, raw_nevents, raw_nevents_rebinned, raw_staterrlow, raw_staterrlow_rebinned, raw_staterrup, raw_staterrup_rebinned, rawAxis_lgE, Rebinning, RegularDataFileName, ResolutionFromData, SpectrumBins, SpectrumBinSize, SpectrumMax, SpectrumMin, sqrt(), StandardICRC2015, StandardMultiSmooth, thLgE, UnfoldCorrectionFactor, UnfoldCorrectionFactorCoV, and vecLgE.
TVectorD MinuitMinimization | ( | double * | start, |
bool | computeCovStat = true |
||
) |
Definition at line 496 of file ICRC2017/UnfoldSpectrum.cc.
References FitFCN(), GetCorrectionFactor(), iarray, kmatrix, modelfunctions, NParArray, parsErrorsFit, parsFit, propagate_covariance(), StandardICRC2015, StandardMultiSmooth, UnfoldCorrectionFactorCoV, and vecLgE.
Referenced by main().
TVectorD parsErrorsFit | ( | Npar | ) |
TVectorD parsFit | ( | Npar | ) |
void PrintResults | ( | ) |
Definition at line 628 of file ICRC2017/UnfoldSpectrum.cc.
References exposure, iarray, modelfunctions, parsErrorsFit, parsFit, std::pow(), StandardICRC2015, and StandardMultiSmooth.
Referenced by main().
const int BinNum[2] = {14, 14} |
Definition at line 80 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
const bool DoArray[2] = {true, true} |
Definition at line 67 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
double exposure |
Definition at line 100 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by DirectionalExposure(), DirectionalExposureZenith(), main(), and PrintResults().
double fParFit[Npar] |
Definition at line 102 of file ICRC2017/UnfoldSpectrum.cc.
double fParFitErrors[Npar] |
Definition at line 102 of file ICRC2017/UnfoldSpectrum.cc.
double fParFitInit[Npar] |
Definition at line 96 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
const bool HeraldAnalysis = false |
Definition at line 46 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by GetSDCalPars(), main(), and ReadEventList().
int iarray = 0 |
Definition at line 94 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by Likelihood(), main(), MinuitMinimization(), and PrintResults().
const char* InfillDataFileName = "Events_SD750_ICRC2017_Offline.dat" |
Definition at line 70 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
const int IntegrationSteps = 10 |
Definition at line 65 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
const double IntXmax[2] = {20.9, 19.9} |
Definition at line 64 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
const double IntXmin[2] = {17.9, 16.9} |
Definition at line 63 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
TMatrixD kmatrix |
Definition at line 43 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by GetCorrectionFactor(), Likelihood(), main(), and MinuitMinimization().
const modeltype modelfunctions[2] = {StandardMultiSmooth, InfillHard} |
Definition at line 83 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by Likelihood(), main(), MinuitMinimization(), and PrintResults().
const int Npar = 8 |
Definition at line 92 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
const int NParArray[2] = {modelfunctions[0] == StandardMultiSmooth ? 8 : 6, 4} |
Definition at line 91 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main(), and MinuitMinimization().
TVectorD raw_flux |
Definition at line 39 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
TVectorD raw_flux_rebinned |
Definition at line 40 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
TVectorD raw_lgEs |
Definition at line 39 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
TVectorD raw_lgEs_rebinned |
Definition at line 40 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
TVectorD raw_nevents |
Definition at line 39 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by Likelihood(), and main().
TVectorD raw_nevents_rebinned |
Definition at line 40 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
TVectorD raw_staterrlow |
Definition at line 39 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
TVectorD raw_staterrlow_rebinned |
Definition at line 40 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
TVectorD raw_staterrup |
Definition at line 39 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
TVectorD raw_staterrup_rebinned |
Definition at line 40 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
TAxis* rawAxis_lgE |
Definition at line 44 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by Likelihood(), and main().
const bool Rebinning[2] = {true, true} |
Definition at line 75 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
const char* RegularDataFileName = "Events_SD1500_ICRC2017_Offline.dat" |
Definition at line 69 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
const bool ResolutionFromData = false |
Definition at line 74 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
const double SpectrumBins[15][15] |
Definition at line 78 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
const double SpectrumBinSize[2] = {0.1, 0.1} |
Definition at line 60 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
const double SpectrumMax[2] = {20.2, 19.7} |
Definition at line 59 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
const double SpectrumMin[2] = {18.4, 17.5} |
Definition at line 58 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
TAxis* thLgE |
Definition at line 41 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by Likelihood(), and main().
TVectorD UnfoldCorrectionFactor |
Definition at line 104 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main().
TMatrixD UnfoldCorrectionFactorCoV |
Definition at line 107 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by main(), and MinuitMinimization().
TVectorD UnfoldCorrectionFactorMax |
Definition at line 106 of file ICRC2017/UnfoldSpectrum.cc.
TVectorD UnfoldCorrectionFactorMin |
Definition at line 105 of file ICRC2017/UnfoldSpectrum.cc.
TVectorD vecLgE |
Definition at line 42 of file ICRC2017/UnfoldSpectrum.cc.
Referenced by GetCorrectionFactor(), GetCorrectionFactor_Likelihood(), Likelihood(), main(), and MinuitMinimization().