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

NC::OscProb Namespace Reference

Contains classes representing various oscillation models. More...


Classes

class  NC::OscProb::SafeDouble
 Wrap a double so that use of it uninitialized is detected. More...
class  NC::OscProb::OscPars
 Base class for the various oscillation models. More...
class  NC::OscProb::NoOscillations
 No neutrino oscillations occur. More...
class  NC::OscProb::ThreeFlavor
 For oscillation model kThreeFlavor. More...
class  NC::OscProb::SterileFraction
 For oscillation model kSterileFraction. More...
class  NC::OscProb::SterileFractionTauNorm
 The sterile fraction model, with an additional parameter to scale the CC tau contribution. See docdb 5431. More...
class  NC::OscProb::FourFlavorBase
 Implements a generalized mixing matrix. More...
class  NC::OscProb::FourFlavorGeneral
 The general case, all parameters are adjustable. More...
class  NC::OscProb::FourFlavorDelta43Is0
 Specialized for the case that $ m_4 = m_3 $. More...
class  NC::OscProb::FourFlavorDelta41Is0
 Specialized for the case that $ m_4 = m_1 $. More...
class  NC::OscProb::FourFlavorDelta43IsBig
 Specialized for the case that $ m_4 \gg m_3 $. More...
class  NC::OscProb::Decay
 A model with a combination of oscillations and decay. More...
class  NC::OscProb::Decoherence
 The decoherence model used by the CC group. More...

Functions

NCType::EOscMode ToOscMode (int from, int to)
 Get correct NCType::EOscMode enumeration value from a pair of PDG codes from and to.
std::ostream & operator<< (std::ostream &os, const OscPars &rhs)
double OscProbFs (double ssDeltaMSqr31, double amu, double fs, double ae, int oscMode)
 Helper function for SterileFraction model.
double FindSinSqrDeltaMSqr (double energy, double baseline, double deltaMSqr)
 The $ \Delta m^2 $ term in the oscillation formula.

Variables

const double kUninitialized = 0xDEADBEEF
 Special-value for use in SafeDouble.


Detailed Description

Contains classes representing various oscillation models.

Function Documentation

double NC::OscProb::FindSinSqrDeltaMSqr double  energy,
double  baseline,
double  deltaMSqr
 

The $ \Delta m^2 $ term in the oscillation formula.

\[ \sin^2\left(1.267{\Delta m^2L\over E}\right) \]

Definition at line 197 of file NCOscProb.cxx.

References SQR().

Referenced by NC::OscProb::SterileFractionTauNorm::TransitionProbability(), and NC::OscProb::SterileFraction::TransitionProbability().

00198 {
00199   return SQR(TMath::Sin(NCType::k127*L/E*dmsq));
00200 }

std::ostream & NC::OscProb::operator<< std::ostream &  os,
const OscPars &  rhs
 

Definition at line 63 of file NCOscProb.cxx.

References NC::OscProb::OscPars::Print().

00065 {
00066   return rhs.Print(os);
00067 }

double NC::OscProb::OscProbFs double  ssDeltaMSqr31,
double  amu,
double  fs,
double  ae,
int  oscMode
 

Helper function for SterileFraction model.

Definition at line 70 of file NCOscProb.cxx.

Referenced by NC::OscProb::SterileFractionTauNorm::TransitionProbability(), and NC::OscProb::SterileFraction::TransitionProbability().

00075 {
00076   switch(oscMode){
00077   case NCType::kNuMuToNuMu: return 1. - amu*ssDeltaMSqr31;
00078   case NCType::kNuMuToNuS: return fs*amu*ssDeltaMSqr31;
00079   case NCType::kNuMuToNuE: return ae*ssDeltaMSqr31;
00080   case NCType::kNuMuToNuTau: return (amu*(1.-fs)-ae)*ssDeltaMSqr31;
00081   case NCType::kNuEToNuE: return 1;
00082   default:
00083     assert(0 && "Bad oscMode");
00084   }
00085 }

NCType::EOscMode NC::OscProb::ToOscMode int  from,
int  to
 

Get correct NCType::EOscMode enumeration value from a pair of PDG codes from and to.

Use a PDG code of zero to represent a sterile neutrino. Will convert codes for antiparticles, or the charged leptons to the corresponding neutrino

Definition at line 203 of file NCOscProb.cxx.

Referenced by NC::OscProb::OscPars::TransitionProbability().

00204 {
00205   // Use the same oscillation designators for antiparticle oscillations
00206   if(from < 0) from *= -1;
00207   if(to < 0) to *= -1;
00208 
00209   // Translate e to nue, mu to numu, tau to nutau
00210   if(from%2) ++from;
00211   if(to%2) ++to;
00212 
00213   if(from == 14 && to == 14) return NCType::kNuMuToNuMu;
00214   if(from == 14 && to == 16) return NCType::kNuMuToNuTau;
00215   if(from == 14 && to == 12) return NCType::kNuMuToNuE;
00216   if(from == 14 && to ==  0) return NCType::kNuMuToNuS;
00217   if(from == 12 && to == 12) return NCType::kNuEToNuE;
00218 
00219   assert(0 && "Don't have an enum for this oscillation mode");
00220 }


Variable Documentation

const double NC::OscProb::kUninitialized = 0xDEADBEEF
 

Special-value for use in SafeDouble.

Definition at line 28 of file NCOscProb.h.

Referenced by NC::OscProb::SafeDouble::SafeDouble().


Generated on Mon Nov 23 05:33:48 2009 for loon by  doxygen 1.3.9.1