#include <G4ScreenedNuclearRecoil.hh>
Definition at line 193 of file G4ScreenedNuclearRecoil.hh.
◆ G4SingleScatter()
G4SingleScatter::G4SingleScatter |
( |
| ) |
|
|
inline |
◆ ~G4SingleScatter()
virtual G4SingleScatter::~G4SingleScatter |
( |
| ) |
|
|
inlinevirtual |
◆ DoCollisionStep()
void G4SingleScatter::DoCollisionStep |
( |
class G4ScreenedNuclearRecoil * |
master, |
|
|
const class G4Track & |
aTrack, |
|
|
const class G4Step & |
aStep |
|
) |
| |
|
virtual |
Implements G4ScreenedCollisionStage.
Definition at line 752 of file G4ScreenedNuclearRecoil.cc.
755 if(!master->GetValidCollision())
return;
758 G4ParticleChange &aParticleChange=master->GetParticleChange();
772 recoilMomentumDirection=
773 recoilMomentumDirection.
rotateUz(incidentDirection);
775 recoilMomentumDirection*std::sqrt(2.0*eRecoil*kin.
a2*
amu_c2);
777 if(aParticleChange.GetEnergy() != 0.0) {
781 aParticleChange.ProposeMomentumDirection(beamMomentum.
unit()) ;
782 aParticleChange.ProposeEnergy(incidentEnergy-eRecoil);
788 recoilMomentumDirection,eRecoil) ;
790 aParticleChange.SetNumberOfSecondaries(1);
791 aParticleChange.AddSecondary(recoil);
G4ParticleDefinition * recoilIon
G4double GetKineticEnergy() const
G4ThreeVector GetMomentum() const
Hep3Vector & rotateUz(const Hep3Vector &)
const G4ThreeVector & GetMomentumDirection() const
The documentation for this class was generated from the following files: