Geant4 11.2.2
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4V3DNucleus Class Referenceabstract

#include <G4V3DNucleus.hh>

+ Inheritance diagram for G4V3DNucleus:

Public Member Functions

 G4V3DNucleus ()
 
virtual ~G4V3DNucleus ()
 
virtual void Init (G4int theA, G4int theZ, G4int numberOfLambdas=0)=0
 
virtual G4bool StartLoop ()=0
 
virtual G4NucleonGetNextNucleon ()=0
 
virtual const std::vector< G4Nucleon > & GetNucleons ()=0
 
virtual G4int GetMassNumber ()=0
 
virtual G4double GetMass ()=0
 
virtual G4int GetCharge ()=0
 
virtual G4int GetNumberOfLambdas ()=0
 
virtual G4double GetNuclearRadius ()=0
 
virtual G4double GetNuclearRadius (const G4double maxRelativeDensity)=0
 
virtual G4double GetOuterRadius ()=0
 
virtual G4double CoulombBarrier ()=0
 
virtual void DoLorentzBoost (const G4LorentzVector &theBoost)=0
 
virtual void DoLorentzBoost (const G4ThreeVector &theBeta)=0
 
virtual void DoLorentzContraction (const G4LorentzVector &theBoost)=0
 
virtual void DoLorentzContraction (const G4ThreeVector &theBeta)=0
 
virtual void DoTranslation (const G4ThreeVector &theShift)=0
 
virtual const G4VNuclearDensityGetNuclearDensity () const =0
 
virtual void SortNucleonsIncZ ()=0
 
virtual void SortNucleonsDecZ ()=0
 
std::pair< G4double, G4doubleChooseImpactXandY (G4double maxImpact)
 
std::pair< G4double, G4doubleRefetchImpactXandY ()
 

Detailed Description

Definition at line 40 of file G4V3DNucleus.hh.

Constructor & Destructor Documentation

◆ G4V3DNucleus()

G4V3DNucleus::G4V3DNucleus ( )

Definition at line 31 of file G4V3DNucleus.cc.

32{
33}

◆ ~G4V3DNucleus()

G4V3DNucleus::~G4V3DNucleus ( )
virtual

Definition at line 40 of file G4V3DNucleus.cc.

41{
42}

Member Function Documentation

◆ ChooseImpactXandY()

std::pair< G4double, G4double > G4V3DNucleus::ChooseImpactXandY ( G4double maxImpact)
inline

Definition at line 86 of file G4V3DNucleus.hh.

88{
89 G4double x,y;
90 do
91 {
92 x = 2*G4UniformRand() - 1;
93 y = 2*G4UniformRand() - 1;
94 }
95 while(x*x + y*y > 1); /* Loop checking, 30-Oct-2015, G.Folger */
96
97 G4double impactX = x*(maxImpact);
98 G4double impactY = y*(maxImpact);
99 theImpactParameter.first = impactX;
100 theImpactParameter.second = impactY;
101 return theImpactParameter;
102}
double G4double
Definition G4Types.hh:83
#define G4UniformRand()
Definition Randomize.hh:52

Referenced by G4FTFParticipants::GetList().

◆ CoulombBarrier()

virtual G4double G4V3DNucleus::CoulombBarrier ( )
pure virtual

Implemented in G4Fancy3DNucleus.

◆ DoLorentzBoost() [1/2]

virtual void G4V3DNucleus::DoLorentzBoost ( const G4LorentzVector & theBoost)
pure virtual

◆ DoLorentzBoost() [2/2]

virtual void G4V3DNucleus::DoLorentzBoost ( const G4ThreeVector & theBeta)
pure virtual

Implemented in G4Fancy3DNucleus.

◆ DoLorentzContraction() [1/2]

virtual void G4V3DNucleus::DoLorentzContraction ( const G4LorentzVector & theBoost)
pure virtual

Implemented in G4Fancy3DNucleus.

Referenced by G4FTFModel::Init().

◆ DoLorentzContraction() [2/2]

virtual void G4V3DNucleus::DoLorentzContraction ( const G4ThreeVector & theBeta)
pure virtual

Implemented in G4Fancy3DNucleus.

◆ DoTranslation()

virtual void G4V3DNucleus::DoTranslation ( const G4ThreeVector & theShift)
pure virtual

Implemented in G4Fancy3DNucleus.

Referenced by G4FTFParticipants::GetList().

◆ GetCharge()

◆ GetMass()

virtual G4double G4V3DNucleus::GetMass ( )
pure virtual

◆ GetMassNumber()

◆ GetNextNucleon()

◆ GetNuclearDensity()

◆ GetNuclearRadius() [1/2]

virtual G4double G4V3DNucleus::GetNuclearRadius ( )
pure virtual

◆ GetNuclearRadius() [2/2]

virtual G4double G4V3DNucleus::GetNuclearRadius ( const G4double maxRelativeDensity)
pure virtual

Implemented in G4Fancy3DNucleus.

◆ GetNucleons()

virtual const std::vector< G4Nucleon > & G4V3DNucleus::GetNucleons ( )
pure virtual

◆ GetNumberOfLambdas()

virtual G4int G4V3DNucleus::GetNumberOfLambdas ( )
pure virtual

◆ GetOuterRadius()

◆ Init()

virtual void G4V3DNucleus::Init ( G4int theA,
G4int theZ,
G4int numberOfLambdas = 0 )
pure virtual

◆ RefetchImpactXandY()

std::pair< G4double, G4double > G4V3DNucleus::RefetchImpactXandY ( )
inline

Definition at line 77 of file G4V3DNucleus.hh.

77{return theImpactParameter;}

◆ SortNucleonsDecZ()

virtual void G4V3DNucleus::SortNucleonsDecZ ( )
pure virtual

◆ SortNucleonsIncZ()

virtual void G4V3DNucleus::SortNucleonsIncZ ( )
pure virtual

Implemented in G4Fancy3DNucleus.

Referenced by G4VParticipants::Init().

◆ StartLoop()


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