69     G4cout << 
"G4PhononDownconversion::GetMeanFreePath = " << mfp << 
G4endl;
 
   92   else MakeTTSecondaries(aTrack);
 
  113   return (1/(x*x))*(1-x*
x)*(1-x*x)*((1+
x)*(1+x)-d*d*((1-
x)*(1-x)))*(1+x*x-d*d*(1-
x)*(1-x))*(1+x*x-d*d*(1-x)*(1-
x));
 
  121   G4double A = 0.5*(1-d*d)*(fBeta+fLambda+(1+d*d)*(fGamma+fMu));
 
  122   G4double B = fBeta+fLambda+2*d*d*(fGamma+fMu);
 
  123   G4double C = fBeta + fLambda + 2*(fGamma+fMu);
 
  124   G4double D = (1-d*d)*(2*fBeta+4*fGamma+fLambda+3*fMu);
 
  126   return (A+B*d*x-B*x*x)*(A+B*d*x-B*x*
x)+(C*x*(d-x)-D/(d-
x)*(x-d-(1-d*d)/(4*
x)))*(C*x*(d-x)-D/(d-
x)*(x-d-(1-d*d)/(4*
x)));
 
  135   return std::acos((1+(x*x)-((d*d)*(1-x)*(1-x)))/(2*x));
 
  144   return std::acos((1-x*x+d*d*(1-x)*(1-x))/(2*d*(1-x)));
 
  153   return std::acos((1-d*d*(1-x)*(1-x)+d*d*x*x)/(2*d*x));
 
  161 void G4PhononDownconversion::MakeTTSecondaries(
const G4Track& aTrack) {
 
  174   while(p >= GetTTDecayProb(d, x*d)) {
 
  180   G4double theta1=MakeTTDeviation(d, x);
 
  181   G4double theta2=MakeTTDeviation(d, 1-x);
 
  193   G4double Esec1 = x*E, Esec2 = E-Esec1;
 
  217 void G4PhononDownconversion::MakeLTSecondaries(
const G4Track& aTrack) {
 
  230   while(p >= GetLTDecayProb(d, x)) {
 
  236   G4double thetaL=MakeLDeviation(d, x);
 
  237   G4double thetaT=MakeTDeviation(d, x);     
 
  246   G4double Esec1 = x*E, Esec2 = E-Esec1;
 
G4PhononDownconversion(const G4String &processName="phononDownconversion")
 
G4double condition(const G4ErrorSymMatrix &m)
 
G4double GetGamma() const 
 
const G4LatticePhysical * theLattice
 
G4double GetAnhDecConstant() const 
 
G4double GetVelocity() const 
 
virtual G4double GetMeanFreePath(const G4Track &, G4double, G4ForceCondition *)
 
G4double GetLambda() const 
 
G4double GetSTDOS() const 
 
virtual ~G4PhononDownconversion()
 
G4ThreeVector G4RandomDirection()
 
Definition of the G4PhononPolarization enum. 
 
Definition of the G4PhononDownconversion class. 
 
double B(double temperature)
 
G4double GetFTDOS() const 
 
G4PhononTrackMap * trackKmap
 
static constexpr double twopi
 
G4double GetKineticEnergy() const 
 
Definition of the G4PhononTrackMap base class. 
 
G4GLOB_DLL std::ostream G4cout
 
double A(double temperature)
 
const G4ThreeVector & GetK(const G4Track *track) const 
 
static G4PhononLong * PhononDefinition()
 
virtual G4VParticleChange * PostStepDoIt(const G4Track &, const G4Step &)
 
virtual G4bool IsApplicable(const G4ParticleDefinition &)
 
virtual void Initialize(const G4Track &)
 
virtual G4int ChoosePolarization(G4double Ldos, G4double STdos, G4double FTdos) const 
 
void SetNumberOfSecondaries(G4int totSecondaries)
 
Hep3Vector orthogonal() const 
 
void ProposeEnergy(G4double finalEnergy)
 
G4ParticleChange aParticleChange
 
Definition of the G4LatticePhysical class. 
 
void AddSecondary(G4Track *aSecondary)
 
virtual G4Track * CreateSecondary(G4int polarization, const G4ThreeVector &K, G4double energy) const 
 
void ProposeTrackStatus(G4TrackStatus status)
 
Hep3Vector & rotate(double, const Hep3Vector &)