#include <OscCalcSterileApprox.h>
Definition at line 14 of file OscCalcSterileApprox.h.
double ana::OscCalcSterileApprox::GetDmsq |
( |
| ) |
const |
|
inline |
double ana::OscCalcSterileApprox::GetL |
( |
| ) |
const |
|
inline |
TMD5 * ana::OscCalcSterileApprox::GetParamsHash |
( |
| ) |
const |
|
override |
Definition at line 272 of file OscCalcSterileApprox.cxx.
274 TMD5* ret =
new TMD5;
275 const std::string txt =
"SterileApprox";
276 ret->Update((
unsigned char*)txt.c_str(), txt.size());
277 const int kNumParams = 4;
278 double angles[2] = {0, 0};
286 double buf[kNumParams] = {
fDmsq, angles[0], angles[1],
fL};
287 ret->Update((
unsigned char*)buf,
sizeof(
double)*kNumParams);
double ana::OscCalcSterileApprox::GetSinSq2ThetaEE |
( |
| ) |
const |
Definition at line 24 of file OscCalcSterileApprox.cxx.
44 assert(!isinf(Ue4sq) && !isnan(Ue4sq));
45 const double sinsq2thetaee = 4.0*Ue4sq*(1-Ue4sq);
47 assert(sinsq2thetaee >= 0 && sinsq2thetaee <= 1);
double ana::OscCalcSterileApprox::GetSinSq2ThetaMuE |
( |
| ) |
const |
Definition at line 110 of file OscCalcSterileApprox.cxx.
126 const double Ue4sq = 0.5 * (1.0 - std::sqrt(1.0 -
fSinSq2ThetaEE));
128 assert(!isinf(Um4sq) && !isnan(Um4sq));
129 assert(!isinf(Ue4sq) && !isnan(Ue4sq));
130 const double sinsq2thetame = 4.0*Um4sq*Ue4sq;
132 assert(sinsq2thetame >= 0 && sinsq2thetame <= 1);
134 return sinsq2thetame;
double ana::OscCalcSterileApprox::GetSinSq2ThetaMuMu |
( |
| ) |
const |
Definition at line 67 of file OscCalcSterileApprox.cxx.
87 assert(!isinf(Um4sq) && !isnan(Um4sq));
88 const double sinsq2thetamm = 4.0*Um4sq*(1-Um4sq);
90 assert(sinsq2thetamm >= 0 && sinsq2thetamm <= 1);
double ana::OscCalcSterileApprox::P |
( |
int |
from, |
|
|
int |
to, |
|
|
double |
E |
|
) |
| |
|
overridevirtual |
double ana::OscCalcSterileApprox::P_LoverE |
( |
int |
from, |
|
|
int |
to, |
|
|
double |
LElo, |
|
|
double |
LEhi |
|
) |
| |
Definition at line 232 of file OscCalcSterileApprox.cxx.
235 if(
fDmsq == 0)
return (
from == to || to == 0) ? 1 : 0;
237 LElo = std::max(0., LElo);
245 const double Delta = (.25*(sin(2*LElo) - sin(2*LEhi)) + .5*(LEhi - LElo))/(LEhi-LElo);
246 assert(!isnan(Delta));
T sqr(T x)
More efficient square function than pow(x,2)
double PFromDelta(int from, int to, double Delta) const
double ana::OscCalcSterileApprox::P_range |
( |
int |
from, |
|
|
int |
to, |
|
|
double |
Elo, |
|
|
double |
Ehi |
|
) |
| |
Definition at line 216 of file OscCalcSterileApprox.cxx.
218 if(Ehi <= 0)
return 0;
220 if(
fDmsq == 0)
return (
from == to || to == 0) ? 1 : 0;
222 Elo = std::max(0., Elo);
226 assert(!isnan(Delta));
double PFromDelta(int from, int to, double Delta) const
double AvgSinSq(double k, double a, double b)
double ana::OscCalcSterileApprox::PFromDelta |
( |
int |
from, |
|
|
int |
to, |
|
|
double |
Delta |
|
) |
| const |
|
protected |
Definition at line 184 of file OscCalcSterileApprox.cxx.
199 else if(
abs(to) == 16){
204 else if (
abs(
from) == 14 && to == 0) {
207 else if (
abs(
from) == 12 && to == 0) {
211 std::cout <<
"OscCalcSterileApprox: P(" <<
from <<
", " << to <<
") not implemented" << std::endl;
double GetSinSq2ThetaMuE() const
double GetSinSq2ThetaEE() const
double GetSinSq2ThetaMuMu() const
BEGIN_PROLOG could also be cout
void ana::OscCalcSterileApprox::SetDmsq |
( |
double |
d | ) |
|
|
inline |
void ana::OscCalcSterileApprox::SetL |
( |
double |
L | ) |
|
|
inline |
void ana::OscCalcSterileApprox::SetSinSq2ThetaEE |
( |
double |
t | ) |
|
void ana::OscCalcSterileApprox::SetSinSq2ThetaMuE |
( |
double |
t | ) |
|
void ana::OscCalcSterileApprox::SetSinSq2ThetaMuMu |
( |
double |
t | ) |
|
double ana::OscCalcSterileApprox::fDmsq |
|
protected |
double ana::OscCalcSterileApprox::fL |
|
protected |
double ana::OscCalcSterileApprox::fSinSq2ThetaEE |
|
protected |
bool ana::OscCalcSterileApprox::fSinSq2ThetaEESet = false |
|
protected |
double ana::OscCalcSterileApprox::fSinSq2ThetaMuE |
|
protected |
bool ana::OscCalcSterileApprox::fSinSq2ThetaMuESet = false |
|
protected |
double ana::OscCalcSterileApprox::fSinSq2ThetaMuMu |
|
protected |
bool ana::OscCalcSterileApprox::fSinSq2ThetaMuMuSet = false |
|
protected |
The documentation for this class was generated from the following files: