Jpp  15.0.2
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Private Types | List of all members
JPHYSICS::JRadiationFunction Class Reference

Fast implementation of class JRadiation. More...

#include <JRadiationSource.hh>

Inheritance diagram for JPHYSICS::JRadiationFunction:
JPHYSICS::JRadiation

Public Member Functions

 JRadiationFunction (const JRadiation &radiation, const unsigned int number_of_bins, const double Emin, const double Emax)
 Constructor. More...
 
virtual double TotalCrossSectionEErad (const double E) const override
 Pair production cross section. More...
 
virtual double CalculateACoeff (const double E) const override
 A Coefficient. More...
 
virtual double TotalCrossSectionGNrad (const double E) const override
 Photo-nuclear cross section. More...
 
double SigmaEErad (const double E, const double eps) const
 Pair production cross section. More...
 
double TotalCrossSectionBrems (const double E) const
 Bremsstrahlung cross section. More...
 
virtual double SigmaGNrad (const double E, const double eps) const
 Photo-nuclear cross section. More...
 
double EfromBrems (const double E) const
 Bremsstrahlung shower energy. More...
 
double EfromEErad (const double E) const
 Pair production shower energy. More...
 
double EfromGNrad (const double E) const
 Photo-nuclear shower energy. More...
 

Protected Member Functions

virtual double IntegralofG (const double E, const double eps) const
 
double GofZEvrho (const double E, const double v, const double r) const
 

Static Protected Member Functions

static double sigmaGammaPparam (const double eps)
 
static double PhiofEofepsparam (const double E, const double eps)
 
static double le ()
 
static double r0 ()
 
static double Astar ()
 
static double B ()
 
static double BP ()
 

Protected Attributes

JFunction1D_t sigmaEE
 
JFunction1D_t sigmaGN
 
JFunction1D_t Acoeff
 
JFunction2D_t integral
 
const double Z
 
const double A
 
const double Dn
 
const double DnP
 
const int steps
 
const double EminBrems
 
const double EminEErad
 
const double EminGNrad
 

Private Types

typedef
JTOOLS::JGridPolint1Function1D_t 
JFunction1D_t
 
typedef JTOOLS::JMultiFunction
< JFunction1D_t,
JTOOLS::JMapList
< JTOOLS::JPolint1FunctionalGridMap > > 
JFunction2D_t
 

Detailed Description

Fast implementation of class JRadiation.

In this, the methods

JRadiation::TotalCrossSectionEErad(...), JRadiation::TotalCrossSectionGNrad(...) and JRadiation::IntegralofG(...)

are replaced by lookup tables.

Definition at line 35 of file JRadiationSource.hh.

Member Typedef Documentation

Definition at line 39 of file JRadiationSource.hh.

Definition at line 41 of file JRadiationSource.hh.

Constructor & Destructor Documentation

JPHYSICS::JRadiationFunction::JRadiationFunction ( const JRadiation radiation,
const unsigned int  number_of_bins,
const double  Emin,
const double  Emax 
)
inlineexplicit

Constructor.

Parameters
radiationJRadiation object
number_of_binsnumber of bins
Eminminimal muon energy [GeV]
Emaxmaximal muon energy [GeV]

Acoeff

Definition at line 52 of file JRadiationSource.hh.

