Angular analysis of B+->K*+(K+pi0)mumu
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

44 lines
1.5 KiB

  1. //Renata Kopecna
  2. /**
  3. * @file multifit.hh
  4. * @author Christoph Langenbruch
  5. * @date 2009-03-18
  6. *
  7. */
  8. #ifndef MULTIFIT_H
  9. #define MULTIFIT_H
  10. #include <string>
  11. #include <vector>
  12. #include <funcs.hh>
  13. #include <TFile.h>
  14. namespace fcnc {
  15. //Forward declaration
  16. class parameter;
  17. ///base class for analysis classes which do multiple fits, e.g. toystudy
  18. class multifit {
  19. protected:
  20. ///set of options
  21. options* opts;
  22. ///constructor
  23. multifit(options* o);
  24. ///destructor
  25. virtual ~multifit();
  26. ///unbinned likelihood fit of gaussian
  27. void fit_gaussian(std::vector<double>& values, double& gauss_mean, double& sigma_gauss_mean, double& gauss_width, double& sigma_gauss_width, double& chi_squared) const;
  28. ///fits a gaussian to the pull values
  29. void update_pull(parameter* p, std::vector<double>& values, std::vector<double>& errors, double& gauss_mean, double& sigma_gauss_mean, double& gauss_width, double& sigma_gauss_width, double& chi_squared, std::string appendix="") const;
  30. ///fits a gaussian to the values
  31. void update_value(parameter* p, std::vector<double>& values, std::vector<double>& errors, double& gauss_mean, double& sigma_gauss_mean, double& gauss_width, double& sigma_gauss_width, double& chi_squared, std::string appendix="") const;
  32. ///fits a gaussian to the errors
  33. void update_error(parameter* p, std::vector<double>& values, std::vector<double>& errors, double& gauss_mean, double& sigma_gauss_mean, double& gauss_width, double& sigma_gauss_width, double& chi_squared, std::string appendix="") const;
  34. TFile* output;
  35. };
  36. }
  37. #endif