Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

NCOscProb Namespace Reference


Functions

double ElecAppear (double *, double *)
double TauAppear (double *, double *)
double MuSurvive (double *, double *)
double SterileMuSurvive (double baseline, double energy, double sinSqr2Theta23, double deltaMSqr23)
double SterileElecAppear (double baseline, double energy, double sinSqr2Theta23, double deltaMSqr23, double fe)
double SterileTauAppear (double baseline, double energy, double sinSqr2Theta23, double deltaMSqr23, double sterile, double fe)
double SterileAppear (double baseline, double energy, double sinSqr2Theta23, double deltaMSqr23, double sterile, double fe)
double MuSurvive4N (double baseline, double energy, double sinSqr2Theta23, double deltaMSqr23, double pMu)
double EAppear4N (double baseline, double energy, double deltaMSqr23, double pE)
double SAppear4N (double baseline, double energy, double deltaMSqr23, double phi43, double pS, double pMu)
double TauAppear4N (double baseline, double energy, double deltaMSqr23, double sinSqr2Theta23, double phi43, double pS, double pMu, double pE)


Function Documentation

double NCOscProb::EAppear4N double  baseline,
double  energy,
double  deltaMSqr23,
double  pE
 

Definition at line 210 of file NCOscProb.cxx.

Referenced by NCAnalysisUtils::FindParkeModelProbability(), and TauAppear4N().

00214 {
00215 
00216   double sinSqrDeltaM = TMath::Power(TMath::Sin(NCType::k127*deltaMSqr23*baseline/energy),2.);
00217   return pE*sinSqrDeltaM;
00218 }

double NCOscProb::ElecAppear double *  ,
double * 
 

Definition at line 10 of file NCOscProb.cxx.

Referenced by NCAnalysisUtils::Find3FlavorProbability(), MuSurvive(), and NCReaderHelper::OscillateMatter().

00011 {
00012 
00013   //x[0] = E
00014   //Params:
00015   //par[0] = L  
00016   //par[1] = th23
00017   //par[2] = th12
00018   //par[3] = th13
00019   //par[4] = dm23^2
00020   //par[5] = dm12^2
00021   //par[6] = density
00022   //par[7] = d_cp
00023   //par[8] = +1(normal hierarchy)/-1(inverted hierarchy);
00024 
00025   double E = x[0]; //energy
00026   double L = par[0]; //baseline
00027   double plusminus = int(par[8]);
00028 
00029   //standard rock:
00030   double density = par[6]; //g/cm^{3}
00031   double z_a = 0.5; //average Z/A
00032 
00033   double A_av = 6.02214199e23; //avogadro's number
00034   double invCmToeV = 1.97e-5; //convert 1/cm to eV
00035   double invCmToGeV = 1.97e-14; //convert 1/cm to GeV
00036   double invKmToeV = 1.97e-10; //convert 1/km to eV
00037 
00038   double Gf = 1.166391e-5; //fermi constant (GeV^{-2})
00039   double ne = z_a*A_av*density; //electron density #/cm^{3}
00040   double ne_natunits = ne*invCmToeV*invCmToGeV*invCmToGeV;
00041   //electron density with units Gev^{2} eV
00042   //Gev^{2} to cancel with GeV^{-2} in Gf
00043 
00044   double th23 = par[1];
00045   double th12 = par[2];
00046   double th13 = par[3];
00047 
00048   double sinsq_2th23 = TMath::Power(TMath::Sin(2.*th23),2);
00049   double sinsq_2th12 = TMath::Power(TMath::Sin(2.*th12),2);
00050   double sinsq_2th13 = TMath::Power(TMath::Sin(2.*th13),2);
00051   
00052   double cos_th23 = TMath::Cos(th23);
00053   double sin_th23 = TMath::Sin(th23);
00054   double cos_th13 = TMath::Cos(th13);
00055   
00056   double d_cp = par[7];
00057   
00058   double dmsq_23 = par[4];
00059   double dmsq_12 = par[5];
00060   double dmsq_13 = dmsq_23+dmsq_12; //eV^{2}
00061 
00062   //double Delta23 = dmsq_23/(2.*E*1e9); //eV
00063   double Delta12 = dmsq_12/(2.*E*1e9);
00064   double Delta13 = dmsq_13/(2.*E*1e9);
00065   
00066   double A = sqrt(2.)*Gf*ne_natunits; //eV
00067   double B = TMath::Abs(A - plusminus*Delta13); //eV
00068   double J = cos_th13*sqrt(sinsq_2th12)*sqrt(sinsq_2th13)*sqrt(sinsq_2th23);
00069 
00070   double p1 = sin_th23*sin_th23*sinsq_2th13*TMath::Power(Delta13/B,2)
00071     *TMath::Power(TMath::Sin(B*L/(invKmToeV*2.)),2);
00072   
00073   double p2 = 0;
00074   double p3 = 0;
00075   if(density!=0){
00076     p2 = cos_th23*cos_th23*sinsq_2th12*TMath::Power(Delta12/A,2)
00077       *TMath::Power(TMath::Sin(A*L/(invKmToeV*2.)),2);
00078     
00079     p3 = J*Delta12*Delta13*TMath::Sin(A*L/(invKmToeV*2.))
00080       *TMath::Sin(B*L/(invKmToeV*2.))
00081       *TMath::Cos(plusminus*d_cp + Delta13*L/(invKmToeV*2.))/(A*B);
00082   }
00083 
00084   if(p1+p2+p3>1) return 1;
00085   return p1+p2+p3;
00086 
00087 }

