#include <G4Mag_SpinEqRhs.hh>
Definition at line 45 of file G4Mag_SpinEqRhs.hh.
◆ G4Mag_SpinEqRhs()
◆ ~G4Mag_SpinEqRhs()
G4Mag_SpinEqRhs::~G4Mag_SpinEqRhs |
( |
| ) |
|
◆ EvaluateRhsGivenB()
Implements G4Mag_EqRhs.
Definition at line 74 of file G4Mag_SpinEqRhs.cc.
77{
79 G4double inv_momentum_magnitude = 1.0 / std::sqrt( momentum_mag_square );
81
82 dydx[0] = y[3] * inv_momentum_magnitude;
83 dydx[1] = y[4] * inv_momentum_magnitude;
84 dydx[2] = y[5] * inv_momentum_magnitude;
85
87 {
88 dydx[3] = 0.;
89 dydx[4] = 0.;
90 dydx[5] = 0.;
91 }
92 else
93 {
94 dydx[3] = cof*(y[4]*
B[2] - y[5]*
B[1]) ;
95 dydx[4] = cof*(y[5]*
B[0] - y[3]*
B[2]) ;
96 dydx[5] = cof*(y[3]*
B[1] - y[4]*
B[0]) ;
97 }
98
100 u *= inv_momentum_magnitude;
101
103
106
107
108 dydx[6] = dydx[7] = dydx[8] = 0.0;
109
111
114 {
115 pcharge = 1.;
116 }
117 else
118 {
120 }
121
123 if (
Spin.mag2() != 0.)
124 {
125 dSpin = pcharge*
omegac*(ucb*(
Spin.cross(BField))-udb*(
Spin.cross(u)));
126 }
127
128 dydx[9] = dSpin.x();
129 dydx[10] = dSpin.y();
130 dydx[11] = dSpin.z();
131
132 return;
133}
G4double B(G4double temperature)
References anomaly, B(), beta, charge, G4Mag_EqRhs::FCof(), gamma, omegac, sqr(), CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), and CLHEP::Hep3Vector::z().
◆ EvaluateRhsReturnB()
◆ FCof()
◆ GetAnomaly()
G4double G4Mag_SpinEqRhs::GetAnomaly |
( |
| ) |
const |
|
inline |
◆ GetFieldObj() [1/2]
G4Field * G4EquationOfMotion::GetFieldObj |
( |
| ) |
|
|
inlineinherited |
◆ GetFieldObj() [2/2]
const G4Field * G4EquationOfMotion::GetFieldObj |
( |
| ) |
const |
|
inlineinherited |
◆ GetFieldValue()
void G4EquationOfMotion::GetFieldValue |
( |
const G4double |
Point[4], |
|
|
G4double |
Field[] |
|
) |
| const |
|
inlineinherited |
◆ RightHandSide()
void G4EquationOfMotion::RightHandSide |
( |
const G4double |
y[], |
|
|
G4double |
dydx[] |
|
) |
| const |
|
inlineinherited |
◆ SetAnomaly()
void G4Mag_SpinEqRhs::SetAnomaly |
( |
G4double |
a | ) |
|
|
inline |
◆ SetChargeMomentumMass()
Reimplemented from G4Mag_EqRhs.
Definition at line 47 of file G4Mag_SpinEqRhs.cc.
50{
52
57
59
61
64 else g_BMT = 2.;
65
67
71}
static constexpr double eplus
G4double GetCharge() const
G4double GetMagneticDipoleMoment() const
virtual void SetChargeMomentumMass(G4ChargeState particleCharge, G4double MomentumXc, G4double mass)
References anomaly, beta, source.hepunit::c_light, source.hepunit::c_squared, charge, eplus, gamma, G4ChargeState::GetCharge(), G4ChargeState::GetMagneticDipoleMoment(), G4ChargeState::GetSpin(), source.hepunit::hbar_Planck, magMoment, mass, omegac, G4Mag_EqRhs::SetChargeMomentumMass(), spin, and sqr().
◆ SetFieldObj()
void G4EquationOfMotion::SetFieldObj |
( |
G4Field * |
pField | ) |
|
|
inlineinherited |
◆ anomaly
G4double G4Mag_SpinEqRhs::anomaly =0.0011659208 |
|
private |
◆ beta
◆ charge
◆ fCof_val
◆ fUnitConstant
◆ gamma
◆ itsField
G4Field* G4EquationOfMotion::itsField = nullptr |
|
privateinherited |
◆ magMoment
G4double G4Mag_SpinEqRhs::magMoment =0.0 |
|
private |
◆ mass
◆ omegac
◆ spin
The documentation for this class was generated from the following files: