|
OPAL (Object Oriented Parallel Accelerator Library)
2.2.0
OPAL
|
#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] |
Definition at line 19 of file SecondaryEmissionPhysics.h.
| SecondaryEmissionPhysics::SecondaryEmissionPhysics | ( | ) |
Exemplar Constructor
Definition at line 11 of file SecondaryEmissionPhysics.cpp.
References IpplTimings::getTimer().

| SecondaryEmissionPhysics::~SecondaryEmissionPhysics | ( | ) |
Destructor.
Delete the previous defined member arrays
Definition at line 20 of file SecondaryEmissionPhysics.cpp.
|
private |
Definition at line 1110 of file SecondaryEmissionPhysics.cpp.
References abs(), Physics::c, myeps::EPS, and myeps::FPMIN.

|
private |
Definition at line 1067 of file SecondaryEmissionPhysics.cpp.

|
private |
|
private |
Definition at line 744 of file SecondaryEmissionPhysics.cpp.
References abs(), exp(), and pow().

|
private |
Definition at line 734 of file SecondaryEmissionPhysics.cpp.

|
private |
Definition at line 723 of file SecondaryEmissionPhysics.cpp.
References pow().

|
private |
Definition at line 645 of file SecondaryEmissionPhysics.cpp.
References acos(), exp(), IpplRandom, PAssert_GT, pow(), and Physics::two_pi.

|
private |
Definition at line 695 of file SecondaryEmissionPhysics.cpp.
References IpplRandom.
|
private |
Definition at line 754 of file SecondaryEmissionPhysics.cpp.
References pow().

Definition at line 257 of file SecondaryEmissionPhysics.h.
|
private |
Definition at line 1007 of file SecondaryEmissionPhysics.cpp.
References log().

|
private |
Definition at line 914 of file SecondaryEmissionPhysics.cpp.
|
private |
|
private |
Definition at line 895 of file SecondaryEmissionPhysics.cpp.
References IpplRandom, log(), and sqrt().

|
private |
Definition at line 946 of file SecondaryEmissionPhysics.cpp.
References abs(), Physics::c, myeps::EPS, exp(), myeps::FPMIN, and log().

|
private |
Definition at line 929 of file SecondaryEmissionPhysics.cpp.
References abs(), myeps::EPS, exp(), log(), and sum().

|
private |
Definition at line 1198 of file SecondaryEmissionPhysics.cpp.
References abs(), myeps::EPS, exp(), log(), pow(), and sqrt().

|
private |
Definition at line 1026 of file SecondaryEmissionPhysics.cpp.
References abs(), Physics::e, myeps::EPS, exp(), log(), pow(), and sqrt().

|
inlineprivate |
Definition at line 272 of file SecondaryEmissionPhysics.h.
|
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 | ||
| ) |
Definition at line 24 of file SecondaryEmissionPhysics.cpp.
References acos(), PartBunchBase< T, Dim >::Bf, PartBunchBase< T, Dim >::Bin, cos(), PartBunchBase< T, Dim >::create(), cross(), dot(), PartBunchBase< T, Dim >::dt, PartBunchBase< T, Dim >::Ef, exp(), fabs(), PartBunchBase< T, Dim >::getdT(), PartBunchBase< T, Dim >::getLocalNum(), IpplRandom, Physics::m_e, ParticleType::NEWSECONDARY, PartBunchBase< T, Dim >::P, PAssert_GE, PAssert_LT, pow(), Options::ppdebug, PartBunchBase< T, Dim >::PType, PartBunchBase< T, Dim >::Q, PartBunchBase< T, Dim >::R, sin(), sqrt(), IpplTimings::startTimer(), IpplTimings::stopTimer(), PartBunchBase< T, Dim >::TriID, and Physics::two_pi.
Referenced by BoundaryGeometry::emitSecondaryFurmanPivi(), and BoundaryGeometry::emitSecondaryVaughan().

