MINT2
Public Member Functions | Protected Attributes | List of all members
TimePdf Class Reference
Inheritance diagram for TimePdf:
MINT::PdfBase< IDalitzEvent > MINT::IPdf< IDalitzEvent > MINT::IReturnRealForEvent< IDalitzEvent > MINT::IReturnRealForEvent< IDalitzEvent >

Public Member Functions

void parametersChanged ()
 
void beginFit ()
 
void endFit ()
 
double un_normalised (IDalitzEvent &evt)
 
virtual double getVal (IDalitzEvent &evt)
 
virtual double getVal_withPs (IDalitzEvent &evt)
 
virtual double getVal_noPs (IDalitzEvent &evt)
 
virtual double getVal (IDalitzEvent *evt)
 
virtual double getVal_withPs (IDalitzEvent *evt)
 
virtual double getVal_noPs (IDalitzEvent *evt)
 
 TimePdf (MINT::FitParameter &C, MINT::FitParameter &D, MINT::FitParameter &D_bar, MINT::FitParameter &S, MINT::FitParameter &S_bar, MINT::FitParameter &k, MINT::FitParameter &tau, MINT::FitParameter &dGamma, MINT::FitParameter &dm, MINT::FitParameter &eff_tag, MINT::FitParameter &w)
 
- Public Member Functions inherited from MINT::PdfBase< IDalitzEvent >
 PdfBase ()
 
 PdfBase (const PdfBase< IDalitzEvent > &)
 
virtual double RealVal (IDalitzEvent &evt)
 
virtual double getNewVal (IDalitzEvent &evt)
 
virtual ~PdfBase ()
 
- Public Member Functions inherited from MINT::IPdf< IDalitzEvent >
virtual void Gradient (IDalitzEvent &evt, std::vector< double > &grad, MINT::MinuitParameterSet *mps)
 
virtual bool useAnalyticGradient ()
 
- Public Member Functions inherited from MINT::IReturnRealForEvent< IDalitzEvent >
virtual ~IReturnRealForEvent ()
 

Protected Attributes

FitParameter_C
 
FitParameter_D
 
FitParameter_D_bar
 
FitParameter_S
 
FitParameter_S_bar
 
FitParameter_k
 
FitParameter_tau
 
FitParameter_dGamma
 
FitParameter_dm
 
FitParameter_eff_tag
 
FitParameter_w
 

Additional Inherited Members

- Protected Member Functions inherited from MINT::IReturnRealForEvent< IDalitzEvent >
 IReturnRealForEvent ()
 

Detailed Description

Definition at line 1119 of file BsDsKpipi_TD_ampFit.cpp.

Constructor & Destructor Documentation

◆ TimePdf()

TimePdf::TimePdf ( MINT::FitParameter C,
MINT::FitParameter D,
MINT::FitParameter D_bar,
MINT::FitParameter S,
MINT::FitParameter S_bar,
MINT::FitParameter k,
MINT::FitParameter tau,
MINT::FitParameter dGamma,
MINT::FitParameter dm,
MINT::FitParameter eff_tag,
MINT::FitParameter w 
)
inline

Definition at line 1196 of file BsDsKpipi_TD_ampFit.cpp.

1196  :
1197  _C(C),_D(D),_D_bar(D_bar),_S(S),_S_bar(S_bar),_k(k),_tau(tau),_dGamma(dGamma),_dm(dm),_eff_tag(eff_tag), _w(w) {;}
FitParameter & _D
FitParameter & _dm
FitParameter & _D_bar
FitParameter & _S
FitParameter & _C
FitParameter & _eff_tag
FitParameter & _S_bar
FitParameter & _w
FitParameter & _dGamma
FitParameter & _tau
FitParameter & _k

Member Function Documentation

◆ beginFit()

void TimePdf::beginFit ( )
inlinevirtual

Reimplemented from MINT::PdfBase< IDalitzEvent >.

Definition at line 1138 of file BsDsKpipi_TD_ampFit.cpp.

1138  {
1139  }

◆ endFit()

void TimePdf::endFit ( )
inlinevirtual

Reimplemented from MINT::PdfBase< IDalitzEvent >.

Definition at line 1140 of file BsDsKpipi_TD_ampFit.cpp.

1140  {
1141  }

◆ getVal() [1/2]

virtual double TimePdf::getVal ( IDalitzEvent evt)
inlinevirtual

Implements MINT::PdfBase< IDalitzEvent >.

Definition at line 1166 of file BsDsKpipi_TD_ampFit.cpp.

1166  {
1167 
1168  const double f = static_cast<double>((int)evt.getValueFromVector(4));
1169  const double D = 1./2. * ((1.+f) * _D + (1.-f) * _D_bar);
1170 
1171  const double Gamma = 1./((double) _tau);
1172 
1173  double val = un_normalised(evt);
1174 
1175  double norm = 2.* ((4.*Gamma/(4.*Gamma*Gamma-_dGamma*_dGamma)) - 2.0*_k* D * (2.*_dGamma/(4.*Gamma*Gamma-_dGamma*_dGamma)));
1176 
1177  return val/norm;
1178  }
double un_normalised(IDalitzEvent &evt)
FitParameter & _D
FitParameter & _D_bar
virtual double getValueFromVector(unsigned int i) const =0
FitParameter & _dGamma
FitParameter & _tau
FitParameter & _k

◆ getVal() [2/2]

virtual double TimePdf::getVal ( IDalitzEvent evt)
inlinevirtual

Definition at line 1183 of file BsDsKpipi_TD_ampFit.cpp.

1183  {
1184  if(0 == evt) return 0;
1185  return getVal(*evt);
1186  }
virtual double getVal(IDalitzEvent &evt)

◆ getVal_noPs() [1/2]

virtual double TimePdf::getVal_noPs ( IDalitzEvent evt)
inlinevirtual

Definition at line 1181 of file BsDsKpipi_TD_ampFit.cpp.

1181 {return getVal(evt);}
virtual double getVal(IDalitzEvent &evt)

◆ getVal_noPs() [2/2]

virtual double TimePdf::getVal_noPs ( IDalitzEvent evt)
inlinevirtual

Definition at line 1191 of file BsDsKpipi_TD_ampFit.cpp.

1191  {
1192  if(0 == evt) return 0;
1193  return getVal_noPs(*evt);
1194  }
virtual double getVal_noPs(IDalitzEvent &evt)

◆ getVal_withPs() [1/2]

virtual double TimePdf::getVal_withPs ( IDalitzEvent evt)
inlinevirtual

Definition at line 1180 of file BsDsKpipi_TD_ampFit.cpp.

1180 {return getVal(evt);}
virtual double getVal(IDalitzEvent &evt)

◆ getVal_withPs() [2/2]

virtual double TimePdf::getVal_withPs ( IDalitzEvent evt)
inlinevirtual

Definition at line 1187 of file BsDsKpipi_TD_ampFit.cpp.

1187  {
1188  if(0 == evt) return 0;
1189  return getVal_withPs(*evt);
1190  }
virtual double getVal_withPs(IDalitzEvent &evt)

◆ parametersChanged()

void TimePdf::parametersChanged ( )
inlinevirtual

Reimplemented from MINT::PdfBase< IDalitzEvent >.

Definition at line 1136 of file BsDsKpipi_TD_ampFit.cpp.

1136  {
1137  }

◆ un_normalised()

double TimePdf::un_normalised ( IDalitzEvent evt)
inline

Definition at line 1143 of file BsDsKpipi_TD_ampFit.cpp.

1143  {
1144  const double t = (double) evt.getValueFromVector(0);
1145  const double dt = (double) evt.getValueFromVector(1);
1146  const double q = static_cast<double>((int)evt.getValueFromVector(2));
1147  const double w = (double) evt.getValueFromVector(3);
1148  const double f = static_cast<double>((int)evt.getValueFromVector(4));
1149 
1150  const double e_eff = fabs(q)*_eff_tag + (1.-fabs(q))*(1.-_eff_tag);
1151 
1152  const double D = 1./2. * ((1.+f) * _D + (1.-f) * _D_bar);
1153  const double S = 1./2. * ((1.+f) * _S + (1.-f) * _S_bar);
1154 
1155  const double val = exp(-fabs(t)/(double)_tau) *
1156  (
1157  (2.-fabs(q))*cosh((double)_dGamma/2.*t)
1158  +f*q*(1.-2.*w)* _C *cos((double)_dm*t)
1159  -(2.-fabs(q))*2.0*_k* D *sinh((double)_dGamma/2.*t)
1160  -f*2.0*q*(1.-2.*w)*_k* S *sin((double)_dm*t)
1161  )*e_eff;
1162 
1163  return val;
1164  }
FitParameter & _D
FitParameter & _dm
FitParameter & _D_bar
FitParameter & _S
FitParameter & _C
virtual double getValueFromVector(unsigned int i) const =0
FitParameter & _eff_tag
FitParameter & _S_bar
FitParameter & _dGamma
FitParameter & _tau
FitParameter & _k

Member Data Documentation

◆ _C

FitParameter& TimePdf::_C
protected

Definition at line 1122 of file BsDsKpipi_TD_ampFit.cpp.

◆ _D

FitParameter& TimePdf::_D
protected

Definition at line 1123 of file BsDsKpipi_TD_ampFit.cpp.

◆ _D_bar

FitParameter& TimePdf::_D_bar
protected

Definition at line 1124 of file BsDsKpipi_TD_ampFit.cpp.

◆ _dGamma

FitParameter& TimePdf::_dGamma
protected

Definition at line 1130 of file BsDsKpipi_TD_ampFit.cpp.

◆ _dm

FitParameter& TimePdf::_dm
protected

Definition at line 1131 of file BsDsKpipi_TD_ampFit.cpp.

◆ _eff_tag

FitParameter& TimePdf::_eff_tag
protected

Definition at line 1132 of file BsDsKpipi_TD_ampFit.cpp.

◆ _k

FitParameter& TimePdf::_k
protected

Definition at line 1127 of file BsDsKpipi_TD_ampFit.cpp.

◆ _S

FitParameter& TimePdf::_S
protected

Definition at line 1125 of file BsDsKpipi_TD_ampFit.cpp.

◆ _S_bar

FitParameter& TimePdf::_S_bar
protected

Definition at line 1126 of file BsDsKpipi_TD_ampFit.cpp.

◆ _tau

FitParameter& TimePdf::_tau
protected

Definition at line 1129 of file BsDsKpipi_TD_ampFit.cpp.

◆ _w

FitParameter& TimePdf::_w
protected

Definition at line 1133 of file BsDsKpipi_TD_ampFit.cpp.


The documentation for this class was generated from the following file: