OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
SecondaryEmissionPhysics Class Reference

#include <SecondaryEmissionPhysics.h>

Public Member Functions

 SecondaryEmissionPhysics ()
 
 ~SecondaryEmissionPhysics ()
 
void nSec (const double &incEnergy, const double &cosTheta, const int &matNumber, int &seNum, int &seType, const double &incQ, const Vector_t &TriNorm, const Vector_t &inteCoords, const Vector_t &localX, PartBunchBase< double, 3 > *itsBunch, double &seyNum, const double &ppVw, const double &vVThermal, const bool nEmissionMode)
 
void nSec (const double &incEnergy, const double &cosTheta, int &seNum, int &seType, const double &incQ, const Vector_t &TriNorm, const Vector_t &inteCoords, const Vector_t &localX, PartBunchBase< double, 3 > *itsBunch, double &seyNum, const double &ppVw, const double &vSeyZero, const double &vEzero, const double &vSeyMax, const double &vEmax, const double &vKenergy, const double &vKtheta, const double &vVThermal, const bool nEmissionMode)
 

Public Attributes

double deltae_m
 
double deltar_m
 
double deltats_m
 

Private Member Functions

void calcEmiNum (const double incEnergy, const double cosTheta, int &seNum, const double &vSeyZero, const double &vEzero, const double &vSeyMax, const double &vEmax, const double &vKenergy, const double &vKtheta, double &seyNum)
 
void calcEmiNum (const double incEnergy, const double cosTheta, const double *prob, int &seNum)
 
double calcDeltats (const double incEnergy, const double cosTheta)
 
double calcDeltar (const double incEnergy, const double cosTheta)
 
double calcDeltae (const double incEnergy, const double cosTheta)
 
double calcProb (const double incEnergy, const double cosTheta, double *prob)
 
void setSeMaterial (int material_num)
 
double gaussRand ()
 
double gammp (const double a, const double x)
 
double gser (const double a, const double x)
 
double gcf (const double a, const double x)
 
double gammpapprox (double a, double x, int psig)
 
double gammln (const double xx)
 
double invgammp (double p, double a)
 
double min_Gamma (double x, double y)
 
double max_Gamma (double x, double y)
 
double betai (const double x, const double a, const double b)
 
double betacf (const double a, const double b, const double x)
 
double betaiapprox (double a, double b, double x)
 
double invbetai (double p, double a, double b)
 
void coordConverter (const Vector_t &, Vector_t &)
 

Private Attributes

IpplTimings::TimerRef TPnSec_m
 
double seAlpha_m
 
double sePScat_m
 
double sePScatPeak_m
 
double seEScatPeak_m
 
double seW_m
 
double seP_m
 
double seDelta_m
 
double seEOne_m
 
double seETwo_m
 
double sePRed_m
 
double seERed_m
 
double seR_m
 
double seQ_m
 
double seROne_m
 
double seRTwo_m
 
double seYPeakTS_m
 
double seEPeakTS_m
 
double seSTS_m
 
double seTOneTS_m
 
double seTTwoTS_m
 
double seTThreeTS_m
 
double seTFourTS_m
 
double seEPeakTot_m
 
double seYPeakTot_m
 
double sePn_m [10]
 
double seEpsn_m [10]
 

Detailed Description

Definition at line 19 of file SecondaryEmissionPhysics.h.

Constructor & Destructor Documentation

SecondaryEmissionPhysics::SecondaryEmissionPhysics ( )

Exemplar Constructor

Definition at line 11 of file SecondaryEmissionPhysics.cpp.

References IpplTimings::getTimer().

Here is the call graph for this function:

SecondaryEmissionPhysics::~SecondaryEmissionPhysics ( )

Destructor.

Delete the previous defined member arrays

Definition at line 20 of file SecondaryEmissionPhysics.cpp.

Member Function Documentation

double SecondaryEmissionPhysics::betacf ( const double  a,
const double  b,
const double  x 
)
private

Definition at line 1110 of file SecondaryEmissionPhysics.cpp.

References abs(), Physics::c, myeps::EPS, and myeps::FPMIN.

Here is the call graph for this function:

double SecondaryEmissionPhysics::betai ( const double  x,
const double  a,
const double  b 
)
private