double NCOscProb::MuSurvive double *  ,
double * 
 

Definition at line 130 of file NCOscProb.cxx.

References ElecAppear(), and TauAppear().

Referenced by NCAnalysisUtils::Find3FlavorProbability(), and NCReaderHelper::OscillateMatter().

00131 {
00132   return 1. - TauAppear(x,par) - ElecAppear(x,par); 
00133 }

double NCOscProb::MuSurvive4N double  baseline,
double  energy,
double  sinSqr2Theta23,
double  deltaMSqr23,
double  pMu
 

Definition at line 195 of file NCOscProb.cxx.

Referenced by NCAnalysisUtils::FindParkeModelProbability(), and TauAppear4N().

00200 {
00201   double sinSqrDeltaM = TMath::Power(TMath::Sin(NCType::k127*deltaMSqr23*baseline/energy),2.);
00202   double survive = 1.;
00203   //survive -= sinSqr2Theta23*sinSqrDeltaM;
00204   survive -= 4.*sinSqr2Theta23*(1-sinSqr2Theta23)*sinSqrDeltaM;
00205   survive += pMu*(sinSqr2Theta23*sinSqrDeltaM - 0.5);
00206 
00207   return survive;
00208 }

double NCOscProb::SAppear4N double  baseline,
double  energy,
double  deltaMSqr23,
double  phi43,
double  pS,
double  pMu
 

Definition at line 220 of file NCOscProb.cxx.

Referenced by NCAnalysisUtils::FindParkeModelProbability(), and TauAppear4N().

00226 {
00227   double sinSqrDeltaM = TMath::Power(TMath::Sin(NCType::k127*deltaMSqr23*baseline/energy),2.);
00228   double sin2DeltaM = TMath::Sin(2.*NCType::k127*deltaMSqr23*baseline/energy);
00229 
00230   double osc = pS*sinSqrDeltaM;
00231   osc += TMath::Sqrt(pS*pMu)*(sinSqrDeltaM*TMath::Cos(phi43) - 0.5*sin2DeltaM*TMath::Sin(phi43));
00232   osc += 0.5*pMu;
00233 
00234   return osc;
00235 }

double NCOscProb::SterileAppear double  baseline,
double  energy,
double  sinSqr2Theta23,
double  deltaMSqr23,
double  sterile,
double  fe
 

Definition at line 180 of file NCOscProb.cxx.

Referenced by NCAnalysisUtils::FindExtendedModelIProbability().

00186 {
00187   double appear = sterile*(1.-fe)*sinSqr2Theta23;
00188   appear *= TMath::Power(TMath::Sin(NCType::k127*baseline*deltaMSqr23/energy),2.);
00189 
00190   //MSG("NCOscProb", Msg::kInfo) << "s appear : " << appear << endl;
00191 
00192   return appear;
00193 }

double NCOscProb::SterileElecAppear double  baseline,
double  energy,
double  sinSqr2Theta23,
double  deltaMSqr23,
double  fe
 

Definition at line 151 of file NCOscProb.cxx.

Referenced by NCAnalysisUtils::FindExtendedModelIProbability().

00156 {
00157   double appear = fe*sinSqr2Theta23;
00158   appear *= TMath::Power(TMath::Sin(NCType::k127*baseline*deltaMSqr23/energy),2.);
00159 
00160   //MSG("NCOscProb", Msg::kInfo) << "e appear : " << appear << endl;
00161 
00162   return appear;
00163 }