55  :
56  JRadiation(radiation)
57  {
58  using namespace JTOOLS;
59 
60  const double xmin = log(Emin);
61  const double xmax = log(Emax);
62 
63 
64  integral.configure(make_grid(number_of_bins, xmin, xmax));
65 
66  for (JFunction2D_t::iterator i = integral.begin(); i != integral.end(); ++i) {
67 
68  const double x = i->getX();
69  const double E = exp(x);
70 
71  const double ymin = log(EminEErad/E);
72  const double ymax = 0.0;
73 
74  if (ymax > ymin) {
75 
76  i->getY().configure(make_grid(number_of_bins, ymin, ymax));
77 
78  for (JFunction1D_t::iterator j = i->getY().begin(); j != i->getY().end(); ++j) {
79 
80  const double y = j->getX();
81  const double eps = exp(y) * E;
82  const double z = JRadiation::IntegralofG(E, eps);
83 
84  j->getY() = z;
85  }
86  }
87  }
88 
89  integral.compile();
90  integral.setExceptionHandler(new JFunction1D_t::JDefaultResult(0.0));
91 
92 
93  sigmaEE.configure(make_grid(number_of_bins, xmin, xmax));
94 
95  for (JFunction1D_t::iterator i = sigmaEE.begin(); i != sigmaEE.end(); ++i) {
96 
97  const double E = exp(i->getX());
98  const double y = JRadiation::TotalCrossSectionEErad(E);
99 
100  i->getY() = y;
101  }
102 
103  sigmaEE.compile();
104 
105 
106  sigmaGN.configure(make_grid(number_of_bins, xmin, xmax));
107 
108  for (JFunction1D_t::iterator i = sigmaGN.begin(); i != sigmaGN.end(); ++i) {
109 
110  const double E = exp(i->getX());
111  const double y = JRadiation::TotalCrossSectionGNrad(E);
112 
113  i->getY() = y;
114  }
115 
116  sigmaGN.compile();
117 
118  /**
119  Acoeff*/
120  Acoeff.configure(make_grid(number_of_bins, xmin, xmax));
121  for (JFunction1D_t::iterator i = Acoeff.begin(); i != Acoeff.end(); ++i) {
122 
123  const double E = exp(i->getX());
124  const double y = JRadiation::CalculateACoeff(E);
125 
126  i->getY() = y;
127  }
128 
129  Acoeff.compile();
130 
131  }
void compile()
Compilation.
const double EminEErad
Definition: JRadiation.hh:390
void setExceptionHandler(const supervisor_type &supervisor)
Set the supervisor for handling of exceptions.
then usage E
Definition: JMuonPostfit.sh:35
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable STRING $argv[2] set_array QUANTILES set_variable FORMULA *[0] exp(-0.5 *(x-[1])*(x-[1])/([2]*[2]))" set_variable MODULE `getModule -a $DETECTOR -L "$STRING 0"` typeset -Z 4 STRING JOpera1D -f hydrophone.root
JRadiation(const double z, const double a, const int integrsteps, const double eminBrems, const double eminEErad, const double eminGNrad)
Constructor.
Definition: JRadiation.hh:51
virtual double TotalCrossSectionEErad(const double E) const
Pair production cross section.
Definition: JRadiation.hh:113
int j
Definition: JPolint.hh:666
virtual double CalculateACoeff(double Energy) const
Ionization a parameter.
Definition: JRadiation.hh:289
virtual double IntegralofG(const double E, const double eps) const
Definition: JRadiation.hh:339
virtual double TotalCrossSectionGNrad(const double E) const
Photo-nuclear cross section.
Definition: JRadiation.hh:194
JGrid< JAbscissa_t > make_grid(const int nx, const JAbscissa_t Xmin, const JAbscissa_t Xmax)
Helper method for JGrid.
Definition: JGrid.hh:177

Member Function Documentation

virtual double JPHYSICS::JRadiationFunction::TotalCrossSectionEErad ( const double  E) const
inlineoverridevirtual

Pair production cross section.

Parameters
Emuon energy [GeV]
Returns
cross section [m^2/g]

Reimplemented from JPHYSICS::JRadiation.

Definition at line 140 of file JRadiationSource.hh.

141  {
142  const double x = log(E);
143 
144  if (x >= sigmaEE. begin()->getX() &&
145  x <= sigmaEE.rbegin()->getX()) {
146 
147  try {
148  return sigmaEE(x);
149  }
150  catch(std::exception& error) {
151  std::cerr << "JRadiation::TotalCrossSectionEErad() " << E << ' ' << error.what() << std::endl;
152  }
153  }
154 
156  }
then usage E
Definition: JMuonPostfit.sh:35
virtual double TotalCrossSectionEErad(const double E) const
Pair production cross section.
Definition: JRadiation.hh:113
virtual double JPHYSICS::JRadiationFunction::CalculateACoeff ( const double  E) const
inlineoverridevirtual

A Coefficient.

Parameters
Emuon energy [GeV]
Returns
Ionization A parameter [GeV/m]

Reimplemented from JPHYSICS::JRadiation.

Definition at line 163 of file JRadiationSource.hh.