Definition at line 1067 of file SecondaryEmissionPhysics.cpp.

References exp(), and log().

Here is the call graph for this function:

double SecondaryEmissionPhysics::betaiapprox ( double  a,
double  b,
double  x 
)
private

Definition at line 1156 of file SecondaryEmissionPhysics.cpp.

References exp(), log(), sqrt(), and sum().

Here is the call graph for this function:

double SecondaryEmissionPhysics::calcDeltae ( const double  incEnergy,
const double  cosTheta 
)
private

Definition at line 744 of file SecondaryEmissionPhysics.cpp.

References abs(), exp(), and pow().

Here is the call graph for this function:

double SecondaryEmissionPhysics::calcDeltar ( const double  incEnergy,
const double  cosTheta 
)
private

Definition at line 734 of file SecondaryEmissionPhysics.cpp.

References exp(), and pow().

Here is the call graph for this function:

double SecondaryEmissionPhysics::calcDeltats ( const double  incEnergy,
const double  cosTheta 
)
private

Definition at line 723 of file SecondaryEmissionPhysics.cpp.

References pow().

Here is the call graph for this function:

void SecondaryEmissionPhysics::calcEmiNum ( const double  incEnergy,
const double  cosTheta,
int &  seNum,
const double &  vSeyZero,
const double &  vEzero,
const double &  vSeyMax,
const double &  vEmax,
const double &  vKenergy,
const double &  vKtheta,
double &  seyNum 
)
private

Definition at line 645 of file SecondaryEmissionPhysics.cpp.

References acos(), exp(), IpplRandom, PAssert_GT, pow(), and Physics::two_pi.

Here is the call graph for this function:

void SecondaryEmissionPhysics::calcEmiNum ( const double  incEnergy,
const double  cosTheta,
const double *  prob,
int &  seNum 
)
private

Definition at line 695 of file SecondaryEmissionPhysics.cpp.

References IpplRandom.

double SecondaryEmissionPhysics::calcProb ( const double  incEnergy,
const double  cosTheta,
double *  prob 
)
private

Definition at line 754 of file SecondaryEmissionPhysics.cpp.

References pow().

Here is the call graph for this function:

void SecondaryEmissionPhysics::coordConverter ( const Vector_t ,
Vector_t  
)
inlineprivate

Definition at line 257 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::gammln ( const double  xx)
private

Definition at line 1007 of file SecondaryEmissionPhysics.cpp.

References log().

Here is the call graph for this function:

double SecondaryEmissionPhysics::gammp ( const double  a,
const double  x 
)
private

Definition at line 914 of file SecondaryEmissionPhysics.cpp.

double SecondaryEmissionPhysics::gammpapprox ( double  a,
double  x,
int  psig 
)
private

Definition at line 971 of file SecondaryEmissionPhysics.cpp.

References exp(), log(), sqrt(), and sum().

Here is the call graph for this function:

double SecondaryEmissionPhysics::gaussRand ( )
private

Definition at line 895 of file SecondaryEmissionPhysics.cpp.

References IpplRandom, log(), and sqrt().

Here is the call graph for this function:

double SecondaryEmissionPhysics::gcf ( const double  a,
const double  x 
)
private

Definition at line 946 of file SecondaryEmissionPhysics.cpp.

References abs(), Physics::c, myeps::EPS, exp(), myeps::FPMIN, and log().

Here is the call graph for this function:

double SecondaryEmissionPhysics::gser ( const double  a,
const double  x 
)
private

Definition at line 929 of file SecondaryEmissionPhysics.cpp.

References abs(), myeps::EPS, exp(), log(), and sum().

Here is the call graph for this function:

double SecondaryEmissionPhysics::invbetai ( double  p,
double  a,
double  b 
)
private

Definition at line 1198 of file SecondaryEmissionPhysics.cpp.

References abs(), myeps::EPS, exp(), log(), pow(), and sqrt().

Here is the call graph for this function:

double SecondaryEmissionPhysics::invgammp ( double  p,
double  a 
)
private

Definition at line 1026 of file SecondaryEmissionPhysics.cpp.

References abs(), Physics::e, myeps::EPS, exp(), log(), pow(), and sqrt().

Here is the call graph for this function:

double SecondaryEmissionPhysics::max_Gamma ( double  x,
double  y 
)
inlineprivate

Definition at line 272 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::min_Gamma ( double  x,
double  y 
)
inlineprivate

Definition at line 264 of file SecondaryEmissionPhysics.h.

void SecondaryEmissionPhysics::nSec ( const double &  incEnergy,
const double &  cosTheta,
const int &  matNumber,
int &  seNum,
int &  seType,
const double &  incQ,
const Vector_t TriNorm,
const Vector_t inteCoords,
const Vector_t localX,
PartBunchBase< double, 3 > *  itsBunch,
double &  seyNum,
const double &  ppVw,
const double &  vVThermal,
const bool  nEmissionMode 
)
void SecondaryEmissionPhysics::nSec ( const double &  incEnergy,
const double &  cosTheta,
int &  seNum,
int &  seType,
const double &  incQ,
const Vector_t TriNorm,
const Vector_t inteCoords,
const Vector_t localX,
PartBunchBase< double, 3 > *  itsBunch,
double &  seyNum,
const double &  ppVw,
const double &  vSeyZero,
const double &  vEzero,
const double &  vSeyMax,
const double &  vEmax,
const double &  vKenergy,
const double &  vKtheta,
const double &  vVThermal,
const bool  nEmissionMode 
)
void SecondaryEmissionPhysics::setSeMaterial ( int  material_num)
private

Definition at line 787 of file SecondaryEmissionPhysics.cpp.

Member Data Documentation

double SecondaryEmissionPhysics::deltae_m

Definition at line 72 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::deltar_m

Definition at line 73 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::deltats_m

Definition at line 74 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seAlpha_m
private
Parameters
seAlpha_mis the emitted angular spectrum parameter, i.e., the 1st parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 87 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seDelta_m
private
Parameters
seDelta_mis the 7th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 119 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seEOne_m
private
Parameters
seEOne_mis the 8th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 123 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seEPeakTot_m
private
Parameters
seEPeakTot_mis the 23rd parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 198 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seEPeakTS_m
private
Parameters
seEPeakTS_mis the 17th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 174 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seEpsn_m[10]
private

Definition at line 208 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seERed_m
private
Parameters
seERed_mis the 11th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 144 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seEScatPeak_m
private
Parameters
seEScatPeak_mis the 4th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 107 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seETwo_m
private
Parameters
seETwo_mis the 9th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 127 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seP_m
private
Parameters
seP_mis the 6th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 115 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::sePn_m[10]
private

Definition at line 207 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::sePRed_m
private
Parameters
sePRed_mis the 10th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 140 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::sePScat_m
private
Parameters
sePScat_mis the 2nd parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 99 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::sePScatPeak_m
private
Parameters
sePScatPeak_mis the 3rd parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 103 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seQ_m
private
Parameters
seQ_mis the 13th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 152 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seR_m
private
Parameters
seR_mis the 12th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 148 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seROne_m
private
Parameters
seROne_mis the 14th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 156 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seRTwo_m
private
Parameters
seRTwo_mis the 15th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 160 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seSTS_m
private
Parameters
seSTS_mis the 18th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 178 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seTFourTS_m
private
Parameters
seTFourTS_mis the 22nd parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 194 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seTOneTS_m
private
Parameters
seTOneTS_mis the 19th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 182 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seTThreeTS_m
private
Parameters
seTThreeTS_mis the 21st parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 190 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seTTwoTS_m
private
Parameters
seTTwoTS_mis the 20th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 186 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seW_m
private
Parameters
seW_mis the 5th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 111 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seYPeakTot_m
private
Parameters
seYPeakTot_mis the 24th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 202 of file SecondaryEmissionPhysics.h.

double SecondaryEmissionPhysics::seYPeakTS_m
private
Parameters
seYPeakTS_mis the 16th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002)

Definition at line 170 of file SecondaryEmissionPhysics.h.

IpplTimings::TimerRef SecondaryEmissionPhysics::TPnSec_m
private
Parameters
TPnSec_mis the timmer of secondary emission module.

Definition at line 82 of file SecondaryEmissionPhysics.h.


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