double NCOscProb::SterileMuSurvive double  baseline,
double  energy,
double  sinSqr2Theta23,
double  deltaMSqr23
 

Definition at line 135 of file NCOscProb.cxx.

Referenced by NCAnalysisUtils::FindExtendedModelIProbability().

00139 {
00140   double disappear = sinSqr2Theta23;
00141   disappear *= TMath::Power(TMath::Sin(NCType::k127*baseline*deltaMSqr23/energy),2.);
00142 
00143 //   MSG("NCOscProb", Msg::kInfo) << "mu survive : " << 1.-disappear 
00144 //                             << " " << energy << " " << sinSqr2Theta23
00145 //                             << " " << deltaMSqr23 << " " 
00146 //                             << baseline << endl;
00147 
00148   return 1. - disappear;
00149 }

double NCOscProb::SterileTauAppear double  baseline,
double  energy,
double  sinSqr2Theta23,
double  deltaMSqr23,
double  sterile,
double  fe
 

Definition at line 165 of file NCOscProb.cxx.

Referenced by NCAnalysisUtils::FindExtendedModelIProbability().

00171 {
00172   double appear = (1.-sterile)*(1.-fe)*sinSqr2Theta23;
00173   appear *= TMath::Power(TMath::Sin(NCType::k127*baseline*deltaMSqr23/energy),2.);
00174 
00175   //MSG("NCOscProb", Msg::kInfo) << "tau appear : " << appear << endl;
00176 
00177   return appear;
00178 }

double NCOscProb::TauAppear double *  ,
double * 
 

Definition at line 89 of file NCOscProb.cxx.

Referenced by NCAnalysisUtils::Find3FlavorProbability(), MuSurvive(), and NCReaderHelper::OscillateMatter().

00090 {
00091 
00092   //x[0] = E
00093   //Params:
00094   //par[0] = L
00095   //par[1] = th23
00096   //par[2] = th12
00097   //par[3] = th13
00098   //par[4] = dm23^2
00099   //par[5] = dm12^2
00100   //par[6] = density
00101   //par[7] = d_cp
00102   //par[8] = +/-;
00103 
00104   double E = x[0]; //energy
00105   double L = par[0]; //baseline
00106 
00107   double invKmToeV = 1.97e-10; //convert 1/km to eV
00108 
00109   //electron density with units Gev^{2} eV
00110   //Gev^{2} to cancel with GeV^{-2} in Gf
00111 
00112   double th23 = par[1];
00113   double th13 = par[3];
00114 
00115   double sinsq_2th23 = TMath::Power(TMath::Sin(2.*th23),2);
00116   double cos_th13 = TMath::Cos(th13);
00117 
00118   double dmsq_23 = par[4];
00119 
00120   double Delta23 = dmsq_23/(2.*E*1e9); //eV
00121   
00122   double p1 = sinsq_2th23*TMath::Power(cos_th13,4)
00123     *TMath::Power(TMath::Sin(Delta23*L/(invKmToeV*2.)),2);  //numu->nutau
00124 
00125   return p1;
00126 
00127 }

double NCOscProb::TauAppear4N double  baseline,
double  energy,
double  deltaMSqr23,
double  sinSqr2Theta23,
double  phi43,
double  pS,
double  pMu,
double  pE
 

Definition at line 237 of file NCOscProb.cxx.

References EAppear4N(), MuSurvive4N(), and SAppear4N().

Referenced by NCAnalysisUtils::FindParkeModelProbability().

00245 {
00246 
00247 //   double sinSqrDeltaM = TMath::Power(TMath::Sin(NCType::k127*deltaMSqr23*baseline/energy),2.);
00248 //   double sin2DeltaM = TMath::Sin(2.*NCType::k127*deltaMSqr23*baseline/energy);
00249 //   double osc = sinSqr2Theta23*sinSqrDeltaM;
00250 //   osc -= (pE + pS + TMath::Sqrt(pS*pMu)*TMath::Cos(phi43))*sinSqrDeltaM;
00251 //   osc += TMath::Sqrt(pS*pMu)*0.5*sin2DeltaM*TMath::Sin(phi43);
00252 
00253   double osc = 1. - MuSurvive4N(baseline, energy, sinSqr2Theta23, deltaMSqr23, pMu);
00254   osc -= EAppear4N(baseline, energy, deltaMSqr23, pE);
00255   osc -= SAppear4N(baseline, energy, deltaMSqr23, phi43, pS, pMu);
00256 
00257   return osc;
00258 }


Generated on Thu Nov 1 12:02:17 2007 for loon by  doxygen 1.3.9.1