| 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 | ||
| ) |
Definition at line 377 of file SecondaryEmissionPhysics.cpp.
References acos(), PartBunchBase< T, Dim >::Bf, PartBunchBase< T, Dim >::Bin, Physics::c, cos(), PartBunchBase< T, Dim >::create(), cross(), dot(), PartBunchBase< T, Dim >::dt, PartBunchBase< T, Dim >::Ef, exp(), PartBunchBase< T, Dim >::getdT(), PartBunchBase< T, Dim >::getLocalNum(), IpplRandom, Physics::m_e, ParticleType::NEWSECONDARY, PartBunchBase< T, Dim >::P, pow(), Options::ppdebug, PartBunchBase< T, Dim >::PType, PartBunchBase< T, Dim >::Q, PartBunchBase< T, Dim >::R, sin(), sqrt(), IpplTimings::startTimer(), IpplTimings::stopTimer(), PartBunchBase< T, Dim >::TriID, and Physics::two_pi.

|
private |
Definition at line 787 of file SecondaryEmissionPhysics.cpp.
| 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.
|
private |
| seAlpha_m | is 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.
|
private |
| seDelta_m | is the 7th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 119 of file SecondaryEmissionPhysics.h.
|
private |
| seEOne_m | is the 8th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 123 of file SecondaryEmissionPhysics.h.
|
private |
| seEPeakTot_m | is the 23rd parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 198 of file SecondaryEmissionPhysics.h.
|
private |
| seEPeakTS_m | is the 17th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 174 of file SecondaryEmissionPhysics.h.
|
private |
Definition at line 208 of file SecondaryEmissionPhysics.h.
|
private |
| seERed_m | is the 11th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 144 of file SecondaryEmissionPhysics.h.
|
private |
| seEScatPeak_m | is the 4th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 107 of file SecondaryEmissionPhysics.h.
|
private |
| seETwo_m | is the 9th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 127 of file SecondaryEmissionPhysics.h.
|
private |
| seP_m | is the 6th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 115 of file SecondaryEmissionPhysics.h.
|
private |
Definition at line 207 of file SecondaryEmissionPhysics.h.
|
private |
| sePRed_m | is the 10th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 140 of file SecondaryEmissionPhysics.h.
|
private |
| sePScat_m | is the 2nd parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 99 of file SecondaryEmissionPhysics.h.
|
private |
| sePScatPeak_m | is the 3rd parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 103 of file SecondaryEmissionPhysics.h.
|
private |
| seQ_m | is the 13th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 152 of file SecondaryEmissionPhysics.h.
|
private |
| seR_m | is the 12th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 148 of file SecondaryEmissionPhysics.h.
|
private |
| seROne_m | is the 14th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 156 of file SecondaryEmissionPhysics.h.
|
private |
| seRTwo_m | is the 15th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 160 of file SecondaryEmissionPhysics.h.
|
private |
| seSTS_m | is the 18th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 178 of file SecondaryEmissionPhysics.h.
|
private |
| seTFourTS_m | is the 22nd parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 194 of file SecondaryEmissionPhysics.h.
|
private |
| seTOneTS_m | is the 19th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 182 of file SecondaryEmissionPhysics.h.
|
private |
| seTThreeTS_m | is the 21st parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 190 of file SecondaryEmissionPhysics.h.
|
private |
| seTTwoTS_m | is the 20th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 186 of file SecondaryEmissionPhysics.h.
|
private |
| seW_m | is the 5th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 111 of file SecondaryEmissionPhysics.h.
|
private |
| seYPeakTot_m | is the 24th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 202 of file SecondaryEmissionPhysics.h.
|
private |
| seYPeakTS_m | is the 16th parameter in the TABLE I of Phys. Rev. ST Accel. Beams 5, 124404 (2002) |
Definition at line 170 of file SecondaryEmissionPhysics.h.
|
private |
| TPnSec_m | is the timmer of secondary emission module. |
Definition at line 82 of file SecondaryEmissionPhysics.h.
1.8.5