41 using namespace CLHEP;
82 if( pName ==
"anti_nu_e" || pName ==
"nu_mu" || pName ==
"anti_nu_mu" ) fmass =
theMuonMinus->
GetPDGMass();
86 minEnergy = (fmass-emass)*(fmass+emass)/emass;
88 if( ( pName ==
"nu_mu" || pName ==
"anti_nu_mu" ||
89 pName ==
"nu_tau" || pName ==
"anti_nu_tau" ) &&
108 emass2 = emass*emass;
109 totS = 2.*energy*emass + emass2;
111 if( pName ==
"anti_nu_e" || pName ==
"nu_mu")
114 fmass2 = fmass*fmass;
115 result = (1. - fmass2/totS)*(1. - fmass2/totS);
117 else if( pName ==
"anti_nu_mu")
120 fmass2 = fmass*fmass;
122 result = (1.+ emass2/totS)*(1.+ fmass2/totS);
123 result += (1.- emass2/totS)*(1.- fmass2/totS)/3.;
124 result *= 0.25*(1. - fmass2/totS)*(1. - fmass2/totS);
126 else if( pName ==
"nu_tau")
129 fmass2 = fmass*fmass;
130 result = (1. - fmass2/totS)*(1. - fmass2/totS);
132 else if( pName ==
"anti_nu_tau")
135 fmass2 = fmass*fmass;
137 result = (1.+ emass2/totS)*(1.+ fmass2/totS);
138 result += (1.- emass2/totS)*(1.- fmass2/totS)/3.;
139 result *= 0.25*(1. - fmass2/totS)*(1. - fmass2/totS);
153 if( energy > 50.*
GeV )
156 result /= 1.+ aa*totS/mw/mw;
158 if( pName ==
"anti_nu_e")
160 result *= 1. + dd*gw*gw*totS/( (totS-mw*mw)*(totS-mw*mw)+gw*gw*mw*mw );
164 result *= energy + 0.5*emass;