164  {
165  const double x = log(E);
166 
167  if (x >= Acoeff. begin()->getX() &&
168  x <= Acoeff.rbegin()->getX()) {
169 
170  try {
171  return Acoeff(x);
172  }
173  catch(std::exception& error) {
174  std::cerr << "JRadiation::ACoeff() " << E << ' ' << error.what() << std::endl;
175  }
176  }
178  }
then usage E
Definition: JMuonPostfit.sh:35
virtual double CalculateACoeff(double Energy) const
Ionization a parameter.
Definition: JRadiation.hh:289
virtual double JPHYSICS::JRadiationFunction::TotalCrossSectionGNrad ( const double  E) const
inlineoverridevirtual

Photo-nuclear cross section.

Parameters
Emuon energy [GeV]
Returns
cross section [m^2/g]

Reimplemented from JPHYSICS::JRadiation.

Definition at line 187 of file JRadiationSource.hh.

188  {
189  const double x = log(E);
190 
191  if (x >= sigmaGN. begin()->getX() &&
192  x <= sigmaGN.rbegin()->getX()) {
193 
194  try {
195  return sigmaGN(x);
196  }
197  catch(std::exception& error) {
198  std::cerr << "JRadiation::TotalCrossSectionGNrad() " << E << ' ' << error.what() << std::endl;
199  }
200  }
201 
203  }
then usage E
Definition: JMuonPostfit.sh:35
virtual double TotalCrossSectionGNrad(const double E) const
Photo-nuclear cross section.
Definition: JRadiation.hh:194
virtual double JPHYSICS::JRadiationFunction::IntegralofG ( const double  E,
const double  eps 
) const
inlineprotectedvirtual

Reimplemented from JPHYSICS::JRadiation.

Definition at line 206 of file JRadiationSource.hh.

208  {
209  try {
210 
211  const double x = log(E);
212  const double y = log(eps/E);
213  const double z = integral(x, y);
214 
215  return z;
216  }
217  catch(std::exception& error) {
218  std::cerr << "JRadiation::IntegralofG() " << E << ' ' << eps << ' ' << error.what() << std::endl;
219  }
220 
221  return JRadiation::IntegralofG(E, eps);
222  }
then usage E
Definition: JMuonPostfit.sh:35
virtual double IntegralofG(const double E, const double eps) const
Definition: JRadiation.hh:339
double JPHYSICS::JRadiation::SigmaEErad ( const double  E,
const double  eps 
) const
inlineinherited

Pair production cross section.

Parameters
Emuon energy [GeV]
epsshower energy [GeV]
Returns
cross section [m^2/g]

Definition at line 77 of file JRadiation.hh.

79  {
80  //routine to calculate dsigma/de in cm^2/GeV for radiating a photon of energy eps
81 
82  if(eps<4.*MASS_ELECTRON)return 0.;
83  if(eps>E-0.75*exp(1.0)*pow(Z,1./3.)) return 0.;
84  double zeta;
85  if(E<35.*MASS_MUON)
86  {
87  zeta = 0.;
88  }
89  else
90  {
91  zeta = (0.073*log((E/MASS_MUON)/(1.+1.95e-5*pow(Z,2./3.)*E/MASS_MUON))-0.26);
92  if(zeta<0.)
93  {
94  zeta=0.;
95  }
96  else
97  {
98  zeta = zeta/(0.058*log((E/MASS_MUON)/(1.+5.3e-5*pow(Z,1./3.)*E/MASS_MUON))-0.14);
99  }
100  }
101  double integ = IntegralofG(E,eps);
102  //cout<< eps<<" integ "<< integ<<endl;
103  return integ*(4/(3.*M_PI))*(Z*(Z+zeta)/A)*AVOGADRO*pow((ALPHA_ELECTRO_MAGNETIC*r0()),2.)*(1-eps/E)/eps;
104  }
static double r0()
Definition: JRadiation.hh:379
static const double MASS_MUON
muon mass [GeV]
static const double AVOGADRO
Avogadro&#39;s number [gr^-1].
then usage E
Definition: JMuonPostfit.sh:35
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable STRING $argv[2] set_array QUANTILES set_variable FORMULA *[0] exp(-0.5 *(x-[1])*(x-[1])/([2]*[2]))" set_variable MODULE `getModule -a $DETECTOR -L "$STRING 0"` typeset -Z 4 STRING JOpera1D -f hydrophone.root
T pow(const T &x, const double y)
Power .
Definition: JMath.hh:98
static const double MASS_ELECTRON
electron mass [GeV]
static const double ALPHA_ELECTRO_MAGNETIC
Electro-Magnetic coupling constant.
virtual double IntegralofG(const double E, const double eps) const
Definition: JRadiation.hh:339
double JPHYSICS::JRadiation::TotalCrossSectionBrems ( const double  E) const
inlineinherited

Bremsstrahlung cross section.

Parameters
Emuon energy [GeV]
Returns
cross section [m^2/g]

Definition at line 141 of file JRadiation.hh.

142  {
143  // double delta = (MASS_MUON*MASS_MUON*eps)/(2*E*(E-eps));
144  double delta = (MASS_MUON*MASS_MUON)/(2*E);
145  //double v = eps/E;
146  double Phin = log((B()*pow(Z,-1./3.)*(MASS_MUON+delta*(DnP*sqrt(exp(1.0))-2.)))/(DnP*(MASS_ELECTRON+delta*sqrt(exp(1.0))*B()*pow(Z,-1./3.))));
147  if(Phin<0.)Phin=0.;
148  double Phie = log((BP()*pow(Z,-2./3.)*MASS_MUON)/((1+delta*MASS_MUON/(MASS_ELECTRON*MASS_ELECTRON*sqrt(exp(1.0))))*(MASS_ELECTRON+delta*sqrt(exp(1.0))*BP()*pow(Z,-2./3.))));
149  if(Phie<0.)Phie=0.;
150  //if(eps>E/(1+MASS_MUON*MASS_MUON/(2.*MASS_ELECTRON*E)))Phie=0.;
151  double sig = (16./3.)*ALPHA_ELECTRO_MAGNETIC*AVOGADRO*pow((MASS_ELECTRON/MASS_MUON*r0()),2.0)*Z*(Z*Phin+Phie)/(A);
152  double epsint = log((E-MASS_MUON)/EminBrems)-(E-MASS_MUON-EminBrems)/E+0.375*(pow(E-MASS_MUON,2.)-pow(EminBrems,2.0))/pow(E,2.0);
153  return epsint*sig;//"cross section" in m^2/g multiplied by density and inverted gives mean free path
154  }
static double r0()
Definition: JRadiation.hh:379
static double B()
Definition: JRadiation.hh:381
static const double MASS_MUON
muon mass [GeV]
const double DnP
Definition: JRadiation.hh:387
static const double AVOGADRO
Avogadro&#39;s number [gr^-1].
then usage E
Definition: JMuonPostfit.sh:35
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable STRING $argv[2] set_array QUANTILES set_variable FORMULA *[0] exp(-0.5 *(x-[1])*(x-[1])/([2]*[2]))" set_variable MODULE `getModule -a $DETECTOR -L "$STRING 0"` typeset -Z 4 STRING JOpera1D -f hydrophone.root
T pow(const T &x, const double y)
Power .
Definition: JMath.hh:98
static const double MASS_ELECTRON
electron mass [GeV]
const double EminBrems
Definition: JRadiation.hh:389
static double BP()
Definition: JRadiation.hh:382
static const double ALPHA_ELECTRO_MAGNETIC
Electro-Magnetic coupling constant.
virtual double JPHYSICS::JRadiation::SigmaGNrad ( const double  E,
const double  eps 
) const
inlinevirtualinherited

Photo-nuclear cross section.

Parameters
Emuon energy [GeV]
epsshower energy [GeV]
Returns
cross section [m^2/g]

Definition at line 164 of file JRadiation.hh.

165  {
166 
167  //minimum radiated energy is 0.2 GeV, not very critical formulae become invalid for very much lower
168  //result is given in m^2/g GeV
169  if (eps<0.2) return 0.;
170  if (eps>E-MASS_PROTON) return 0.;
171  double Aeff;
172  if (A==1)
173  {Aeff = 1.;}
174  else
175  {Aeff = (0.22*A + 0.78 * pow(A,0.89));}
176  double sigmaGammaPofeps = (49.2 + 11.1 * log(eps) + 151.8/sqrt(eps))*pow(10,-34.);
177  double Psiofeps = ALPHA_ELECTRO_MAGNETIC/PI*Aeff*AVOGADRO/A*sigmaGammaPofeps/eps;
178  double Denom = 1+eps/LAMBDA*(1+LAMBDA/(2*MASS_PROTON)+eps/LAMBDA);
179  double epsoverE = eps/E;
180  double Numerator = E * E * (1 - epsoverE) / (MASS_MUON * MASS_MUON) * (1 + MASS_MUON * MASS_MUON * epsoverE * epsoverE / (LAMBDA * LAMBDA * (1 - epsoverE)));
181  double Factor = 1 - epsoverE + epsoverE * epsoverE / 2 * (1 + 2 * MASS_MUON * MASS_MUON / (LAMBDA * LAMBDA));
182  double PhiofEofeps = epsoverE - 1 + Factor * log (Numerator / Denom);
183  //cout<<"PhiofEofeps "<<PhiofEofeps<<" Psiofeps "<<Psiofeps<<endl;
184  return Psiofeps*PhiofEofeps;
185  }
static const double MASS_MUON
muon mass [GeV]
static const double AVOGADRO
Avogadro&#39;s number [gr^-1].
then usage E
Definition: JMuonPostfit.sh:35
Auxiliary data structure to convert (lambda) function to printable object.
Definition: JManip.hh:724
T pow(const T &x, const double y)
Power .
Definition: JMath.hh:98
static const double PI
Mathematical constants.
static const double MASS_PROTON
proton mass [GeV]
static const double ALPHA_ELECTRO_MAGNETIC
Electro-Magnetic coupling constant.
double JPHYSICS::JRadiation::EfromBrems ( const double  E) const
inlineinherited

Bremsstrahlung shower energy.

Parameters
Emuon energy [GeV]
Returns
shower energy [GeV]

Definition at line 219 of file JRadiation.hh.

220  {
221  //double EminBrems(0.01);
222  //generate according to 1/k from minimum energy to E
223  double Er = 0.0;
224  for (int i = 1000; i != 0; --i) {
225  Er = EminBrems*exp(gRandom->Rndm()*log(E/EminBrems));
226  //check on the extra factor (1-v+3/4v^2)
227  if(gRandom->Rndm()<(1.-Er/E+0.75*pow(Er/E,2))) break;
228  }
229  return Er;
230  }
then usage E
Definition: JMuonPostfit.sh:35
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable STRING $argv[2] set_array QUANTILES set_variable FORMULA *[0] exp(-0.5 *(x-[1])*(x-[1])/([2]*[2]))" set_variable MODULE `getModule -a $DETECTOR -L "$STRING 0"` typeset -Z 4 STRING JOpera1D -f hydrophone.root
T pow(const T &x, const double y)
Power .
Definition: JMath.hh:98
const double EminBrems
Definition: JRadiation.hh:389
double JPHYSICS::JRadiation::EfromEErad ( const double  E) const
inlineinherited

Pair production shower energy.

Parameters
Emuon energy [GeV]
Returns
shower energy [GeV]

Definition at line 239 of file JRadiation.hh.

240  {
241  //generate according to 1/k from minimum energy to E
242 
243  const double eps =0.2;
244  const double IntGmax = IntegralofG(E,eps)*2.0;
245 
246  double Er = 0.0;
247  for (int i = 1000; i != 0; --i)
248  {
249  Er = EminEErad*exp(gRandom->Rndm()*log(E/EminEErad));
250  //check on the extra factor, (1-v) and IntofG
251  double factor = (1.-Er/E)*IntegralofG(E,Er)/IntGmax;
252  if(gRandom->Rndm()<factor) break;
253  }
254  return Er;
255  }
const double EminEErad
Definition: JRadiation.hh:390
then usage E
Definition: JMuonPostfit.sh:35
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable STRING $argv[2] set_array QUANTILES set_variable FORMULA *[0] exp(-0.5 *(x-[1])*(x-[1])/([2]*[2]))" set_variable MODULE `getModule -a $DETECTOR -L "$STRING 0"` typeset -Z 4 STRING JOpera1D -f hydrophone.root
virtual double IntegralofG(const double E, const double eps) const
Definition: JRadiation.hh:339
double JPHYSICS::JRadiation::EfromGNrad ( const double  E) const
inlineinherited

Photo-nuclear shower energy.

Parameters
Emuon energy [GeV]
Returns
shower energy [GeV]

Definition at line 263 of file JRadiation.hh.

264  {
265  //generate according to 1/k from minimum energy to E
266 
267  double cmax = sigmaGammaPparam(EminGNrad);
268  if (cmax < sigmaGammaPparam(E))
269  cmax=sigmaGammaPparam(E);
270 
271  double Pmax = PhiofEofepsparam(E,EminGNrad);
272 
273  double Er = 0.0;
274  for (int i = 1000; i != 0; --i) {
275  Er = EminGNrad*exp(gRandom->Rndm()*log(E/EminGNrad));
276  const double factor = PhiofEofepsparam(E,Er)*sigmaGammaPparam(Er)/(cmax*Pmax);
277  if (gRandom->Rndm() < factor) return Er;
278  }
279 
280  return Er;
281  }
then usage E
Definition: JMuonPostfit.sh:35
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable STRING $argv[2] set_array QUANTILES set_variable FORMULA *[0] exp(-0.5 *(x-[1])*(x-[1])/([2]*[2]))" set_variable MODULE `getModule -a $DETECTOR -L "$STRING 0"` typeset -Z 4 STRING JOpera1D -f hydrophone.root
static double sigmaGammaPparam(const double eps)
Definition: JRadiation.hh:362
const double EminGNrad
Definition: JRadiation.hh:391
static double PhiofEofepsparam(const double E, const double eps)
Definition: JRadiation.hh:367
double JPHYSICS::JRadiation::GofZEvrho ( const double  E,
const double  v,
const double  r 
) const
inlineprotectedinherited

Definition at line 320 of file JRadiation.hh.

323  {
324  const double ksi = MASS_MUON*MASS_MUON*v*v*(1-r*r)/(4*MASS_ELECTRON*MASS_ELECTRON*(1-v));//
325  const double b = v*v/(2*(1-v));//
326  const double Be = ((2+r*r)*(1+b)+ksi*(3+r*r))*log(1+1/ksi)+(1-r*r-b)/(1+ksi)-(3+r*r);
327  const double Bm = ((1+r*r)*(1+3*b/2)-(1+2*b)*(1-r*r)/ksi)*log(1+ksi)+ksi*(1-r*r-b)/(1+ksi)+(1+2*b)*(1-r*r);
328  const double Ye = (5-r*r+4*b*(1+r*r))/(2*(1+3*b)*log(3+1/ksi)-r*r-2*b*(2-r*r));
329  const double Ym = (4+r*r+3*b*(1+r*r))/((1+r*r)*(1.5+2*b)*log(3+ksi)+1-1.5*r*r);
330  const double Le = log((Astar()*pow(Z,-1./3.)*sqrt((1+ksi)*(1+Ye)))/
331  (1.+(2.*MASS_ELECTRON*sqrt(exp(1.))*Astar()*pow(Z,-1./3.)*(1+ksi)*(1+Ye))/(E*v*(1-r*r))));
332  const double Lm = log(((MASS_MUON/MASS_ELECTRON)*Astar()*pow(Z,-1./3.)*sqrt((1.+1./ksi)*(1.+Ym)))/
333  (1.+(2.*MASS_ELECTRON*sqrt(exp(1.))*Astar()*pow(Z,-1./3.)*(1+ksi)*(1+Ym))/(E*v*(1-r*r))));
334  double Phie = Be*Le; if(Phie<0.)Phie=0.;
335  double Phim = Bm*Lm; if(Phim<0.)Phim=0.;
336  return Phie+(MASS_ELECTRON*MASS_ELECTRON/(MASS_MUON*MASS_MUON))*Phim;
337  }
static const double MASS_MUON
muon mass [GeV]
data_type r[M+1]
Definition: JPolint.hh:742
then usage E
Definition: JMuonPostfit.sh:35
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable STRING $argv[2] set_array QUANTILES set_variable FORMULA *[0] exp(-0.5 *(x-[1])*(x-[1])/([2]*[2]))" set_variable MODULE `getModule -a $DETECTOR -L "$STRING 0"` typeset -Z 4 STRING JOpera1D -f hydrophone.root
static double Astar()
Definition: JRadiation.hh:380
T pow(const T &x, const double y)
Power .
Definition: JMath.hh:98
static const double MASS_ELECTRON
electron mass [GeV]
data_type v[N+1][M+1]
Definition: JPolint.hh:740
static double JPHYSICS::JRadiation::sigmaGammaPparam ( const double  eps)
inlinestaticprotectedinherited

Definition at line 362 of file JRadiation.hh.

363  {
364  return (49.2 + 11.1 * log(eps) + 151.8/sqrt(eps));
365  }
static double JPHYSICS::JRadiation::PhiofEofepsparam ( const double  E,
const double  eps 
)
inlinestaticprotectedinherited

Definition at line 367 of file JRadiation.hh.

368  {
369  const double Denom = 1+eps/LAMBDA*(1+LAMBDA/(2*MASS_PROTON)+eps/LAMBDA);
370  const double epsoverE = eps/E;
371  const double Numerator = E * E * (1 - epsoverE) / (MASS_MUON * MASS_MUON) * (1 + MASS_MUON * MASS_MUON * epsoverE * epsoverE /
372  (LAMBDA * LAMBDA * (1 - epsoverE)));
373  const double Factor = 1 - epsoverE + epsoverE * epsoverE / 2 * (1 + 2 * MASS_MUON * MASS_MUON / (LAMBDA * LAMBDA));
374  return (epsoverE - 1 + Factor * log (Numerator / Denom));
375  }
static const double MASS_MUON
muon mass [GeV]
then usage E
Definition: JMuonPostfit.sh:35
Auxiliary data structure to convert (lambda) function to printable object.
Definition: JManip.hh:724
static const double MASS_PROTON
proton mass [GeV]
static double JPHYSICS::JRadiation::le ( )
inlinestaticprotectedinherited

Definition at line 378 of file JRadiation.hh.

378 { return 3.8616E-13;}
static double JPHYSICS::JRadiation::r0 ( )
inlinestaticprotectedinherited

Definition at line 379 of file JRadiation.hh.

379 { return 2.817940e-15; }
static double JPHYSICS::JRadiation::Astar ( )
inlinestaticprotectedinherited

Definition at line 380 of file JRadiation.hh.

380 { return 183.0; }
static double JPHYSICS::JRadiation::B ( )
inlinestaticprotectedinherited

Definition at line 381 of file JRadiation.hh.

381 { return 183.0; }
static double JPHYSICS::JRadiation::BP ( )
inlinestaticprotectedinherited

Definition at line 382 of file JRadiation.hh.

382 { return 1429.0; }

Member Data Documentation

JFunction1D_t JPHYSICS::JRadiationFunction::sigmaEE
protected

Definition at line 224 of file JRadiationSource.hh.

JFunction1D_t JPHYSICS::JRadiationFunction::sigmaGN
protected

Definition at line 225 of file JRadiationSource.hh.

JFunction1D_t JPHYSICS::JRadiationFunction::Acoeff
protected

Definition at line 226 of file JRadiationSource.hh.

JFunction2D_t JPHYSICS::JRadiationFunction::integral
protected

Definition at line 227 of file JRadiationSource.hh.

const double JPHYSICS::JRadiation::Z
protectedinherited

Definition at line 384 of file JRadiation.hh.

const double JPHYSICS::JRadiation::A
protectedinherited

Definition at line 385 of file JRadiation.hh.

const double JPHYSICS::JRadiation::Dn
protectedinherited

Definition at line 386 of file JRadiation.hh.

const double JPHYSICS::JRadiation::DnP
protectedinherited

Definition at line 387 of file JRadiation.hh.

const int JPHYSICS::JRadiation::steps
protectedinherited

Definition at line 388 of file JRadiation.hh.

const double JPHYSICS::JRadiation::EminBrems
protectedinherited

Definition at line 389 of file JRadiation.hh.

const double JPHYSICS::JRadiation::EminEErad
protectedinherited

Definition at line 390 of file JRadiation.hh.

const double JPHYSICS::JRadiation::EminGNrad
protectedinherited

Definition at line 391 of file JRadiation.hh.


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